Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Fedex
/
imac-vue
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
shanyunduo.cheng
2021-12-10 16:23:20 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
becb87f7adf4a26e9401b1d79275dac4b54ecbcf
becb87f7
1 parent
628a5078
excel导入和基本校验
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
48 additions
and
41 deletions
src/api/flightInfoImport.js
src/views/systemConfig/roleConfig/index.vue
src/api/flightInfoImport.js
View file @
becb87f
import
service
from
"../utils/request"
;
import
request
from
'@/utils/request'
// 查询航班种类
...
...
@@ -14,4 +15,15 @@ export function downLoadTemplate(templateResourceName) {
method
:
'get'
,
responseType
:
'blob'
,
})
}
export
function
importFlight
(
file
,
type
){
let
formData
=
new
FormData
();
formData
.
append
(
"file"
,
file
);
formData
.
append
(
"type"
,
type
);
return
request
({
url
:
'/flightInfoImport/importFlight'
,
method
:
'post'
,
data
:
formData
})
}
\ No newline at end of file
...
...
src/views/systemConfig/roleConfig/index.vue
View file @
becb87f
...
...
@@ -13,7 +13,9 @@
</el-form-item>
<el-form-item>
<el-upload
action="https://jsonplaceholder.typicode.com/posts/"
action="/flightInfoImport/importFlight"
name="file"
:http-request="uploadExcel"
:on-remove="handleRemove"
:limit="1"
:on-exceed="handleExceed"
...
...
@@ -31,8 +33,6 @@
</el-form-item>
</el-form>
<el-button @click="clearFilter" size="small">清除所有过滤器</el-button>
<el-table
ref="filterTable"
:data="tableData"
...
...
@@ -40,12 +40,18 @@
size="small"
border
>
<el-table-column label="行号" prop="line" fixed> </el-table-column>
<el-table-column label="行号" prop="line" fixed width="50" align="center">
</el-table-column>
<el-table-column label="错误信息" prop="errorMessage" fixed>
<el-table-column label="错误信息" prop="errorMessage" fixed width="200">
<template slot-scope="scope">
<div v-for="(m,key) in scope.row.errorMessage" :key="key">{{ m }}</div>
</template>
</el-table-column>
<el-table-column label="index"></el-table-column>
<el-table-column v-if="tableData.length == 0" ></el-table-column>
<el-table-column v-for="(value,key) in this.tableData[0]" :key="key" v-if="key != 'errorMessage' && key != 'line'" :label="key" :prop="key" width="120"></el-table-column>
</el-table>
</div>
</template>
...
...
@@ -53,7 +59,11 @@
</template>
<script>
import { filghtKindData, downLoadTemplate } from "@/api/flightInfoImport";
import {
filghtKindData,
downLoadTemplate,
importFlight,
} from "@/api/flightInfoImport";
export default {
data() {
...
...
@@ -64,26 +74,7 @@ export default {
region: "",
},
fileList: [],
tableData: [
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
{ line: "1", errorMessage: "error" },
],
tableData: [],
};
},
methods: {
...
...
@@ -119,33 +110,37 @@ export default {
URL.revokeObjectURL(link.href); //释放url
document.body.removeChild(link); //释放标签
} else {
this.$message.error(
'下载失败'
);
this.$message.error(
"下载失败"
);
}
});
}
},
uploadExcel(option) {
//上传excel
const file = option.file;
console.log(option);
importFlight(file, this.form.type).then((res) => {
if (res.code != 200) {
this.$message.error(res.msg);
} else {
this.tableData = res.data;
}
});
},
handleRemove(file, fileList) {
//清掉上传的文件
this.tableData = [];
this.fileList = [];
},
handleExceed(files) {
//重复上传文件
let file = {};
file.file = files[0];
file.name = files[0].name;
this.fileList = [];
this.fileList.push(file);
},
clearFilter() {
this.$refs.filterTable.clearFilter();
},
formatter(row, column) {
return row.address;
},
filterTag(value, row) {
return row.tag === value;
},
filterHandler(value, row, column) {
const property = column["property"];
return row[property] === value;
this.uploadExcel(file);
},
},
created() {
...
...
Please
register
or
login
to post a comment