提交 1b200a72 编写于 作者: huangwensu's avatar huangwensu

批量导入

上级 cf403b5a
...@@ -86,11 +86,15 @@ ...@@ -86,11 +86,15 @@
<el-upload <el-upload
class="upload-demo" class="upload-demo"
accept=".xlsx" accept=".xlsx"
action="#" :headers="uploadHeaders"
v-model="importFileName" :action="returnActionUrl()"
:before-upload="uploadImportFile"> :before-upload="uploadImportFile"
<el-input class="upload-input" v-model="importFileName" autocomplete="off"></el-input> :on-success="uploadSuccess"
>
<el-button type="default">点击上传</el-button>
</el-upload> </el-upload>
<span v-if="tipTextFlag" style="color:red;">请选择上传文件</span>
<div v-if="importError" @click="downloadError">导入的Excel有问题,点击下载查看具体问题</div>
</el-form-item> </el-form-item>
<div class="el-upload__tip" @click="download">下载导入模板</div> <div class="el-upload__tip" @click="download">下载导入模板</div>
</el-form> </el-form>
...@@ -123,9 +127,14 @@ export default { ...@@ -123,9 +127,14 @@ export default {
}, },
removeId: '', removeId: '',
removeTel: '', removeTel: '',
acceptValue: '*/*', importFile: {},
importFileName: '', uploadHeaders: {
base64Str: '' token: window.localStorage.getItem('token')
},
importFileName: {},
tipTextFlag: false,
importError: false,
importErrorFileUrl: ''
} }
}, },
filters: { filters: {
...@@ -143,17 +152,17 @@ export default { ...@@ -143,17 +152,17 @@ export default {
openLoading(this); openLoading(this);
this.$axios[type](localStorage.getItem("lectureUrl") + url, req) this.$axios[type](localStorage.getItem("lectureUrl") + url, req)
.then(res => { .then(res => {
closeLoading(this); closeLoading(this);
let data = res.data; let data = res.data;
if (data.code == "000000") { if (data.code == "000000") {
if (callback) callback(data); if (callback) callback(data);
} else { } else {
this.$message.error(data.message); this.$message.error(data.message);
} }
}) })
.catch(error => { .catch(error => {
closeLoading(this); closeLoading(this);
this.$message.error("网络出现点问题"); this.$message.error("网络出现点问题");
}); });
}, },
search(param) { search(param) {
...@@ -169,40 +178,45 @@ export default { ...@@ -169,40 +178,45 @@ export default {
// 批量导入 // 批量导入
importBatch() { importBatch() {
this.importDialogVisible = true; this.importDialogVisible = true;
this.tipTextFlag = false;
}, },
returnActionUrl() {
return localStorage.getItem("lectureUrl") + "/riskcontrol/blacklist/import";
},
// 判断有没有导入文件
confirmImport() { confirmImport() {
this.getData( if(!this.importFileName.name) {
"post", `/riskcontrol/blacklist/import`, {base64Str: this.base64.file}, this.tipTextFlag = true;
data => { }else {
if(data.code == '000000') { this.importDialogVisible = false;
}
}
}
);
}, },
// 上传文件 // 上传文件
uploadImportFile(file) { uploadImportFile(file) {
let self = this; this.tipTextFlag = false;
this.importFileName = file.name; var FileExt = file.name.replace(/.+\./, "");
let arr = file.type.split('/'); if (["xls", "xlsx"].indexOf(FileExt.toLowerCase()) === -1) {
let ext = "." + arr[1]; this.$message({
let reader = new FileReader(); type: "warning",
reader.onload = function (e) { message: "请上传后缀名为xls,xlsx的原文件!",
let fileJson = { });
fileName: file.name, return false;
file: e.target.result.substr(e.target.result.indexOf("base64,") + 7), }
ext: ext this.importFileName = file;
}; },
self.base64 = fileJson; uploadSuccess(res, file, fileList) {
}; if(res.data) { // 导入的Excel有问题
reader.readAsDataURL(file); this.importError = true;
this.importErrorFileUrl = res.data;
}
},
// 下载查看导入的有问题Excel
downloadError() {
window.open(this.importErrorFileUrl);
}, },
// 下载导入模板 // 下载导入模板
download() { download() {
console.log('下载模板'); window.open('https://file.yunqueyi.com/risk/template.xlsx'); // 后台给的导入Excel地址
setTimeout(() => {
window.open(''); // 后台给的导入Excel地址
}, 500);
}, },
// 新增黑名单 // 新增黑名单
addBlackList() { addBlackList() {
......
...@@ -86,11 +86,14 @@ ...@@ -86,11 +86,14 @@
<el-upload <el-upload
class="upload-demo" class="upload-demo"
accept=".xlsx" accept=".xlsx"
action="#" :headers="uploadHeaders"
v-model="importFileName" :action="returnActionUrl()"
:before-upload="uploadImportFile"> :before-upload="uploadImportFile"
<el-input class="upload-input" v-model="importFileName" autocomplete="off"></el-input> :on-success="uploadSuccess">
<el-button type="default">点击上传</el-button>
</el-upload> </el-upload>
<span v-if="tipTextFlag" style="color:red;">请选择上传文件</span>
<div v-if="importError" @click="downloadError">导入的Excel有问题,点击下载查看具体问题</div>
</el-form-item> </el-form-item>
<div class="el-upload__tip" @click="download">下载导入模板</div> <div class="el-upload__tip" @click="download">下载导入模板</div>
</el-form> </el-form>
...@@ -123,8 +126,13 @@ export default { ...@@ -123,8 +126,13 @@ export default {
}, },
removeId: '', removeId: '',
removeTel: '', removeTel: '',
acceptValue: '*/*', importFileName: {},
importFileName: '' uploadHeaders: {
token: window.localStorage.getItem('token')
},
tipTextFlag: false,
importError: false,
importErrorFileUrl: ''
} }
}, },
filters: { filters: {
...@@ -200,43 +208,45 @@ export default { ...@@ -200,43 +208,45 @@ export default {
// 批量导入 // 批量导入
importBatch() { importBatch() {
this.importDialogVisible = true; this.importDialogVisible = true;
this.tipTextFlag = false;
},
returnActionUrl() {
return localStorage.getItem("lectureUrl") + "/riskcontrol/emptyNumber/import";
}, },
// 判断有没有导入文件
confirmImport() { confirmImport() {
if(!this.importFileName.name) {
this.tipTextFlag = true;
}else {
this.importDialogVisible = false;
}
}, },
// 上传文件 // 上传文件
uploadImportFile(file) { uploadImportFile(file) {
console.log(file) this.tipTextFlag = false;
let self = this; var FileExt = file.name.replace(/.+\./, "");
this.importFileName = file.name; if (["xls", "xlsx"].indexOf(FileExt.toLowerCase()) === -1) {
let arr = file.type.split('/'); this.$message({
let ext = "." + arr[1]; type: "warning",
let reader = new FileReader(); message: "请上传后缀名为xls,xlsx的原文件!",
reader.onload = function (e) { });
let fileJson = { return false;
fileName: file.name, }
file: e.target.result.substr(e.target.result.indexOf("base64,") + 7), this.importFileName = file;
ext: ext },
}; uploadSuccess(res, file, fileList) {
self.base64 = fileJson; if(res.data) { // 导入的Excel有问题
console.log('fileJson',self.base64); this.importError = true;
}; this.importErrorFileUrl = res.data;
reader.readAsDataURL(file); }
this.getData( },
"post", `/riskcontrol/blacklist/import`, {base64Str: self.base64.file}, // 下载查看导入的有问题Excel
data => { downloadError() {
if(data.code == '000000') { window.open(this.importErrorFileUrl);
}
}
);
}, },
// 下载导入模板 // 下载导入模板
download() { download() {
console.log('下载模板'); window.open('https://file.yunqueyi.com/risk/template.xlsx'); // 后台给的导入Excel地址
setTimeout(() => {
window.open(''); // 后台给的导入Excel地址
}, 500);
}, },
handleSizeChange(value) { handleSizeChange(value) {
this.searchParam.pageSize = value; this.searchParam.pageSize = value;
......
...@@ -134,6 +134,7 @@ export default { ...@@ -134,6 +134,7 @@ export default {
this.searchParam = data.data; this.searchParam = data.data;
this.changeStrategy(this.searchParam.bizTypeId); this.changeStrategy(this.searchParam.bizTypeId);
this.versionArray = this.searchParam.versionParamList; this.versionArray = this.searchParam.versionParamList;
this.paramsStyleText = this.searchParam.paramsStyle;
for(let i = 0; i < this.versionArray.length; i++) { for(let i = 0; i < this.versionArray.length; i++) {
let arr = [], parr = []; let arr = [], parr = [];
arr = this.versionArray[i].params.split(",") arr = this.versionArray[i].params.split(",")
...@@ -144,6 +145,7 @@ export default { ...@@ -144,6 +145,7 @@ export default {
}) })
this.$set(this.versionArray[i], 'paramArray', parr) this.$set(this.versionArray[i], 'paramArray', parr)
} }
} }
); );
}, },
...@@ -165,6 +167,7 @@ export default { ...@@ -165,6 +167,7 @@ export default {
this.strategySelect.forEach(element => { this.strategySelect.forEach(element => {
if(val == element.libraryId) { if(val == element.libraryId) {
this.searchParam.paramsStyle = element.paramsStyle; this.searchParam.paramsStyle = element.paramsStyle;
this.paramsStyleText = this.searchParam.paramsStyle;
if(element.params) { if(element.params) {
for(let i = 0; i < element.params; i++) { for(let i = 0; i < element.params; i++) {
arr.push({ arr.push({
...@@ -178,15 +181,15 @@ export default { ...@@ -178,15 +181,15 @@ export default {
}, },
// 修改参数 // 修改参数
changeParams(item, index, v) { changeParams(item, index, v) {
// let str1 = ''; let str1 = '';
// if(v == 0) { if(v == 0) {
// if(index == 0) { if(index == 0) {
// str1 = this.searchParam.paramsStyle.replace("{param1}", item.params); str1 = this.searchParam.paramsStyle.replace("{param1}", item.params);
// }else { }else {
// str1 = str1.replace("{param2}", item.params); str1 = str1.replace("{param2}", item.params);
// } }
// this.paramsStyleText = str1 this.paramsStyleText = str1
// } }
}, },
// 保存 // 保存
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册