var ibasecomponent = { template:`
搜索 新增 删除 点击上传(csv文件) 导出
取 消 确 定
点击上传(csv文件)
取 消 确 定
`, data(){ // 获取当前屏幕的分辨率 let screenW = window.screen.width; let screenH = window.screen.height; console.log("screen width:",screenW); console.log("screen height:",screenH); return { tHeight:screenH*0.7, tableData: [], tableData1: [], currentPage: 1, pagesize:50, recordTotal:0, p_name_v:'', dialogVisible:false, oper_type:0, multipleSelection: [], importdialogVisible:false, fileListUpload:[], importTableData:[], disabled:true, if_show_process:false, percent_len:0, interval:'', if_show_process1:false, fileList:[], form:{ id:0, p_name_cn:'', p_name_en:'', p_ibase_cn:'', p_ibase_en:'', p_categories:'', p_sub:'', }, rules: { p_name_cn: [ { required: true, message: '产品型号及名称(中)不可为空', trigger: 'blur' } ], p_name_en: [ { required: true, message: '产品型号及名称(英)不可为空', trigger: 'blur' } ], p_ibase_cn: [ { required: true, message: '检验依据(中)不可为空', trigger: 'blur' } ], p_ibase_en: [ { required: true, message: '检验依据(英)不可为空', trigger: 'blur' } ], }, dialogVisible1:false, drawer:false, direction: 'rtl', } }, mounted() { this.get_ibase(); }, methods: { show_op(row){ var _this = this; axios.post('/pkpi/get_ibase_op_history', { opuser:localStorage.getItem("online_user"), opuser_uuid:localStorage.getItem("uuid"), p_name:row.p_name_cn, }) .then(function (response) { console.log(response.data); objs = response.data.data; _this.$data.tableData1 = objs; }) .catch(function (error) { console.log(error); }); this.drawer=true; }, handleClose(done) { done(); }, handleChange(file, fileList) { document.getElementById("bt_upload").blur(); this.fileTemp = file.raw console.log("filetype:",this.fileTemp); if (this.fileTemp) { console.log("begin ...") console.log(this.fileTemp.type); if ((this.fileTemp.type == 'text/csv') || (this.fileTemp.type == '.csv') || (this.fileTemp.type == 'application/vnd.ms-excel')) { let _this = this//如果需要点击事件结束之后对DOM进行操作使用)_this.xx=xx进行操作 Papa.parse(_this.fileTemp, { encoding:'gb2312', complete (results) { console.log(results)//这个是csv文件的数据 let data = [] //遍历csv文件中的数据,存放到data中 方法不唯一,可自己更改 for (let i = 0; i < results.data.length; ++i) { if(i==0){ continue; } let obj = {} obj.p_name_cn = results.data[i][0] if(obj.p_name_cn==""|| obj.p_name_cn==undefined){ continue; } obj.p_name_en = results.data[i][1] if(obj.p_name_en==""|| obj.p_name_en==undefined){ continue; } obj.p_ibase_cn = results.data[i][2] if(obj.p_ibase_cn==""|| obj.p_ibase_cn==undefined){ continue; } obj.p_ibase_en = results.data[i][3] if(obj.p_ibase_en==""|| obj.p_ibase_en==undefined){ continue; } obj.p_categories = results.data[i][4] obj.p_sub = results.data[i][5] data.push(obj) } //data.splice(0, 1)//将数组第一位的表格名称去除 console.log('data', data) _this.$data.importTableData=data; } }) } else { this.$data.fileListUpload=[]; this.$message({ type: 'warning', message: '附件格式错误,请删除后重新上传!' }) } } else { this.$message({ type: 'warning', message: '请上传附件!' }) } }, show_import_ibase(){ this.$data.importTableData=[]; this.$data.dialogVisible1=true; }, import_ibase(){ document.getElementById("bt_ok").blur(); if(this.$data.importTableData.length==0){ this.$message({ message: "请选择导入文件", type: "warning", duration: 1500 }); return; } this.$confirm('是否确认导入?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { var _this = this; _this.$data.percent_len=0; _this.$data.if_show_process1=true; _this.$data.interval= setInterval(()=>{ if(_this.$data.percent_len>=99){ clearInterval(_this.$data.interval); return; } if (_this.$data.percent_len<98){ _this.$data.percent_len+=2 } },20) axios.post('/pkpi/import_ibase', { opuser:localStorage.getItem("online_user"), opuser_uuid:localStorage.getItem("uuid"), data:this.$data.importTableData, }) .then(function (response) { let r = response.data.r; let s = "" let errType = "" if (r == 0) { let len = _this.$data.importTableData.length; errType = "success" s = "导入成功("+len+"条)"; _this.$data.percent_len=100; _this.$data.if_show_process1=false; } else if(r == 1) { errType = "error" s = "正在导入,请稍后!"; clearInterval(_this.$data.interval); } else{ errType = "error" s = "导入失败!"; clearInterval(_this.$data.interval); } console.log(s); _this.$message({ message: s, type: errType, duration: 3000 }); _this.$data.dialogVisible1=false; //更新页面 _this.get_ibase(); }) .catch(function (error) { console.log(error); }); }).catch(() => { this.$message({ type: 'info', message: '已取消' }); return; }); }, export_ibase(){ document.getElementById("bt_export").blur(); var _this = this; var objs; axios.post('/pkpi/export_ibase', { opuser:localStorage.getItem("online_user"), opuser_uuid:localStorage.getItem("uuid"), p_name: _this.$data.p_name_v, }) .then(function (response) { var date = new Date(); //年 getFullYear():四位数字返回年份 var year = date.getFullYear()%2000; //getFullYear()代替getYear() console.log(year.toString()); //月 getMonth():0 ~ 11 var month = date.getMonth() + 1; if(month<10){ month='0'+month } //日 getDate():(1 ~ 31) var day = date.getDate(); if(day<10){ day='0'+day; } //时 getHours():(0 ~ 23) var hour = date.getHours(); if (hour<10){ hour='0'+hour; } //分 getMinutes(): (0 ~ 59) var minute = date.getMinutes(); if (minute<10){ minute='0'+minute; } //秒 getSeconds():(0 ~ 59) var second = date.getSeconds(); if (second<10){ second='0'+second; } var filename=year.toString()+month.toString()+day.toString() +" " + hour.toString()+minute.toString()+second.toString(); filename = "检验依据 "+filename+".csv" console.log(response.data); var fileid = response.data.fileId; var downUrl = 'file/'+fileid; downloadUrl(filename,downUrl); }) .catch(function (error) { console.log(error); }); }, input_change(value) { console.log(value); this.get_ibase(); }, postibase(){ this.$refs['userform'].validate((valid) => { if(valid){ this.$data.dialogVisible = false; var _this = this; console.log(_this.$data.form); var objs; axios.post('/pkpi/postibase', { opuser:localStorage.getItem("online_user"), opuser_uuid:localStorage.getItem("uuid"), data:_this.$data.form, }) .then(function (response) { let r = response.data.r; let s = "" let errType = "" if (r == 0) { errType = "success" } else{ errType = "error" } if (r ==0) { s = "新增成功!"; } else{ s = "新增失败!"; } _this.$message({ message: s, type: errType, duration: 1500 }); //更新页面 _this.get_ibase(); }) .catch(function (error) { console.log(error); }); } }); }, add(){ this.$data.form={ id:0, p_name_cn:'', p_name_en:'', p_ibase_cn:'', p_ibase_en:'', } this.$data.dialogVisible=true; }, handleSelectionChange(val) { console.log("已选择"); console.log(val); this.multipleSelection = val; }, del_ibase(){ var _this = this; axios.post('/pkpi/del_ibase', { opuser:localStorage.getItem("online_user"), opuser_uuid:localStorage.getItem("uuid"), ids: _this.$data.multipleSelection, }) .then(function (response) { let r = response.data.r; let s = "" let errType = "" if (r == 0) { s = "删除成功!"; errType = "success" } else{ s = "删除失败!"; errType = "error" } _this.$message({ message: s, type: errType, duration: 1500 }); if (r ==0) { _this.get_ibase();//更新页面 } }) .catch(function (error) { console.log(error); }); }, get_ibase(cur_page){ document.getElementById("bt_search").blur(); if (cur_page==undefined){ this.$data.currentPage=1; } else { this.$data.currentPage=cur_page; } var _this = this; var objs; axios.post('/pkpi/get_ibase', { opuser:localStorage.getItem("online_user"), opuser_uuid:localStorage.getItem("uuid"), p_name: _this.$data.p_name_v, index: this.$data.currentPage, count: this.$data.pagesize }) .then(function (response) { console.log(response.data); objs = response.data.data; rcnt = response.data.total; _this.$data.tableData = objs; _this.$data.recordTotal = rcnt; }) .catch(function (error) { console.log(error); }); }, handleSizeChange(val) { this.$data.pagesize = val; this.get_ibase(); }, handleCurrentChange(val) { this.$data.currentPage = val; this.get_ibase(); } } }