Showing
2 changed files
with
90 additions
and
43 deletions
| ... | @@ -2,8 +2,16 @@ import request from '@/utils/request' | ... | @@ -2,8 +2,16 @@ import request from '@/utils/request' |
| 2 | 2 | ||
| 3 | // 查询航班种类 | 3 | // 查询航班种类 |
| 4 | export function filghtKindData() { | 4 | export function filghtKindData() { |
| 5 | - return request({ | ||
| 6 | - url: '/flightInfoImport/filghtKindData', | ||
| 7 | - method: 'get' | ||
| 8 | - }) | ||
| 9 | - } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 5 | + return request({ | ||
| 6 | + url: '/flightInfoImport/filghtKindData', | ||
| 7 | + method: 'get' | ||
| 8 | + }) | ||
| 9 | +} | ||
| 10 | + | ||
| 11 | +export function downLoadTemplate(templateResourceName) { | ||
| 12 | + return request({ | ||
| 13 | + url:'/flightInfoImport/downLoadTemplate?templateResourceName=' + templateResourceName, | ||
| 14 | + method:'get', | ||
| 15 | + responseType:'blob', | ||
| 16 | + }) | ||
| 17 | +} | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
| ... | @@ -3,7 +3,12 @@ | ... | @@ -3,7 +3,12 @@ |
| 3 | <el-form :inline="true" :model="form" class="demo-form-inline" size="small"> | 3 | <el-form :inline="true" :model="form" class="demo-form-inline" size="small"> |
| 4 | <el-form-item label="航班种类"> | 4 | <el-form-item label="航班种类"> |
| 5 | <el-select v-model="form.type" placeholder="航班种类"> | 5 | <el-select v-model="form.type" placeholder="航班种类"> |
| 6 | - <el-option v-for="item in flightType" :key="item.id" :label="item.englishName" :value="item.id" ></el-option> | 6 | + <el-option |
| 7 | + v-for="item in flightType" | ||
| 8 | + :key="item.id" | ||
| 9 | + :label="item.englishName" | ||
| 10 | + :value="item.englishName" | ||
| 11 | + ></el-option> | ||
| 7 | </el-select> | 12 | </el-select> |
| 8 | </el-form-item> | 13 | </el-form-item> |
| 9 | <el-form-item> | 14 | <el-form-item> |
| ... | @@ -20,7 +25,9 @@ | ... | @@ -20,7 +25,9 @@ |
| 20 | </el-upload> | 25 | </el-upload> |
| 21 | </el-form-item> | 26 | </el-form-item> |
| 22 | <el-form-item> | 27 | <el-form-item> |
| 23 | - <el-button type="primary" @click="onSubmit">下载模板</el-button> | 28 | + <el-button type="primary" @click="downloadTempleate" |
| 29 | + >下载模板</el-button | ||
| 30 | + > | ||
| 24 | </el-form-item> | 31 | </el-form-item> |
| 25 | </el-form> | 32 | </el-form> |
| 26 | 33 | ||
| ... | @@ -35,7 +42,8 @@ | ... | @@ -35,7 +42,8 @@ |
| 35 | > | 42 | > |
| 36 | <el-table-column label="行号" prop="line" fixed> </el-table-column> | 43 | <el-table-column label="行号" prop="line" fixed> </el-table-column> |
| 37 | 44 | ||
| 38 | - <el-table-column label="错误信息" prop="errorMessage" fixed> </el-table-column> | 45 | + <el-table-column label="错误信息" prop="errorMessage" fixed> |
| 46 | + </el-table-column> | ||
| 39 | 47 | ||
| 40 | <el-table-column label="index"></el-table-column> | 48 | <el-table-column label="index"></el-table-column> |
| 41 | </el-table> | 49 | </el-table> |
| ... | @@ -45,44 +53,76 @@ | ... | @@ -45,44 +53,76 @@ |
| 45 | </template> | 53 | </template> |
| 46 | 54 | ||
| 47 | <script> | 55 | <script> |
| 48 | -import { | 56 | +import { filghtKindData, downLoadTemplate } from "@/api/flightInfoImport"; |
| 49 | - filghtKindData | ||
| 50 | -} from "@/api/flightInfoImport"; | ||
| 51 | 57 | ||
| 52 | export default { | 58 | export default { |
| 53 | data() { | 59 | data() { |
| 54 | return { | 60 | return { |
| 55 | - flightType:[], | 61 | + flightType: [], |
| 56 | form: { | 62 | form: { |
| 57 | type: "", | 63 | type: "", |
| 58 | region: "", | 64 | region: "", |
| 59 | }, | 65 | }, |
| 60 | fileList: [], | 66 | fileList: [], |
| 61 | tableData: [ | 67 | tableData: [ |
| 62 | - {"line":"1","errorMessage":"error"}, | 68 | + { line: "1", errorMessage: "error" }, |
| 63 | - {"line":"1","errorMessage":"error"}, | 69 | + { line: "1", errorMessage: "error" }, |
| 64 | - {"line":"1","errorMessage":"error"}, | 70 | + { line: "1", errorMessage: "error" }, |
| 65 | - {"line":"1","errorMessage":"error"}, | 71 | + { line: "1", errorMessage: "error" }, |
| 66 | - {"line":"1","errorMessage":"error"}, | 72 | + { line: "1", errorMessage: "error" }, |
| 67 | - {"line":"1","errorMessage":"error"}, | 73 | + { line: "1", errorMessage: "error" }, |
| 68 | - {"line":"1","errorMessage":"error"}, | 74 | + { line: "1", errorMessage: "error" }, |
| 69 | - {"line":"1","errorMessage":"error"}, | 75 | + { line: "1", errorMessage: "error" }, |
| 70 | - {"line":"1","errorMessage":"error"}, | 76 | + { line: "1", errorMessage: "error" }, |
| 71 | - {"line":"1","errorMessage":"error"}, | 77 | + { line: "1", errorMessage: "error" }, |
| 72 | - {"line":"1","errorMessage":"error"}, | 78 | + { line: "1", errorMessage: "error" }, |
| 73 | - {"line":"1","errorMessage":"error"}, | 79 | + { line: "1", errorMessage: "error" }, |
| 74 | - {"line":"1","errorMessage":"error"}, | 80 | + { line: "1", errorMessage: "error" }, |
| 75 | - {"line":"1","errorMessage":"error"}, | 81 | + { line: "1", errorMessage: "error" }, |
| 76 | - {"line":"1","errorMessage":"error"}, | 82 | + { line: "1", errorMessage: "error" }, |
| 77 | - {"line":"1","errorMessage":"error"}, | 83 | + { line: "1", errorMessage: "error" }, |
| 78 | - {"line":"1","errorMessage":"error"}, | 84 | + { line: "1", errorMessage: "error" }, |
| 79 | - {"line":"1","errorMessage":"error"}, | 85 | + { line: "1", errorMessage: "error" }, |
| 80 | ], | 86 | ], |
| 81 | }; | 87 | }; |
| 82 | }, | 88 | }, |
| 83 | methods: { | 89 | methods: { |
| 84 | - onSubmit() { | 90 | + downloadTempleate() { |
| 85 | - console.log("submit!"); | 91 | + let downloadType = ""; |
| 92 | + let fileName = ""; | ||
| 93 | + switch (this.form.type) { | ||
| 94 | + case "White Tail Piston": | ||
| 95 | + downloadType = "white_tail"; | ||
| 96 | + fileName = "航班信息导入模板WhiteTail.xlsx"; | ||
| 97 | + break; | ||
| 98 | + case "Purple Tail": | ||
| 99 | + downloadType = "purple_tail"; | ||
| 100 | + fileName = "航班信息导入模板PurpleTail.xlsx"; | ||
| 101 | + break; | ||
| 102 | + default: | ||
| 103 | + this.$confirm("此类航班暂无模板,请选择其他类型航班", "提示", { | ||
| 104 | + confirmButtonText: "确定", | ||
| 105 | + showCancelButton: false, | ||
| 106 | + type: "warning", | ||
| 107 | + }); | ||
| 108 | + } | ||
| 109 | + if (downloadType != "") { | ||
| 110 | + downLoadTemplate(downloadType).then((res) => { | ||
| 111 | + if (res) { | ||
| 112 | + const blob = new Blob([res]); | ||
| 113 | + const link = document.createElement("a"); //创建a标签 | ||
| 114 | + link.download = fileName; //a标签添加属性 | ||
| 115 | + link.style.display = "none"; | ||
| 116 | + link.href = URL.createObjectURL(blob); | ||
| 117 | + document.body.appendChild(link); | ||
| 118 | + link.click(); //执行下载 | ||
| 119 | + URL.revokeObjectURL(link.href); //释放url | ||
| 120 | + document.body.removeChild(link); //释放标签 | ||
| 121 | + } else { | ||
| 122 | + this.$message.error('下载失败'); | ||
| 123 | + } | ||
| 124 | + }); | ||
| 125 | + } | ||
| 86 | }, | 126 | }, |
| 87 | handleRemove(file, fileList) { | 127 | handleRemove(file, fileList) { |
| 88 | this.tableData = []; | 128 | this.tableData = []; |
| ... | @@ -110,17 +150,16 @@ export default { | ... | @@ -110,17 +150,16 @@ export default { |
| 110 | }, | 150 | }, |
| 111 | created() { | 151 | created() { |
| 112 | filghtKindData().then((response) => { | 152 | filghtKindData().then((response) => { |
| 113 | - if (response.code != 200) { | 153 | + if (response.code != 200) { |
| 114 | - this.$message({ | 154 | + this.$message({ |
| 115 | - showClose: true, | 155 | + message: response.msg, |
| 116 | - message: response.msg, | 156 | + type: "error", |
| 117 | - type: "error", | 157 | + }); |
| 118 | - }); | 158 | + } |
| 119 | - } | 159 | + this.flightType = response.data; |
| 120 | - this.flightType = response.data; | 160 | + this.form.type = response.data[0].englishName; |
| 121 | - this.form.type = response.data[0].id; | 161 | + }); |
| 122 | - }); | 162 | + }, |
| 123 | - } | ||
| 124 | }; | 163 | }; |
| 125 | </script> | 164 | </script> |
| 126 | 165 | ... | ... |
-
Please register or login to post a comment