var Wellcomponent = { template: `
已处理 预警 搜索 导入 批量到货 应付款 导出 合同审批 付款申请
取 消 确 定
点击上传(csv文件) 确认导入 下载导入模板文件
新增付款 合计:{{row.total_p}} 已付:{{row.paid}} 应付:{{row.rp}}
取 消 确 定
合计:{{row.total_p}} 已付:{{row.paid}} 应付:{{row.rp}} 支付剩余
取 消 确 定
导出
`, data() { // 获取当前屏幕的分辨率 let screenW = window.screen.width; let screenH = window.innerHeight; console.log("screen width:", screenW); console.log("screen height:", screenH); return { tHeight: screenH - 40 - 232, tHeight_1: screenH - 80 - 34, tableData: Array(0), tableData1: Array(0), currentPage: 1, pagesize: 50, pagecnt: 1, recordTotal: 0, checked: false, value1: '', value2: '', id_v: '', rdm_v: '', bt_v: '', et_v: '', msid_v: '', pname_v: '', supplier_v: '', state_v: '', rid_v: '', repairer_v: '', rs_v: '', regional_head_v: '', ms_v: '', asc_v: '', updatedialogVisible_ex: false, form: { id: 0, rdm: '', code: '', name: '', specs: '', unit: '', num: '', price: '', total_p: '', pt: '', paid: '', rp: '', demand_date: '', purchasing_cycle: '', order_date: '', over_due1: '', add: '', residue: '', over_due2: '', buy_record: '', aq: '', state: '', wen: '', supplier: '', flag: '', cti: '', buyer: '', dduc: 0, serial_num: '', }, rules: { product_id: [ { required: true, message: '六合编号不可为空', trigger: 'blur' } ], }, options: [], importdialogVisible: false, fileTemp: null, fileListUpload: [], importTableData: [], multipleSelection: [], if_show_processed: true, if_del_show: false, if_del: false, p_id_options: [], loading: false, percent_len: 0, if_show_process: false, interval: '', if_show_process1: false, percent_len1: 0, ma_users: [], disabled: false, if_do: true, rs_data: [], show_child: false, pre_id: 0, child_data: [], row: '', dialogVisible: false, addplanVisible_1: false, maxid: -1, planform: { id: 0, payment_month: '', payment: '', payment_user: '', }, plan_op_type: 0, if_paid_all: false, buyer_data: [], warning_dialogVisible: false, warning_data: [], warning_checked: false, more_query_v: '', buyer_v: '', pay_amount_changed: [], } }, mounted() { var _this = this; var op_user = localStorage.getItem("online_user"); var level = localStorage.getItem("level") var did = localStorage.getItem("did"); if (level == 1) { this.$data.if_del_show = true; } this.get_ma_plan(); this.get_buyer(); //this.get_warning(); }, methods: { convert(amount) { let numStr = (amount.replaceAll(",", "").trim() * 1).toFixed(2); let thousandSeparated = numStr.replace(/\d(?=(\d{3})+\.)/g, '$&,'); return thousandSeparated; }, contract_approval() { if (this.$data.multipleSelection.length == 0) { this.$message({ message: "请选择计划", type: "warning", duration: 1500 }); return; } for (var i = 0; i < this.$data.multipleSelection.length; i++) { var id = this.$data.multipleSelection[i].id if (this.$data.multipleSelection[i].contract_state != '' && (this.$data.multipleSelection[i].contract_state == '已审批' || this.$data.multipleSelection[i].contract_state == '批准') ) { this.$message({ message: "序号" + id + "计划存在已被审批,不能被重复提交", type: "warning", duration: 1500 }); return; } } var _this = this; console.log("323232", _this.$data.multipleSelection) var objs; axios.post('/pp/mul_contract_approval', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), data: _this.$data.multipleSelection, }) .then(function (response) { let r = response.data.r; let s = "" let errType = "" if (r == 0) { errType = "success" } else { errType = "error" } if (r == 0) { s = "合同审批申请成功!"; // 操作日志 var list = []; _this.$data.multipleSelection.forEach(element => { list.push(element.id); }); _this.add_operation_log("申请序号:" + list.toString() + "合同审批"); } else { s = "合同审批申请失败!"; } _this.$message({ message: s, type: errType, duration: 1500 }); //_this.get_ma_plan(); if (r == 0) { _this.$router.push("/sp_1"); } }) .catch(function (error) { console.log(error); }); }, mul_payment_application() { if (this.$data.multipleSelection.length == 0) { this.$message({ message: "请选择计划", type: "warning", duration: 1500 }); return; } var _this = this; // 修改付款申请金额 this.$data.multipleSelection.forEach(element => { // 如果选取的id不在 pay_amount_changed数组中,则添加进去 if (!this.$data.pay_amount_changed.includes(element.id)) { element.pay_amount = element.rp; } }) var objs; axios.post('/pp/mul_payment_application', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), data: _this.$data.multipleSelection, }) .then(function (response) { let r = response.data.r; let s = "" let errType = "" if (r == 0) { errType = "success" // 操作日志 var list = []; _this.$data.multipleSelection.forEach(element => { list.push(element.id); console.log(element); }); _this.add_operation_log("申请序号:" + list.toString() + "付款申请"); } else { errType = "error" } if (r == 0) { s = "付款申请成功!"; _this.$message({ message: s, type: errType, duration: 1500 }); // 付款申请日志 _this.$data.multipleSelection.forEach(element => { console.log(element); axios.post('/pp/add_sp_2_log', { id: element.id, record: "付款申请", amount: element.total_p.replaceAll(",", ""), amount_1: element.pay_amount.replaceAll(",", ""), operator: localStorage.getItem("online_user"), }).then((response) => { console.log(response.data); }).catch((error) => { console.log(error); }); }); } else { s = response.data.context; _this.$message({ dangerouslyUseHTMLString: true, message: s, type: errType, duration: 3000 }); } _this.get_ma_plan(); // _this.$data.pay_amount_changed = false; if (r == 0) { _this.$router.push("/sp_2"); } }) .catch(function (error) { console.log(error); }); }, more_query_select(value) { console.log(value); console.log(this.$data.more_query_v); if (value == "采购人员") { } else { this.$data.buyer_v = '' } console.log("更多查询", value) this.get_ma_plan(); }, get_pre_plan(pre_id) { this.$data.currentPage = 1; document.getElementById("bt_serach").blur(); var _this = this; var objs; axios.post('/pp/get_ma_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), index: this.$data.currentPage, count: this.$data.pagesize, id: pre_id.toString(), if_done: this.$data.checked, }) .then(function (response) { console.log(response.data); objs = response.data.data; rcnt = response.data.total; _this.$data.tableData = objs; _this.$data.recordTotal = rcnt; //_this.$data.pagecnt = response.data.pagecnt; }) .catch(function (error) { console.log(error); }); }, warning_close(done) { this.$data.warning_checked = false; done() }, if_warning_checked(val) { if (val) { this.get_warning(); } else { } }, child_close(done) { this.get_ma_plan(); done() }, down_qs_files(row) { var downUrl = '/pp/download_ds_file' + "?id=" + row.qs; downloadUrl(row.qs, downUrl); }, down_as_files(row) { var downUrl = '/pp/download_ds_file' + "?id=" + row.as; downloadUrl(row.as, downUrl); }, get_warning() { var _this = this; var objs; axios.post('/pp/get_warning_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), }) .then(function (response) { console.log(response.data); objs = response.data.data; _this.$data.warning_data = objs; if (_this.$data.warning_data.length > 0) { _this.warning_dialogVisible = true; } }) .catch(function (error) { console.log(error); }); }, get_buyer() { var _this = this; var objs; axios.post('/pp/getUsers', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), index: 1, count: 1000 }) .then(function (response) { console.log(response.data); objs = response.data.data; rcnt = response.data.total; for (var i = 0; i < objs.length; ++i) { if (objs[i].if_buyer == 1) { var obj = { value: objs[i].username, label: objs[i].username, } _this.$data.buyer_data.push(obj); } } }) .catch(function (error) { console.log(error); }); }, if_paid_all_cahnge(val) { console.log(val); if (val) { this.$data.planform.payment = this.$data.row.rp; } }, tableHeaderColor({ row, column, rowIndex, columnIndex }) { return; console.log(column); if (rowIndex === 0 && column.label == "RDM") { return 'background-color: #FAD355; ';//绿色 } else if (rowIndex === 0 && column.label == "六合编号") { return 'background-color: #FAD355; ';//橙色 } else if (rowIndex === 0 && column.label == "名称") { return 'background-color: #BACEFD; ';//橙色 } else if (rowIndex === 0 && column.label == "规格") { return 'background-color: #BACEFD; ';//橙色 } else if (rowIndex === 0 && column.label == "单位") { return 'background-color: #BACEFD; ';//橙色 } else if (rowIndex === 0 && column.label == "数量") { return 'background-color: #FAD355; ';//橙色 } else if (rowIndex === 0 && column.label == "单价") { return 'background-color: #BACEFD; ';//橙色 } else if (rowIndex === 0 && column.label == "付款方式") { return 'background-color: #BACEFD; ';//橙色 } else if (rowIndex === 0 && column.label == "交付日期") { return 'background-color: #FAD355; ';//橙色 } else if (rowIndex === 0 && column.label == "采购周期") { return 'background-color: #BACEFD; ';//橙色 } else { return 'background: #ffffff;'; } }, mul_update_pp_plan_num() { if (this.$data.multipleSelection.length == 0) { this.$message({ message: "请选择计划", type: "warning", duration: 1500 }); return; } var _this = this; var objs; axios.post('/pp/mul_update_pp_plan_num', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), data: _this.$data.multipleSelection, }) .then(function (response) { let r = response.data.r; let s = "" let errType = "" if (r == 0) { errType = "success" // 操作日志 var list = []; _this.$data.multipleSelection.forEach(element => { list.push(element.id); }); _this.add_operation_log("批量到货序号:" + list.toString() + "采购计划"); } else { errType = "error" } if (r == 0) { s = "修改成功!"; } else { s = "修改失败!"; } _this.$message({ message: s, type: errType, duration: 1500 }); _this.get_ma_plan(_this.$data.currentPage); }) .catch(function (error) { console.log(error); }); }, show_payment(info) { var _this = this; var objs; axios.post('/pp/get_payment_by_id', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), id: info.id, }) .then(function (response) { console.log(response.data); objs = response.data.data; _this.$data.row = objs; if (_this.$data.row.total_p == "") { _this.$data.row.total_p = info.total_p.replace(/,/g, "") } if (_this.$data.row.paid == "") { _this.$data.row.paid = info.paid.replace(/,/g, ""); } if (_this.$data.row.rp == "") { _this.$data.row.rp = info.rp.replace(/,/g, ""); } _this.$data.row.supplier = info.supplier; _this.$data.row.code = info.code; _this.$data.row.name = info.name; _this.$data.row.spec = info.spec; _this.$data.row.unit = info.unit; _this.$data.row.num = info.num; _this.$data.row.price = info.price; _this.$data.row.pt = info.pt; //_this.$data.row.flag = info.flag; _this.$data.row.pre_id = info.pre_id; _this.$data.dialogVisible = true; }) .catch(function (error) { console.log(error); }); }, post_p() { this.$data.dialogVisible = false; var _this = this; var objs; axios.post('/pp/update_payment', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), data: _this.$data.row, }) .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 }); //更新页面 if (r == 0) { if (_this.$data.row.pre_id == 0) { _this.get_ma_plan(_this.$data.currentPage); } else if (_this.$data.row.pre_id != 0) { var arr1 = new Array(); //创建一个空数组 for (var i = 0; i < _this.$data.child_data.length; ++i) { arr1.push(_this.$data.child_data[i].id); } _this.get_single_pp(arr1); _this.get_ma_plan(_this.$data.currentPage); } } }) .catch(function (error) { console.log(error); }); }, addkpiplan_1() { this.$refs['planform_1'].validate((valid) => { if (valid) { if (this.$data.plan_op_type == 1) { var obj = { id: this.$data.maxid, payment_month: this.$data.planform.payment_month, payment: this.$data.planform.payment.toString(), payment_user: this.$data.planform.payment_user, } this.$data.row.payment_data.push(obj); this.$data.maxid += 1; console.log("id:", this.$data.maxid); } else if (this.$data.plan_op_type == 2) { for (var i = 0; i < this.$data.row.payment_data.length; ++i) { if (this.$data.row.payment_data[i].id == this.$data.planform.id) { this.$data.row.payment_data[i].payment_month = this.$data.planform.payment_month; this.$data.row.payment_data[i].payment = this.$data.planform.payment.toString(); this.$data.row.payment_data[i].payment_user = this.$data.planform.payment_user; console.log(this.$data.row); break; } } } var total = 0 for (var i = 0; i < this.$data.row.payment_data.length; ++i) { var t = parseFloat(this.$data.row.payment_data[i].payment) total = total + t; } console.log("已付:", total); this.$data.row.paid = total.toString(); var t = parseFloat(this.$data.row.total_p) if (t > total) { this.$data.row.rp = (t - total).toFixed(2).toString(); } else { this.$data.row.rp = "0"; } this.$data.addplanVisible_1 = false; } }); }, showAddkpiplan_1() { console.log("payment:", this.$data.row); const today = new Date(); const year = today.getFullYear(); const month = today.getMonth() + 1; // 月份从0开始,所以要加1 const day = today.getDate(); this.$data.planform.payment_month = year + '/' + month + '/' + day; this.$data.planform.payment = ''; this.$data.planform.payment_user = localStorage.getItem("online_user"); this.$data.plan_op_type = 1; this.$data.if_paid_all = false; console.log("payment:", this.$data.row.payment_data); for (var i = 0; i < this.$data.row.payment_data.length; i++) { if (this.$data.row.payment_data[i].id > this.$data.maxid) { this.$data.maxid = this.$data.row.payment_data[i].id } } if (this.$data.maxid != -1) { this.$data.maxid += 1; } else { this.$data.maxid = 0; } this.$nextTick(() => { this.$refs['planform_1'].clearValidate() }); this.$data.addplanVisible_1 = true; }, delKpiplan(row) { var index = -1; for (var i = 0; i < this.$data.row.payment_data.length; ++i) { if (this.$data.row.payment_data[i].id == row.id) { index = i; break; } } if (index > -1) { this.$data.row.payment_data.splice(index, 1); } var total = 0 for (var i = 0; i < this.$data.row.payment_data.length; ++i) { var t = parseFloat(this.$data.row.payment_data[i].payment) total = total + t; } console.log("已付:", total); this.$data.row.paid = total.toString(); var t = parseFloat(this.$data.row.total_p) if (t > total) { this.$data.row.rp = (t - total).toString(); } }, show_updateplan_dialog(row) { this.$data.planform.payment_month = row.payment_month; this.$data.planform.payment = row.payment; this.$data.planform.payment_user = row.payment_user; this.$data.planform.id = row.id; this.$data.plan_op_type = 2; this.$nextTick(() => { this.$refs['planform_1'].clearValidate() }); this.$data.addplanVisible_1 = true; }, cal_num() { var num = parseInt(this.$data.form.num) var num1 = parseInt(this.$data.form.aq) this.$data.form.uq = (num - num1).toString() }, date_change(form) { console.log(form); var bt = ""; var days = form.cycle; if (form.Production_date == "") { return; } else { bt = form.Production_date; } var _this = this; axios.post('/pp/cal_completion_date', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), bt: bt, days: days }) .then(function (response) { _this.form.due_date = response.data.completion_date; }) .catch(function (error) { console.log(error); }); }, get_ma_user() { var _this = this; axios.post('/pp/get_ma_username', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), }) .then(function (response) { _this.$data.ma_users = []; console.log(response.data); objs = response.data.data; for (var i = 0; i < objs.length; ++i) { var obj = { value: objs[i], label: objs[i] } _this.$data.ma_users.push(obj); } }) .catch(function (error) { console.log(error); }); }, get_single_pp(child_id) { var _this = this; var objs; axios.post('/pp/get_single_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), id: child_id, if_done: this.$data.checked, }) .then(function (response) { console.log(response.data); objs = response.data.data; //rcnt = response.data.total; _this.$data.child_data = objs; }) .catch(function (error) { console.log(error); }); }, celldblclick_1(row, column, cell, event) { console.log("row0:", row); if (column.property == "id") { if (row.flag == "1") { this.$data.pre_id = row.id; var _this = this; var objs; axios.post('/pp/get_single_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), id: row.cti, if_done: this.$data.checked, }) .then(function (response) { console.log(response.data); objs = response.data.data; //rcnt = response.data.total; _this.$data.child_data = objs; }) .catch(function (error) { console.log(error); }); _this.$data.show_child = true; } else { if (row.if_modify == false) { return; } this.$data.pre_id = 0; console.log("row:", row); this.show_update_dialog(row); } } }, copyValue(row, event) { var el = event.currentTarget; var range, selection; if (document.body.createTextRange) { range = document.body.createTextRange(); range.moveToElementText(el); range.select(); } else if (window.getSelection) { selection = window.getSelection(); range = document.createRange(); range.selectNodeContents(el); selection.removeAllRanges(); selection.addRange(range); } document.execCommand("Copy"); }, to_redmine_1(rdm) { let id = parseInt(rdm); if (id < 10000) { return; } url = encodeURI("http://123.54.1.214:10010/redmine/issues/" + rdm); window.open(url, ""); }, to_redmine(row) { if (row.mt != "") { url = encodeURI(row.buy_record); window.open(url, ""); } }, input_change(value) { console.log(value); this.get_ma_plan(); }, pid_selectChanged(value) { console.log("select change"); this.loading = true; var _this = this; axios.post('/pp/get_p_name', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), p_id: value, }) .then(function (response) { _this.$data.form.p_name = response.data.p_name; }) .catch(function (error) { console.log(error); }); }, remoteMethod(query) { if (query !== '') { this.loading = true; setTimeout(() => { var _this = this; axios.post('/pp/get_p_id_options', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), p_like_id: query, }) .then(function (response) { _this.$data.p_id_options = []; console.log(response.data); objs = response.data.data; for (var i = 0; i < objs.length; ++i) { var obj = { value: objs[i], label: objs[i], } _this.$data.p_id_options.push(obj); } _this.$data.loading = false; console.log(_this.$data.loading) }) .catch(function (error) { console.log(error); _this.$data.loading = false; }); }, 200); } else { _this.$data.p_id_options = []; } }, if_fin_cahnge(val) { if (val) { this.$data.if_do = false; } else { this.$data.if_do = true; } this.get_ma_plan(); }, selectedRowStyle({ row, rowIndex }) { for (var i = 0; i < this.$data.multipleSelection.length; i++) { if (this.$data.multipleSelection[i].id == row.id) { let styleJson = { "background": "#134857", "color": "#FFFFFF", }; return styleJson; } } }, download_template() { document.getElementById("bt_download").blur(); var downUrl = '/pp/download_file' + "?id=" + "导入采购计划.csv"; downloadUrl("采购计划导入文件模板.csv", downUrl); }, handleSelectionChange(val) { console.log("已选择"); console.log(val); this.multipleSelection = val; }, importData() { document.getElementById("bt_import").blur(); if (this.$data.importTableData.length == 0) { this.$message({ message: "请选择导入文件", type: "warning", duration: 1500 }); return; } this.$data.percent_len = 0; this.$data.if_show_process = true; this.$data.interval = setInterval(() => { if (this.$data.percent_len >= 99) { clearInterval(this.$data.interval); return; } this.$data.percent_len += 1 }, 20) var _this = this; axios.post('/pp/import_ma_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), plan: this.$data.importTableData, }) .then(function (response) { let r = response.data.r; console.log("r:", r); let s = "" let errType = "" if (r == 0) { let len = _this.$data.importTableData.length; _this.$data.percent_len = 100; _this.$data.if_show_process = false; errType = "success" s = "导入" + len + "采购计划成功!"; _this.$message({ message: s, type: errType, duration: 1500 }); // 操作日志 _this.add_operation_log("导入" + len + "条采购计划"); } else if (r == 2) { errType = "error" s = response.data.context; console.log(s); clearInterval(_this.$data.interval); _this.$message({ dangerouslyUseHTMLString: true, message: s, type: errType, duration: 3000 }); } else { errType = "error" s = "导入采购计划失败!"; clearInterval(_this.$data.interval); _this.$message({ message: s, type: errType, duration: 3000 }); } _this.$data.importdialogVisible = false; //更新页面 _this.get_ma_plan(); }) .catch(function (error) { console.log(error); }); }, importDialog_close(done) { console.log("关闭导入对话框"); 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文件的数据 if (results.data.length > 5000) { _this.$message({ type: 'warning', message: '导入数据量过大,请分批导入!' }) return; } let data = [] //遍历csv文件中的数据,存放到data中 方法不唯一,可自己更改 var cnt = 1 for (let i = 0; i < results.data.length; ++i) { if (i == 0) { continue; } let obj = {} obj.flag = results.data[i][0] if (obj.flag == "" || obj.flag == undefined) { continue; } /*obj.contract_id = results.data[i][1] obj.contract_amount = results.data[i][2] */ obj.rdm = results.data[i][1] obj.code = results.data[i][2] obj.num = results.data[i][3] obj.demand_date = results.data[i][4] obj.buyer = results.data[i][5] obj.order_date = results.data[i][6] obj.t_id = cnt cnt += 1 data.push(obj) } //data.splice(0, 1)//将数组第一位的表格名称去除 let num = 0 console.log('data', data) _this.$data.importTableData = data; } }) } else { this.$data.fileListUpload = []; this.$message({ type: 'warning', message: '附件格式错误,请删除后重新上传!' }) } } else { this.$message({ type: 'warning', message: '请上传附件!' }) } }, importCsv() { this.$data.fileListUpload = []; this.$data.importTableData = []; this.$data.importdialogVisible = true; this.$data.if_show_process = false; }, search() { this.get_ma_plan(); }, export_plan_1() { var _this = this; var objs; axios.post('/pp/export_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), index: this.$data.currentPage, count: this.$data.pagesize, id: this.$data.id_v, rdm: this.$data.rdm_v, bt: this.$data.bt_v, et: this.$data.et_v, code: this.$data.msid_v, name: this.$data.pname_v, supplier: this.$data.supplier_v, if_done: this.$data.checked, state: this.$data.state_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; // 操作日志 _this.add_operation_log("导出:" + filename); var downUrl = '/pp/download_file' + "?id=" + fileid; downloadUrl(filename, downUrl); }) .catch(function (error) { console.log(error); }); }, export_warn_plan() { var _this = this; var objs; axios.post('/pp/export_warning_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), }) .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 = '/pp/download_file' + "?id=" + fileid; downloadUrl(filename, downUrl); }) .catch(function (error) { console.log(error); }); }, export_plan() { var _this = this; var objs; axios.post('/pp/export_ma_temp_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), id: this.$data.id_v, rid: this.$data.rid_v, if_done: this.$data.checked, repairer: this.$data.repairer_v, rs: this.$data.rs_v, regional_head: this.$data.regional_head_v, ms: this.$data.ms_v, sort_field: this.$data.asc_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 = '/pp/download_file' + "?id=" + fileid; downloadUrl(filename, downUrl); // 操作日志 _this.add_operation_log("应付款导出:" + filename); }) .catch(function (error) { console.log(error); }); }, tableRowClassName({ row, rowIndex }) { if (row.cti != undefined && row.cti.length > 0) { return 'success-row'; } else { /*var n = rowIndex%2; if (n == 1) { return 'success-row'; }*/ } return ''; }, show_update_dialog(row) { if (!this.$data.pay_amount_changed.includes(row.id)) { row.pay_amount = row.rp; this.$data.pay_amount_changed.push(row.id); // 将row.id添加到数组中 } this.$data.form = { pre_id: row.pre_id, id: row.id, rdm: row.rdm, code: row.code, name: row.name, specs: row.specs, unit: row.unit, num: row.num, price: row.price, total_p: row.total_p, pt: row.pt, paid: row.paid, rp: row.rp, demand_date: row.demand_date, purchasing_cycle: row.purchasing_cycle, order_date: row.order_date, demand_date: row.demand_date, purchasing_cycle: row.purchasing_cycle, order_date: row.order_date, over_due1: row.over_due1, add: row.add, residue: row.residue, over_due2: row.over_due2, buy_record: row.buy_record, aq: row.aq, state: row.state, wen: row.wen, supplier: row.supplier, flag: row.flag, cti: row.cti, buyer: row.buyer, dduc: row.dduc, serial_num: row.serial_num, contract_id: row.contract_id, batch_no: row.batch_no, pay_amount: row.pay_amount, remark: row.remark }; console.log(this.$data.form) //this.get_ma_user(); var op_user = localStorage.getItem("online_user"); var level = localStorage.getItem("level"); var did = localStorage.getItem("did"); if (level == 1) { this.$data.disabled = false; } else { this.$data.disabled = true; } console.log(level, this.$data.disabled); this.$data.updatedialogVisible_ex = true; }, update_ma_ex() { this.$refs['authform_ex'].validate((valid) => { if (valid) { var _this = this; axios.post('/pp/update_ma_plan_ex', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), data: _this.form, }) .then(function (response) { let r = response.data.r; let s = "" let errType = "" if (r == 0) { errType = "success" s = "修改成功!"; // 操作日志 _this.add_operation_log("修改序号:" + _this.form.id + "采购计划"); } else { errType = "error" s = "修改失败!"; } _this.$message({ message: s, type: errType, duration: 1500 }); //更新页面 if (r == 0) { console.log("flag:", _this.form.flag); if (_this.form.flag != "2") { _this.get_ma_plan(_this.$data.currentPage); _this.$data.updatedialogVisible_ex = false; } else if (_this.form.flag == "2") { var arr1 = new Array(); //创建一个空数组 for (var i = 0; i < _this.$data.child_data.length; ++i) { arr1.push(_this.$data.child_data[i].id); } _this.get_single_pp(arr1); _this.$data.updatedialogVisible_ex = false; } } }) .catch(function (error) { console.log(error); }); } }); }, remove_ma_plan(row) { this.$confirm('此操作将永久删除, 是否继续?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { var _this = this; axios.post('/pp/remove_ma_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), id: row.id }) .then(function (response) { let r = response.data.r; let s = "" let errType = "" if (r == 0) { errType = "success" s = "删除成功!"; // 操作日志 // _this.add_operation_log("删除序号:" + row.id + "采购计划"); if (row.flag != "2") { _this.get_ma_plan(_this.$data.currentPage); } else if (row.flag == "2") { var arr1 = new Array(); //创建一个空数组 for (var i = 0; i < _this.$data.child_data.length; ++i) { arr1.push(_this.$data.child_data[i].id); } _this.get_single_pp(arr1); _this.get_ma_plan(_this.$data.currentPage); } } else if (r == 1) { errType = "warning" s = "有子任务,请先删除子任务再删除主任务!"; } else { errType = "error" s = "删除失败!"; } _this.$message({ message: s, type: errType, duration: 1500 }); }) .catch(function (error) { console.log(error); }); }).catch(() => { }); }, get_ma_plan_1() { document.getElementById("bt_serach_1").blur(); var _this = this; var objs; axios.post('/pp/get_ma_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), index: this.$data.currentPage, count: this.$data.pagesize, id: this.$data.id_v, rdm: this.$data.rdm_v, bt: this.$data.bt_v, et: this.$data.et_v, code: this.$data.msid_v, name: this.$data.pname_v, supplier: this.$data.supplier_v, if_done: this.$data.checked, state: this.$data.state_v, buyer: this.$data.buyer_v, }) .then(function (response) { console.log(response.data); objs = response.data.data; rcnt = response.data.total; _this.$data.tableData = objs; _this.$data.recordTotal = rcnt; //_this.$data.pagecnt = response.data.pagecnt; }) .catch(function (error) { console.log(error); }); }, get_ma_plan(cur_page) { console.log("cur_page:", cur_page); document.getElementById("bt_serach").blur(); var _this = this; var objs; axios.post('/pp/get_ma_plan', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), index: this.$data.currentPage, count: this.$data.pagesize, id: this.$data.id_v, rdm: this.$data.rdm_v, bt: this.$data.bt_v, et: this.$data.et_v, code: this.$data.msid_v, name: this.$data.pname_v, supplier: this.$data.supplier_v, if_done: this.$data.checked, state: this.$data.state_v, buyer: this.$data.buyer_v, }) .then(function (response) { console.log(response.data); objs = response.data.data; rcnt = response.data.total; _this.$data.tableData = objs; _this.$data.recordTotal = rcnt; //_this.$data.pagecnt = response.data.pagecnt; }) .catch(function (error) { console.log(error); }); }, handleSizeChange(val) { //console.log(`每页 ${val} 条`); this.$data.pagesize = val; this.get_ma_plan(); }, handleCurrentChange(val) { //console.log(`当前页: ${val}`); this.$data.currentPage = val; this.get_ma_plan(); }, down_file_22(row) { //根据id获取contract_name var downUrl = '/pp/download_sp_1_file' + "?id=" + row.id; downloadUrl(row.contract_name, downUrl); return; /*var index = row.contract_name.lastIndexOf(".") if(row.contract_name.slice(index) == ".pdf"){ var downUrl = '/file/'+'sp_1/'+row.contract_name; window.open(downUrl, '_blank'); }else{ var downUrl = '/pp/download_sp_1_file'+"?id="+row.id; downloadUrl(row.contract_name,downUrl); }*/ }, down_file_23(row) { //根据id获取contract_name var downUrl = '/pp/upload_sp_2_file' + "?id=" + row.id; downloadUrl(row.pay_contract_name, downUrl); return; /*var index = row.contract_name.lastIndexOf(".") if(row.contract_name.slice(index) == ".pdf"){ var downUrl = '/file/'+'sp_1/'+row.contract_name; window.open(downUrl, '_blank'); }else{ var downUrl = '/pp/download_sp_1_file'+"?id="+row.id; downloadUrl(row.contract_name,downUrl); }*/ }, // 根据内容设置列表宽度 flexColumnWidth(str, arr1, fontNum = 4, flag = 'max') { return window.flexColumnWidth(str, arr1, fontNum, flag); }, // 合同状态/付款审批宽度 str_state_with(str, str2, arr1) { if(!arr1){ return 65; } for (var i = 0; i < arr1.length; ++i) { if (arr1[i][str] !== null && arr1[i][str] !== "") { return 110; } else if (arr1[i][str] !== null && arr1[i][str] !== "") { return 95; } } return 65; }, paid_with() { if(!this.$data.tableData){ return false; } for (var i = 0; i < this.$data.tableData.length; ++i) { if (this.$data.tableData[i].flag!="1") { return true; } } return false; }, // 操作日志 add_operation_log(operation) { axios.post('/pp/add_operation_log', { opuser: localStorage.getItem("online_user"), opuser_uuid: localStorage.getItem("uuid"), operation: operation, }).then(function (response) { console.log(response); }).catch(function (error) { console.log(error); }) } } }