<!doctype html> <html> <head> <meta charset="utf-8"><meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" content="no-cache"><meta http-equiv="Cache-control" content="no-cache"><meta http-equiv="Cache" content="no-cache"> <title>调整撤销</title> <script type="text/javascript"> var pageVue = null; function loadJsCss(callback) { var jscss_urls = []; window.top.initJsCss(document, jscss_urls, callback); }; function initVue() { new FormVue({ el: "#vbody", data: { dataname: "so_implant_cancel", table_dataname: "so_implant_detail", datanameImplanted: "so_implant", title: "调整撤销", formAttr: { istitle: false, title: "表å•åç§°", columnnumber: 3, labelwidth: "80px", labelposition: "left",//"left",// right//top size: "mini", border: "3px solid #c6c6c600" }, //调整撤销å•表头 formFields: [], formData: {}, newformData: { // doc_date: createDatetime(), state_code: "Input", state_name: "è‰ç¨¿", /* type_code: "implantCancel", type_name: "æ¤å…¥è°ƒæ•´æ’¤é”€", */ }, formAttrImplant: { istitle: false, title: "表å•åç§°", columnnumber: 12, labelwidth: "80px", labelposition: "left",//"left",// right//top size: "mini", border: "3px solid #c6c6c600" }, //æ¤å…¥å•表头 formFieldsImplant: [], formDataImplant: {}, invoice_attachment_list: [], // æ¤å…¥å•å‘ç¥¨é™„ä»¶ç»„ï¼ˆåªæœ‰ä¸€ä¸ªçš„æ•°ç»„) implant_attachment_list: [], // æ¤å…¥å•附件组 //æ¤å…¥å•è¡¨æ ¼ tableFields: [], tableData: [], // æ¤å…¥å•æ˜Žç»†æ•°æ® newTableData: { create_time: createDatetime(), // creator_name: window.top.vue.userinfo.name, }, dataRequest: [ // { // name: "so_implant",//æ¤å…¥å•å—æ®µ // url: "root/data/getEntitySet", // paramsobj: { dataname: "so_implant", }, // isnotoption: false, //true:䏿˜¯é€‰é¡¹ // filter: '1<>1', // code:"code",//是下拉选项时设置 // label:"name",//是下拉选项时设置 // }, ], dataRequestObj: {}, isRefresh: true, //按键æƒé™è®¾ç½® isedit: false,//æäº¤å‰ç¼–辑,ä¿å˜/æäº¤ isrefuseedit: false,//æ‹’ç»åŽç¼–辑,ä¿å˜/冿¬¡æäº¤ isapproval: false,//å®¡æ‰¹ï¼ŒåŒæ„/æ‹’ç»/转办/退回 iscommit: false,//æäº¤æ ‡è®° loading_save: false, //审批相关å˜é‡ loading_save: false, loading_pass: false, reasonvisible:false,//审批通过或拒ç»å¡«å†™åŽŸå› approveremark: "",//填写ç†ç”± passOrRefuse:false, //å¼¹çª—å‚æ•° popupParames: {}, //å—æ®µè®¾ç½® tablefieldClick: {}, formfieldClick: {}, formfieldImplantClick: {}, t_height:null, detailCancelDate: "", iscustomer: false, saveImplantMeta: {}, openDate: "", currentDate: "", cancelDate: "", implantid: "", tableAttr: { istitle: true, title: "æ¤å…¥æ˜Žç»†", isborder: true, // æ˜¾ç¤ºè¡¨æ ¼çš„ç½‘æ ¼çº¿ toolbarobj: {} }, tablebuttonclick: [], paramObjBydefault: { 'version': { 'compare_type': "WithWorking" }, }, table_dataname_invoice: "so_implant_invoice", // å‘票头 table_dataname_pzd: "so_implant_invoice_detail", // å‡è¯æ˜Žç»† tableAttr_pzd: { istitle: true, title: "æ¤å…¥å‡è¯æ˜Žç»†", isborder: true, // æ˜¾ç¤ºè¡¨æ ¼çš„ç½‘æ ¼çº¿ toolbarobj: {}, tag: { type: "", name: "", classname: "", size: "" } }, tableFields_pzd: [], tableData_invoice: [{}], // æ¤å…¥å•å‘ç¥¨ä¿¡æ¯ tableData_pzd: [], // æ¤å…¥å•å‡è¯æ˜Žç»† tablefieldClick_pzd: {}, tablebuttonclick_pzd: [], isedit_pzd: false, is_refresh_pzd: true, isalteredit: false, }, created() { this.iscustomer = window.top.vue.isCustomer; // 是ç»é”€å•†è´¦å· this.popupParames = clone(Root.popupParames); this.title = this.popupParames.title || this.popupParames.text if (this.popupParames.data) { this.formData = clone(this.popupParames.data); if(this.formData.host_id) { this.paramObjBydefault.host_id = this.formData.host_id; } if (this.formData.type_code == "whole") { //ç¼–è¾‘æ•´å•æ’¤é”€ this.dataname = "so_implant_cancel" } else { // 编辑调整撤销 this.dataname = "so_implant_change" } } if (this.popupParames.delta) { // this.detailCancelDate = clone(this.popupParames.delta.detailCancelDate); this.openDate = clone(this.popupParames.delta.openDate); this.currentDate = clone(this.popupParames.delta.currentDate); this.cancelDate = clone(this.popupParames.delta.cancelDate); this.implantid = clone(this.popupParames.delta.implantid); // 从æ¤å…¥å•ä¸è¿›å…¥æ•´å•撤销会带有æ¤å…¥å•id } if (this.popupParames.sceneCode) { if (this.popupParames.sceneCode == "add") {//新增调整撤销 this.dataname = "so_implant_change" //动æ€èŽ·å–é»˜è®¤æ•°æ® var newEntity_ = { name: "newEntity", url: "root/data/newEntity", paramsobj: {dataname: this.dataname}, isnotoption: true, //true:䏿˜¯é€‰é¡¹ } this.dataRequest.push(newEntity_); if (this.newTableData) { this.tableData.push(clone(this.newTableData)); } this.isedit = true; // 没有选择调整类型时,ä¸å¯ç¼–辑æ¤å…¥å•æ•°æ® this.formAttrImplant.disabled = true; this.isedit_pzd = false; this.isalteredit = true; } else if (this.popupParames.sceneCode == "addwhole") {//æ–°å¢žæ•´å•æ’¤é”€ this.dataname = "so_implant_cancel" this.newformData.type_code = "whole"; this.newformData.type_name = "æ•´å•æ’¤é”€"; //动æ€èŽ·å–é»˜è®¤æ•°æ® var newEntity_ = { name: "newEntity", url: "root/data/newEntity", paramsobj: {dataname: this.dataname}, isnotoption: true, //true:䏿˜¯é€‰é¡¹ } this.dataRequest.push(newEntity_); if (this.implantid) { var getimplant_ = { name: "getImplant", url: "root/data/getEntity", paramsobj: {dataname: "so_implant", id: this.implantid}, isnotoption: true, //true:䏿˜¯é€‰é¡¹ } this.dataRequest.push(getimplant_); } this.isedit = true; this.formAttrImplant.disabled = true; this.isedit_pzd = false; } else if (this.popupParames.sceneCode == "browse") {//åªè¯» this.formAttr.disabled = true; this.formAttrImplant.disabled = true; } else if (this.popupParames.sceneCode == "edit") {//编辑 this.isedit = true; if (this.formData.type_code == "whole") { //ç¼–è¾‘æ•´å•æ’¤é”€ this.formAttrImplant.disabled = true; this.isedit_pzd = false; } else { // 编辑调整撤销 this.isedit_pzd = true; this.isalteredit = true; } } else if (this.popupParames.sceneCode == "change") {//调整撤销 this.isedit = true; this.isedit_pzd = true; this.isChange = true; } else if (this.popupParames.sceneCode == "approval") {//审批 this.formAttr.disabled = true; this.isapproval = true; if (this.formData.type_code == "whole") { //ç¼–è¾‘æ•´å•æ’¤é”€ this.formAttrImplant.disabled = true; this.isedit_pzd = false; } else { // 编辑调整撤销 this.formAttrImplant.disabled = true; this.isedit_pzd = false; this.isalteredit = true; } } else if (this.popupParames.sceneCode == "refuseedit") {//æ‹’ç»åŽçš„编辑 this.isrefuseedit = true; } } }, mounted() { var me = this; me.t_height = document.documentElement.clientHeight*1 - 91; //é¢„åŠ è½½æ•°æ® if (this.dataRequest && this.dataRequest.length) { var result = {}; this.loadRequestData(this.dataRequest, result, function(data) { me.dataRequestObj = data; console.log(data); //é¢„åŠ è½½æ•°æ®åŽç»™å“ªäº›å—段设置options或formatterjson if (me.dataRequestObj.newEntity) { var formData = clone(me.dataRequestObj.newEntity.data[me.dataname]); if (me.newformData) { let formData_ = clone(formData); for (var k in me.newformData) { if (!formData_[k]) { formData_[k] = me.newformData[k]; } } me.formData = formData_; } } if (me.dataRequestObj.getImplant) { var obj = clone(me.dataRequestObj.getImplant.data); me.loadImplantData(obj); // if (obj.file_index) { // var files_ = [] // obj.file_index.map(fileobj=>{ // var file_ = { // id: fileobj.id, // file_name: fileobj.file_name, // file_tag: fileobj.bill_no ? fileobj.bill_no: (fileobj.is_bill ? "å‘票": "") //1是å¦å‘票 // } // files_.push(file_); // }) // me.$set(me.formDataImplant, "implant_attachment", files_); // } } // if(me.dataRequestObj[me.datanameImplanted]) { // if(me.dataRequestObj[me.datanameImplanted].meta && me.dataRequestObj[me.datanameImplanted].meta[me.datanameImplanted] && me.dataRequestObj[me.datanameImplanted].meta.so_implant.fields) { // me.saveImplantMeta.so_implant_fields = clone(me.dataRequestObj[me.datanameImplanted].meta[me.datanameImplanted].fields); // } // if(me.dataRequestObj[me.datanameImplanted].meta && me.dataRequestObj[me.datanameImplanted].meta[me.table_dataname] && me.dataRequestObj[me.datanameImplanted].meta[me.table_dataname].fields) { // me.saveImplantMeta.so_implant_detail_fields = clone(me.dataRequestObj[me.datanameImplanted].meta[me.datanameImplanted].fields); // } // } me.initData(); }); } else { me.initData(); } }, methods:{ //å…³é—弹窗 closeDialog() { var me = this; if (me.popupParames.totab){ Root.tab.removeItem(Root.tab.selected); Root.tab.open(me.popupParames.parentOption, false); } else { Root.hidePopup(); } }, //å…³é—å‰è°ƒå›žè°ƒ saveAfter() { var me = this; if(this.popupParames.callback) { let obj = { //row: this.formData } this.popupParames.callback(obj, function() { me.closeDialog(); }); } else { me.closeDialog(); } }, initData() { let me = this this.tablebuttonClick(); var id_ = null; if (this.formData.id) { id_ = this.formData.id; } this.getRowDataById(id_, function(result) {//查询åŽçš„回调,用于获å–å—æ®µçš„ //撤销å•è¡¨å¤´å—æ®µ if (result.meta && result.meta[me.dataname] && result.meta[me.dataname].fields) { var formFields_ = []; var metas = clone(result.meta[me.dataname].fields); metas.map(f=>{ f.isshow = "T"; if (f.field == "type_code") { f.isnotclearable = true; if (me.isalteredit) { // 调整撤销 f.optionsgroup = "cancel_alter_type" } else { f.optionsgroup = "cancel_type_all" f.readonly = true } } formFields_.push(clone(f)); }) if (!me.formFields || (me.formFields && me.formFields.length == 0)) { me.formFields = clone(formFields_); } } //æ¤å…¥å•è¡¨å¤´å—æ®µ if (result.host_meta && result.host_meta[me.datanameImplanted] && result.host_meta[me.datanameImplanted].fields) { var formFields_implant = []; if(result.host_meta[me.datanameImplanted] && result.host_meta[me.datanameImplanted].fields) { var metas_implant = clone(result.host_meta[me.datanameImplanted].fields); metas_implant.map(f=>{ f.isshow = "T"; if (result.host[me.datanameImplanted] && result.host[me.datanameImplanted].implant_evidence_code == "deliver" && (f.field == "invoice_no" || f.field == "invoice_attachment")) { f.isshow = "F" } if (f.field == "company_name") { f.colspan = 2; } // if (f.field == "customer_name") { // f.colspan = 2; // } if (f.field == "implant_attachment") { if (result.host[me.datanameImplanted] && result.host[me.datanameImplanted].implant_evidence_code == "deliver") { f.required = true } else { f.required = false } } formFields_implant.push(clone(f)); }) var code_ = {isshow: "T", field: "code", name: "æ¤å…¥å•å·", type: "span", group_name: "æ¤å…¥ä¿¡æ¯", colspan: 2} formFields_implant.unshift(code_) } if (!me.formFieldsImplant || (me.formFieldsImplant && me.formFieldsImplant.length == 0)) { me.formFieldsImplant = clone(formFields_implant); } } var tableFields_pzd_ = []; var table_dataname_pzd_metas = clone(result.host_meta[me.table_dataname_pzd].fields); table_dataname_pzd_metas.map(tpm=>{ tpm.isshow = "T"; tableFields_pzd_.push(tpm); }) //æ¤å…¥å•è¡¨æ ¼å—æ®µ if (result.host_meta && result.host_meta[me.table_dataname] && result.host_meta[me.table_dataname].fields) { var tableFields_ = []; var table_metas = clone(result.host_meta[me.table_dataname].fields); table_metas.map(f=>{ if (f.field == "implant_date" || f.field == "warehouse_name" || f.field == "product_name" || f.field == "spec" || f.field == "qty" || f.field == "batch_no" || f.field == "batch_sn" || f.field == "valid_from" || f.field == "valid_to" ) { f.isshow = "T"; } else { f.isshow = "F"; } if(f.field == "implant_date") {//æ¤å…¥æ—¥æœŸèŒƒå›´è®¾ç½® f.pickerOptions = { disabledDate(time) { //起始日期 var start_date = ""; //æˆªæ¢æ—¥æœŸ var end_date = ""; var end_openDate = me.openDate.slice(0, 4) + '-' + me.openDate.slice(4, 6) + '-01 00:00:00'; var year_openDate = new Date(end_openDate).getFullYear(); var month_openDate = new Date(end_openDate).getMonth(); var month_current = new Date(me.currentDate).getMonth(); start_date = year_openDate + "-01-01 00:00:00"; if (month_openDate == month_current) { end_date = dateFormat(new Date(new Date(me.currentDate).setDate(new Date(me.currentDate).getDate() + 1)), "yyyy-MM-dd") + " 00:00:00"; } else { end_date = dateFormat(new Date(new Date(end_openDate).setMonth(new Date(end_openDate).getMonth() + 1)), "yyyy-MM-dd") + " 00:00:00"; // end_date = new Date(end_openDate).setMonth(new Date(end_openDate).getMonth() + 1); } return time < new Date(start_date) || time >= new Date(end_date); } } } if (f.field == "qty") { var f_old_qty = {isshow: "T", field: "old_qty", name: "原数é‡", align: "right",width: "70"} tableFields_.push(clone(f_old_qty)); } tableFields_.push(clone(f)); // if (f.field == "qty") { // var f_diff_qty = {isshow: "T", field: "diff_qty", name: "调整差异", align: "right",width: "70"} // tableFields_.push(clone(f_diff_qty)); // } }) if (!me.tableFields || (me.tableFields && me.tableFields.length == 0)) { me.tableFields = clone(tableFields_); me.tableFields_pzd = clone(tableFields_pzd_); } } // 以æœåŠ¡çš„æ–¹å¼è°ƒç”¨çš„ Loading 需è¦å¼‚æ¥å…³é— me.$nextTick(() => { hideLoading(); }); console.log(me.rowData); //撤销å•è¡¨å¤´æ•°æ® if (me.rowData[me.dataname]) { me.formData = me.rowData[me.dataname]; } else { var formData_ = getDataByFields(me.formData, me.formFields); me.formData = clone(formData_); } //撤销å•附件数æ®ï¼Œå¾…确认撤销å•附件嗿®µï¼› // if (me.rowData["file_index"]) { // var files_ = [] // me.rowData["file_index"].map(fileobj=>{ // var file_ = { // id: fileobj.id, // file_name: fileobj.file_name // } // files_.push(file_); // }) // me.$set(me.formData, "implant_attachment", files_); // } // æ¤å…¥å•è¡¨å¤´æ•°æ® if (result.host[me.datanameImplanted]) { me.formDataImplant = clone(result.host[me.datanameImplanted]); } // æ¤å…¥å•附件的赋值(å«å‘票附件和æ¤å…¥é™„ä»¶) if (result.host["so_implant_file"] && result.host["so_implant_file"].length) { var invoice_attachment_ = [] // æ¤å…¥å‘票附件 var comeback_attachment_name_ = [] // æ¤å…¥é™„ä»¶ result.host["so_implant_file"].map(f=>{ if (f.sender_field_file_name == "invoice_attachment") { var f_ = f; // var f_ = { // id: f.id, // file_name: f.file_name // } invoice_attachment_.push(f_); } if (f.sender_field_file_name == "implant_attachment") { var f_ = f; comeback_attachment_name_.push(f_); } }) me.invoice_attachment_list = invoice_attachment_; me.implant_attachment_list = comeback_attachment_name_; me.$set(me.formDataImplant, "implant_attachment", comeback_attachment_name_); } // æ¤å…¥å•çš„å‘ç¥¨ä¿¡æ¯æ•°æ® if (result.host[me.table_dataname_invoice] && result.host[me.table_dataname_invoice].length) { me.tableData_invoice = clone(result.host[me.table_dataname_invoice]); } // æ¤å…¥å•å‡è¯è¡¨æ ¼æ•°æ® if (result.host[me.table_dataname_pzd] && result.host[me.table_dataname_pzd].length) { me.tableData_pzd = result.host[me.table_dataname_pzd]; } // æ¤å…¥å•æ˜Žç»†è¡¨æ ¼æ•°æ® if (result.host[me.table_dataname] && result.host[me.table_dataname].length) { me.tableData = clone(result.host[me.table_dataname]); } //å—æ®µæ•°ç»„è½¬å—æ®µobj,目的为了ç›é€‰æ—¶èŽ·å–å—æ®µå±žæ€§ me.fieldsToFieldsObj(); //è®¾ç½®å—æ®µäº‹ä»¶ me.tableFieldClick(); // 是å¦éœ€è¦å¼¹å‡ºæ¤å…¥å•选择窗 if((me.popupParames.sceneCode == "add" || me.popupParames.sceneCode == "addwhole") && !me.implantid) { me.openImplantedList(); } }) }, tableFieldClick() { var me = this; //表å•å—æ®µäº‹ä»¶è®¾ç½® this.formfieldClick = { //待确认撤销å•附件嗿®µ // implant_attachment: { // buttonarray: { // onclick: function(obj) { // var filenamefield = obj.obj.field; // var fileidfield = "implant_attachment"; // if(obj.buttonobj && obj.buttonobj.code == "showfilebyfile"){ // me.showFileImgByFileId(obj.buttonobj.fileobj); // }else if (obj.buttonobj && obj.buttonobj.code == "uploadlist"){ // me.onPopupByUploadFile(filenamefield, fileidfield, me.formData, me.dataname); // }else if (obj.buttonobj && obj.buttonobj.code == "delfilebyfile"){ // me.deleteByFileId(filenamefield, obj.buttonobj.fileobj, me.formData); // } // } // } // }, //æ’¤é”€åŽŸå› å—æ®µ type_code: { select: { onchange: function(obj) { console.log(obj); if(obj.data.type_code == "alter_others") { var formFields_ = clone(me.formFields); formFields_.map(f => { if(f.field == 'remark') { f.required = true; } }) me.formFields = clone(formFields_); } else { var formFields_ = clone(me.formFields); formFields_.map(f => { if(f.field == 'remark') { f.required = false; } }) me.formFields = clone(formFields_); } obj.data.type_name = obj.selectoption.value // 没有选择调整类型时,ä¸å¯ç¼–辑æ¤å…¥å•æ•°æ® var formAttrImplant_ = clone(me.formAttrImplant); formAttrImplant_.disabled = false; me.formAttrImplant = clone(formAttrImplant_); me.isedit_pzd = true; me.tablebuttonClick(); me.is_refresh_pzd = false; me.isRefresh = false; me.$nextTick(() => { me.is_refresh_pzd = true; me.isRefresh = true; }); } } } }; //æ¤å…¥å•表å•å—æ®µäº‹ä»¶è®¾ç½® this.formfieldImplantClick = { invoice_attachment: { // å‘票附件(å•附件) buttonarray: { onclick: function(obj) { var filenamefield = obj.obj.field; var fileidfield = "invoice_attachment_id"; if(obj.buttonobj && obj.buttonobj.code == "showfile"){ me.showFileImgByFileId(me.invoice_attachment_list[0], obj); }else if (obj.buttonobj && obj.buttonobj.code == "upload"){ me.onPopupByUploadFile(filenamefield, fileidfield, me.dataname); }else if (obj.buttonobj && obj.buttonobj.code == "delfile"){ Root.confirm('ç¡®å®šåˆ é™¤å‘票ã€' + me.invoice_attachment_list[0].file_name + '】å—?', 'åˆ é™¤æç¤º', { confirmButtonText: 'åˆ é™¤', cancelButtonText: 'å–æ¶ˆ', type: 'warning' }).then(() => { var formDataImplant_ = clone(me.formDataImplant); formDataImplant_.invoice_attachment = ""; formDataImplant_.invoice_attachment_id = ""; formDataImplant_.implant_evidence_source = ""; me.formDataImplant = clone(formDataImplant_); me.emptyProof(); Root.message({ type: 'success', message: 'åˆ é™¤æˆåŠŸ!' }); }).catch(() => { Root.message({ type: 'info', message: '已喿¶ˆåˆ 除' }); }); } } } }, implant_attachment: { // 相关附件(多附件) buttonarray: { onclick: function(obj) { var filenamefield = obj.obj.field; var fileidfield = ""; if(obj.buttonobj && obj.buttonobj.code == "showfilebyfile"){ // me.showFileImgByFileId_n(filenamefield, obj.buttonobj.fileobj, obj.formdata); me.showFileImgByFileId(obj.buttonobj.fileobj, obj.formdata); }else if (obj.buttonobj && obj.buttonobj.code == "uploadlist"){ me.onPopupByUploadFile_n(filenamefield, fileidfield, "so_implant", obj.formdata); }else if (obj.buttonobj && obj.buttonobj.code == "delfilebyfile"){ Root.confirm('ç¡®å®šåˆ é™¤é™„ä»¶ã€' + obj.buttonobj.fileobj.file_name + '】å—?', 'åˆ é™¤æç¤º', { confirmButtonText: 'åˆ é™¤', cancelButtonText: 'å–æ¶ˆ', type: 'warning' }).then(() => { me.formDataImplant.implant_attachment.remove(obj.buttonobj.fileobj); var comeback_attachment_name_ = clone(me.formDataImplant.implant_attachment); me.implant_attachment_list = comeback_attachment_name_; me.$set(me.formDataImplant, "implant_attachment", comeback_attachment_name_); Root.message({ type: 'success', message: 'åˆ é™¤æˆåŠŸ!' }); }).catch(() => { Root.message({ type: 'info', message: '已喿¶ˆåˆ 除' }); }); // me.deleteByFileId_n(filenamefield, obj.buttonobj.fileobj, obj.formdata); } }, } }, implant_date: {//æ¤å…¥æ—¥æœŸ val: { onchange: function(obj) {//æ¤å…¥æ—¥æœŸè¦æ—©äºŽä¸ŠæŠ¥æ—¥æœŸ var year_ = new Date().getFullYear(); if (obj.data.implant_date) {//obj.data.doc_date && if (new Date(obj.data.implant_date) > new Date()) {//obj.data.doc_date Root.message({ type: 'warning', message: 'æ¤å…¥æ—¥æœŸä¸èƒ½æ™šäºŽå½“剿—¥æœŸ' }); obj.data.implant_date = null; } else if (new Date(obj.data.implant_date) < new Date(year_ + "-01-01 00:00:00")) { Root.message({ type: 'warning', message: 'æ¤å…¥æ—¥æœŸä¸èƒ½è·¨å¹´ä¸ŠæŠ¥' }); obj.data.implant_date = null; } } if (obj.data.invoice_date && obj.data.implant_date) { if (new Date(obj.data.implant_date) > new Date(obj.data.invoice_date)) { Root.message({ type: 'warning', message: 'æ¤å…¥æ—¥æœŸä¸èƒ½æ™šäºŽå‘票日期' }); obj.data.implant_date = null; } } } } }, invoice_date: {//å‘票日期 val: { onchange: function(obj) { console.log(me.tableData); if (obj.data.invoice_date ) {//&& obj.data.doc_date if (new Date(obj.data.invoice_date) > new Date()) {//obj.data.doc_date Root.message({ type: 'warning', message: 'å‘票日期ä¸èƒ½æ™šäºŽä¸ŠæŠ¥æ—¥æœŸ' }); obj.data.invoice_date = null; return; } } for(const i of me.tableData){ if(i.implant_date){ if (new Date(i.implant_date) > new Date(obj.data.invoice_date)) { Root.message({ type: 'warning', message: 'å‘票日期ä¸èƒ½æ—©äºŽæ˜Žç»†æ¤å…¥æ—¥æœŸ(' + i.implant_date + ')', }); obj.data.invoice_date = null; return; } } } } } }, hospital_name:{ popup: { onclick: function(obj) {//弹窗点击事件 //打开 me.openChannelHospital(function(popupobj){ let formData_ = clone(me.formDataImplant); if (formData_.customer_id != popupobj.row.account_id) { // ç»é”€å•†æ”¹å˜ï¼Œæ¸…空æ¤å…¥æ˜Žç»† var tableData_ = clone(me.tableData); tableData_.map(r=>{ r.qty = 0; }) me.tableData = clone(tableData_); } formData_.bu_id = popupobj.row.bu_id; formData_.bu_name = popupobj.row.bu_name; formData_.company_id = popupobj.row.company_id; formData_.company_name = popupobj.row.company_name; formData_.customer_id = popupobj.row.account_id; formData_.org_id = popupobj.row.org_id; formData_.customer_code = popupobj.row.md_org__code; formData_.customer_name = popupobj.row.md_org__name; formData_.hospital_id = popupobj.row.hospital_id; formData_.hospital_code = popupobj.row.md_hospital__code; formData_.hospital_name = popupobj.row.md_hospital__name; // æ¤å…¥å‡è¯ç±»åž‹å¦‚果是å‘票æäº¤æ—¶å¿…é¡»è¦æœ‰å‘票å·ã€‚// invoice å‘票/deliver å‡ºåº“å• formData_.implant_evidence_code = popupobj.row.implant_evidence_code ? popupobj.row.implant_evidence_code : "invoice"; var formFields_ = clone(me.formFieldsImplant); var tablebuttonclick_pzd_ = clone(me.tablebuttonclick_pzd); me.is_refresh_pzd = false; if (formData_.implant_evidence_code == "deliver") { // å‘ç¥¨å• formData_.invoice_no = "" formFields_.map(f=>{ if (f.field == "invoice_no" || f.field == "invoice_attachment") { f.isshow = "F" } if (f.field == "implant_attachment") { f.required = true } }) tablebuttonclick_pzd_.map(b=>{ me.isedit_pzd = false; if (b.code == "check") { b.isbuttonshow = false } }) } else { formFields_.map(f=>{ if (f.field == "invoice_no" || f.field == "invoice_attachment") { f.isshow = "T" } if (f.field == "implant_attachment") { f.required = false } }) tablebuttonclick_pzd_.map(b=>{ this.isedit_pzd = true; if (b.code == "check") { b.isbuttonshow = true } }) } me.formDataImplant = clone(formData_); me.formFieldsImplant = clone(formFields_); me.tablebuttonclick_pzd = clone(tablebuttonclick_pzd_); me.$nextTick(() => { me.is_refresh_pzd = true; }); }) } }, }, }; //è¡¨æ ¼å—æ®µäº‹ä»¶è®¾ç½® this.tablefieldClick = { implant_date: {//æ¤å…¥æ—¥æœŸ input: { onchange: function(obj) {//æ¤å…¥æ—¥æœŸè¦æ—©äºŽä¸ŠæŠ¥æ—¥æœŸ if (obj.row.implant_date) {// && me.formDataImplant.doc_date var year_ = new Date().getFullYear(); if (new Date(obj.row.implant_date) > new Date()) {//me.formDataImplant.doc_date Root.message({ type: 'warning', message: 'æ¤å…¥æ—¥æœŸä¸èƒ½æ™šäºŽä¸ŠæŠ¥æ—¥æœŸ' }); obj.row.implant_date = null; } else if (new Date(obj.row.implant_date) < new Date(year_ + "-01-01 00:00:00")) { Root.message({ type: 'warning', message: 'æ¤å…¥æ—¥æœŸä¸èƒ½è·¨å¹´ä¸ŠæŠ¥' }); obj.row.implant_date = null; } } if (obj.row.implant_date && me.formDataImplant.invoice_date) { if (new Date(obj.row.implant_date) > new Date(me.formDataImplant.invoice_date)) { Root.message({ type: 'warning', message: 'æ¤å…¥æ—¥æœŸä¸èƒ½æ™šäºŽå‘票日期' }); obj.row.implant_date = null; } } } } }, material_name: {//å—æ®µäº‹ä»¶è®¾ç½® popup: { onclick: function(obj) {//弹窗点击事件 //打开 me.tablePopupProduct(obj); } }, }, qty: { input: { onchange: function(obj) {//输入更改事件 if (obj.row.qty * 1 > obj.row.available_stock * 1) { Root.message({ type: 'warning', message: "库å˜é‡ä¸è¶³" }); obj.row.qty = 0 } me.sumqty(); } }, }, }; }, tablebuttonClick() { var me = this; var tablebuttonClick = []; var tablebuttonclick_pzd = []; tablebuttonClick = [ { // name: "新增", // type: "primary", // icon: "el-icon-edit", isbuttonshow: this.isalteredit && this.isedit_pzd, code: "add", isselected: false, classname: "", onclick: function(obj) { // popup_position // èŽ·å–æŽˆæƒäº§å“ if (!me.formDataImplant.bu_id) { Root.message({ type: 'warning', message: '请先选择BU' }); return; } else { me.openBookDetail("add", function(popupobj){ var list_h = clone(popupobj.list); //è´ç‰©è½¦è¿”回一个数组 var tableData_ = clone(me.tableData); list_h.map(row=>{ var table_row = { warehouse_id: row.warehouse_id, warehouse_code: row.warehouse_code, warehouse_name: row.warehouse_name, product_id: row.product_id, product_code: row.product_code, product_name: row.product_name, spec: row.spec, qty: row.qty_available, old_qty: 0, batch_no: row.batch_no, batch_sn: row.batch_sn, valid_from: row.valid_from, valid_to: row.valid_to, }; tableData_.unshift(table_row) }) me.tableData = clone(tableData_); }); } } }, { // name: "åˆ é™¤", , // icon: "el-icon-edit", isbuttonshow: this.isalteredit && this.isedit_pzd, type: "danger", code: "delete", isselected: true, classname: "", disabled: function(selectRowList) { var bo_ = true; if (selectRowList[0]) { bo_ = false; } return bo_ }, onclick: function(obj) { var row = obj.selectedList[0]; var txt = clone(row.warehouse_name) + clone(row.product_name); me.deleteDataById(row.id, me.table_dataname, "ã€" + txt + "】", function(){ if (row.old_qty * 1) { var tableData_ = clone(me.tableData); tableData_[obj.selectRowIndex].qty = 0; me.tableData = clone(tableData_); } else { me.tableData.splice(obj.selectRowIndex, 1); } }) } }, ] tablebuttonclick_pzd = [ { name: "手动å‘票查询", type: "primary", icon: "el-icon-search", isbuttonshow: this.isedit_pzd && this.formDataImplant.implant_evidence_code != "deliver", code: "check", isselected: false, classname: "", onclick: function(obj) { if (me.formDataImplant.invoice_attachment) { me.reCheckInvoiceConfirm(); } else { Root.message({ type: 'warning', message: 'è¯·å…ˆä¸Šä¼ å‘票附件' }); } } }, { // name: "新增", // type: "primary", // icon: "el-icon-edit", isbuttonshow: this.isedit_pzd, code: "add", isselected: false, classname: "", onclick: function(obj) { // èŽ·å–æŽˆæƒäº§å“ if (!me.formDataImplant.bu_id) { Root.message({ type: 'warning', message: '请先选择BU' }); return; } else { me.openProductList("add", "", function(popupobj){ // qtyä¹°èµ , amt折扣 // me.getProductPrice(); var list_h = clone(popupobj.list); //è´ç‰©è½¦è¿”回一个数组 var tableData_ = clone(me.tableData_pzd); list_h.map(h=>{ var h_ = { parent_id: me.formDataImplant.id, implant_id: me.formDataImplant.id, name: h.product_name, spec: h.spec || "", qty: 1, price: null, } tableData_.unshift(h_) }) me.tableData_pzd = clone(tableData_); }); } } }, { // name: "åˆ é™¤", , // icon: "el-icon-edit", isbuttonshow: this.isedit_pzd, type: "danger", code: "delete", isselected: true, classname: "", disabled: function(selectRowList) { var bo_ = true; if (selectRowList[0]) { bo_ = false; } return bo_ }, onclick: function(obj) { var row = obj.selectedList[0]; var txt = clone(row.name); if (row.price) { txt = clone(row.name) + clone(row.price); } me.deleteDataById(row.id, me.table_dataname_pzd, "ã€" + txt + "】", function(){ me.tableData_pzd.splice(obj.selectRowIndex, 1); }) } }, ] this.tablebuttonclick = tablebuttonClick; this.tablebuttonclick_pzd = clone(tablebuttonclick_pzd); }, openProductList(sceneCode, dataname, callback) { var me = this; var data_ = {}; var text_ = "产å“"; var config = { totab: false, //true: 以Tabå¯¼èˆªçš„æ–¹å¼æ‰“å¼€ width: "500px", height: "520px", icon: "icon-product", text: text_ + "选择", id: "popup_rebatedetail",//totab: trueæ—¶éœ€è®¾ç½®ï¼Œç”¨äºŽåˆ¤æ–æ˜¯å¦å·²æ‰“å¼€æ¤é¡µé¢ // url: "module/performance/page/popup/page/popup_rebatedetail.html", url: "module/md/page/popup/page/popup_product.html", dataname: "", data: data_, delta: {}, // filter: "EXISTS ( SELECT * FROM md_bu_product where md_prod_sku.product_id = product_id and bu_id='" + me.formData.bu_id + "')", filter: "bu_id='" + me.formDataImplant.bu_id + "'", sceneCode: sceneCode,//"refuseedit",//"approval", //"add"//"browse", callback: function(popupobj, popupcallback) { callback(popupobj) if (popupcallback) { popupcallback(); } } }; me.doPopupByPublic(config); }, // 清空å‡è¯ emptyProof() { var me = this; // å‘票附件 // me.invoice_attachment_list = []; var formDataImplant_ = clone(me.formDataImplant); formDataImplant_.invoice_date = ""; formDataImplant_.invoice_no = ""; // formDataImplant_.invoice_attachment = ""; // formDataImplant_.invoice_attachment_id = ""; // formDataImplant_.implant_evidence_source = ""; me.formDataImplant = clone(formDataImplant_); // å‘票头 var formData_pz_ = { id: me.formDataImplant.id, implant_id: me.formDataImplant.id, code: "", // å‘票代ç number: "", // å‘票å·ç machine_no: "", check_code: "", invoice_date: "", invoice_status: "", // 是å¦ä½œåºŸï¼ˆçº¢å†²ï¼‰\r\nY:已作废,N:未作废,H:红冲,HP:部分红冲,HF:全é¢çº¢å†² remark: "å‘票" } var tableData_invoice_ = []; tableData_invoice_.push(formData_pz_); me.tableData_invoice = clone(tableData_invoice_); // å‘票明细 me.tableData_pzd = []; me.tablePZRefresh() }, // 刷新å‡è¯ tablePZRefresh(){ var me = this; if (me.formDataImplant.implant_evidence_source) { var tableAttr_pzd_ = clone(me.tableAttr_pzd); tableAttr_pzd_.tag.name = me.formDataImplant.implant_evidence_source me.tableAttr_pzd = clone(tableAttr_pzd_); } me.is_refresh_pzd = false; me.$nextTick(() => { me.is_refresh_pzd = true; }); }, refreshProof(obj) { var me = this; var tableData_pzd_ = []; // åˆ é™¤åŽŸå‘票信æ¯ï¼ˆå«å‘票头,å‘票明细)this.formData_pz // 记录新å‘ç¥¨å¤´ä¿¡æ¯ // æ—¥æœŸè½¬æ¢ var year = obj.invoice_date.substring(0, 4); var month = obj.invoice_date.substring(4, 6); var day = obj.invoice_date.substring(6, 8); var invoiceDate_ = year + "-" + month + "-" + day; var formData_pz_ = { id: me.formDataImplant.id, implant_id: me.formDataImplant.id, code: obj.code ? obj.code : "", // å‘票代ç number: obj.number ? obj.number : "", // å‘票å·ç machine_no: obj.machine_no ? obj.machine_no : "", check_code: obj.check_code ? obj.check_code : "", invoice_date: invoiceDate_, invoice_status: obj.invoice_status, // 是å¦ä½œåºŸï¼ˆçº¢å†²ï¼‰\r\nY:已作废,N:未作废,H:红冲,HP:部分红冲,HF:全é¢çº¢å†² remark: "å‘票" } var tableData_invoice_ = []; tableData_invoice_.push(formData_pz_); this.tableData_invoice = clone(tableData_invoice_); var formData_ = clone(this.formDataImplant); formData_.invoice_date = formData_pz_.invoice_date formData_.invoice_no = formData_pz_.number this.formDataImplant = clone(formData_); this.tableData_pzd = []; // 记录新å‘ç¥¨æ˜Žç»†ä¿¡æ¯ this.tableData_pzd if (obj.invoicedetaillist && obj.invoicedetaillist.length) { me.sum_detail_pz(obj, obj.invoicedetaillist, function(list){ list.map(invoice_row=>{ var r_ = { parent_id: me.formDataImplant.id, implant_id: me.formDataImplant.id, name: invoice_row.name, // spec: invoice_row.spec, qty: invoice_row.qty, price: invoice_row.price, // tax_rate: invoice_row.taxRate, // amt_tax: invoice_row.taxAmount, } tableData_pzd_.push(r_) }) me.tableData_pzd = clone(tableData_pzd_); }) } }, // å‡è¯æ˜Žç»†æ±‡æ€» sum_detail_pz(invoice, list, callback) { var list_group = []; var list_group_obj = {}; list.map(r=>{ var price_ = ((r.amt_before_tax * 1) + (r.amt_tax * 1)) / (r.qty * 1); var price = price_.toFixed(2); var id_ = r.name + price if (!list_group_obj[id_]) { list_group_obj[id_] = { name: r.name, price: price, qty: 0 } } list_group_obj[id_].qty += (r.qty * 1) }) for (var k in list_group_obj) { var r_ = list_group_obj[k]; list_group.push(r_); } callback(list_group) }, //æ¤å…¥ä¸ŠæŠ¥æ— 真å‘票转人工 reCheckInvoiceConfirm() { var me = this; var config = { totab: false, width: "500px", height:"400px", icon: "icon-product", text: "查验å‘票", id: "checkInvoice" + me.formDataImplant.fileid, url: "module/order/page/popup/implanted_invoice_check.html", data: { fileid: me.formDataImplant.fileid, invoice_date: me.formDataImplant.invoice_date }, delta: {}, sceneCode: "edit", callback: function(obj, callback) { // me.bill_no = obj.realBillNo || ""; // me.saveAfter(); if (me.tableData_pzd.length) { Root.confirm('å·²å˜åœ¨æ¤å…¥å‡è¯ï¼Œç»§ç»åˆ™ä¼šæ›¿æ¢ä¹‹å‰çš„æ¤å…¥å‡è¯', 'æ›¿æ¢æ¤å…¥å‡è¯æç¤º', { confirmButtonText: 'ç»§ç»', cancelButtonText: 'å–æ¶ˆ', type: 'warning' }).then(() => { if (obj.filetxt.is_bill) { var formData_ = clone(me.formDataImplant); formData_.implant_evidence_source = "手动识别" me.formDataImplant = clone(formData_); me.tablePZRefresh(); me.refreshProof(obj.filetxt); } else { // 清空å‡è¯ me.emptyProof(); // 䏿˜¯å‘票但是有å‘ç¥¨å¤´æ•°æ® if (obj.filetxt && obj.filetxt.invoice_date) { var formData_pz_ = { id: me.formDataImplant.id, implant_id: me.formDataImplant.id, code: obj.filetxt.code ? obj.filetxt.code : "", // å‘票代ç number: obj.filetxt.number ? obj.filetxt.number : "", // å‘票å·ç machine_no: obj.filetxt.machine_no ? obj.filetxt.machine_no : "", check_code: obj.filetxt.check_code ? obj.filetxt.check_code : "", invoice_date: obj.filetxt.invoice_date ? obj.filetxt.invoice_date : "", invoice_status: obj.filetxt.invoice_status, // 是å¦ä½œåºŸï¼ˆçº¢å†²ï¼‰\r\nY:已作废,N:未作废,H:红冲,HP:部分红冲,HF:全é¢çº¢å†² remark: "å‘票" } var tableData_invoice_ = []; tableData_invoice_.push(formData_pz_); me.tableData_invoice = clone(tableData_invoice_); var formData_ = clone(me.formDataImplant); formData_.implant_evidence_source = "手动录入" formData_.invoice_date = formData_pz_.invoice_date; formData_.invoice_no = formData_pz_.number; me.formDataImplant = clone(formData_); me.tablePZRefresh(); } } }).catch(() => { }); } else { if (obj.filetxt.is_bill) { var formData_ = clone(me.formDataImplant); formData_.implant_evidence_source = "手动识别" me.formDataImplant = clone(formData_); me.tablePZRefresh(); me.refreshProof(obj.filetxt); } else { // 清空å‡è¯ me.emptyProof(); // 䏿˜¯å‘票但是有å‘ç¥¨å¤´æ•°æ® if (obj.filetxt && obj.filetxt.invoice_date) { /* var formData_pz_ = { id: me.formData.id, implant_id: me.formData.id, code: obj.filetxt.invoiceCode, // å‘票代ç number: obj.filetxt.invoiceNo, // å‘票å·ç machine_no: obj.filetxt.machineNo, check_code: obj.filetxt.checkCode, invoice_date: obj.filetxt.invoiceDate, invoice_status: obj.filetxt.cancelMark, // 是å¦ä½œåºŸï¼ˆçº¢å†²ï¼‰\r\nY:已作废,N:未作废,H:红冲,HP:部分红冲,HF:全é¢çº¢å†² remark: "å‘票" } */ var formData_pz_ = { id: me.formDataImplant.id, implant_id: me.formDataImplant.id, code: obj.filetxt.code ? obj.filetxt.code : "", // å‘票代ç number: obj.filetxt.number ? obj.filetxt.number : "", // å‘票å·ç machine_no: obj.filetxt.machine_no ? obj.filetxt.machine_no : "", check_code: obj.filetxt.check_code ? obj.filetxt.check_code : "", invoice_date: obj.filetxt.invoice_date ? obj.filetxt.invoice_date : "", invoice_status: obj.filetxt.invoice_status, // 是å¦ä½œåºŸï¼ˆçº¢å†²ï¼‰\r\nY:已作废,N:未作废,H:红冲,HP:部分红冲,HF:全é¢çº¢å†² remark: "å‘票" } var tableData_invoice_ = []; tableData_invoice_.push(formData_pz_); me.tableData_invoice = clone(tableData_invoice_); var formData_ = clone(me.formDataImplant); formData_.implant_evidence_source = "手动录入" formData_.invoice_date = formData_pz_.invoice_date; formData_.invoice_no = formData_pz_.number; me.formDataImplant = clone(formData_); me.tablePZRefresh(); } } } if (callback) { callback(); } } }; me.doPopupByPublic(config); }, sumqty() { var qty_total_ = 0; this.tableData.map(row=>{ qty_total_ += row.qty * 1; }) this.$set(this.formDataImplant, "qty_total", qty_total_) }, tablePopupProduct(obj){ var me = this; var delta_ = {}; //排除已选物料 //éœ€æ·»åŠ ä»“åº“ä¿¡æ¯ me.tableData.map(row=>{ if (row.batch_sn) { var key_ = row.product_code + "_" + row.batch_no + "_" + row.batch_sn delta_[key_] = true } else if (row.product_code) { var key_ = row.product_code + "_" + row.batch_no delta_[key_] = true } }) let index = obj.$index; Root.showPopup({ url: "module/order/page/popup/wm_book_detail.html", width: 800, height: 550, // data: this.oldObj, sceneCode: "add", filter: "org_id='" + me.formData.customer_id + "' and order_right_code='" + me.formData.implant_type + "'", // dataname: "customer", delta: delta_, callback: function(obj, callback) { me.$set(me.tableData[index], "warehouse_id", obj.row.warehouse_id); me.$set(me.tableData[index], "warehouse_code", obj.row.warehouse_code); me.$set(me.tableData[index], "warehouse_name", obj.row.warehouse_name); me.$set(me.tableData[index], "order_right_code", obj.row.order_right_code); me.$set(me.tableData[index], "stock_type_code", obj.row.stock_type_code); me.$set(me.tableData[index], "product_id", obj.row.product_id); me.$set(me.tableData[index], "product_code", obj.row.product_code); me.$set(me.tableData[index], "product_name", obj.row.product_name); me.$set(me.tableData[index], "product_category", obj.row.category_name); me.$set(me.tableData[index], "spec", obj.row.spec); // me.$set(me.tableData[index], "material_name", obj.row.authorize_category_name); me.$set(me.tableData[index], "material_name", obj.row.material_name); me.$set(me.tableData[index], "material_code", obj.row.material_code); me.$set(me.tableData[index], "product_line", obj.row.product_line || ""); me.$set(me.tableData[index], "batch_no", obj.row.batch_no); me.$set(me.tableData[index], "batch_sn", obj.row.batch_sn); me.$set(me.tableData[index], "valid_from", obj.row.valid_from); me.$set(me.tableData[index], "valid_to", obj.row.valid_to); me.$set(me.tableData[index], "available_stock", obj.row.qty_available);//å¯ç”¨é‡ if(obj.row.batch_sn && obj.row.batch_sn != "") { me.$set(me.tableData[index], "qty", 1); } else { me.$set(me.tableData[index], "qty", 0); } if (callback) { callback(); } } }); }, openChannelHospital(callback) { var me = this; var filter_ = "md_org_account_hospital.category_code='Dealer'"; // if (!this.iscustomer) { // 䏿˜¯å®¢å•†è´¦å· // // filter_ += " and md_channel_structure.account_id is not null and md_channel_structure.position_id='"+window.top.vue.userinfo.currentactor.target_id+"'" // filter_ += " and md_org_account_hospital.account_id is not null" // } filter_ += " and md_org_account_hospital.account_id='"+me.formDataImplant.customer_id+"'" var config = { totab: false, //true: 以Tabå¯¼èˆªçš„æ–¹å¼æ‰“å¼€ width: "900px", height: "500px", icon: "icon-product", text: "æ¸ é“医院列表", id: "popup_channelHospital"+"add",//totab: trueæ—¶éœ€è®¾ç½®ï¼Œç”¨äºŽåˆ¤æ–æ˜¯å¦å·²æ‰“å¼€æ¤é¡µé¢ url: "module/md/page/popup/page/popup_channelHospital.html", data: {}, delta: {}, filter: filter_,//this.formData.account_id ? "account_id='" + this.formData.account_id + "'" : "", sceneCode: "add",//"refuseedit",//"approval", //"add"//"browse", callback: function(popupobj, popupcallback) { callback(popupobj); if (popupcallback) { popupcallback(); } } }; me.doPopupByPublic(config); }, openImplantedList() { var me = this; var filter_ = "state_code = 'Open' and (ifnull(is_frozen, '') <> 'T')"; // if(me.iscustomer) { // filter_ += "and customer_id = '" + window.top.vue.userinfo.org.id + "'"; // } var config = { totab: false, //true: 以Tabå¯¼èˆªçš„æ–¹å¼æ‰“å¼€ width: "1000px", height: "650px", icon: "icon-product", filter: filter_, text: "å¯è°ƒæ•´æ’¤é”€çš„æ¤å…¥å•列表", id: "popup-implantedReportList" + "add",//totab: trueæ—¶éœ€è®¾ç½®ï¼Œç”¨äºŽåˆ¤æ–æ˜¯å¦å·²æ‰“å¼€æ¤é¡µé¢ url: "module/order/page/popup-implantedReportList.html", // data: , delta: { // detailCancelDate: me.detailCancelDate, }, sceneCode: "add", //"refuseedit",//"approval", //"add"//"browse", closecallback: function() { me.closeDialog(); }, callback: function(obj, callback) { me.loadImplantData(obj); if (callback) { callback(); } } }; me.doPopupByPublic(config); }, // 首次创建撤销å•çš„æ¤å…¥å•æ•°æ® loadImplantData(obj) { var me = this; if(obj[me.datanameImplanted]) { var formDataImplant_ = clone(obj[me.datanameImplanted]); // æ¤å…¥å•附件的赋值(å«å‘票附件和æ¤å…¥é™„ä»¶) if (obj["so_implant_file"] && obj["so_implant_file"].length) { var invoice_attachment_ = [] // æ¤å…¥å‘票附件 var comeback_attachment_name_ = [] // æ¤å…¥é™„ä»¶ obj["so_implant_file"].map(f=>{ // 需è¦åŽ»æŽ‰â€œD:/repository/†var url_prefix = "D:/repository/"; // ç”Ÿäº§çŽ¯å¢ƒæ–‡ä»¶åœ°å€ var url_prefix_test = "D:/repository_test/"; // æµ‹è¯•çŽ¯å¢ƒæ–‡ä»¶åœ°å€ if (f.file_path.indexOf(url_prefix) == 0) { f.file_path = f.file_path.substring(url_prefix.length); } else if (f.file_path.indexOf(url_prefix_test) == 0) { f.file_path = f.file_path.substring(url_prefix_test.length); } var f_ = f; if (f.sender_field_file_name == "invoice_attachment") { invoice_attachment_.push(f_); } else if (f.sender_field_file_name == "implant_attachment") { comeback_attachment_name_.push(f_); } }) me.invoice_attachment_list = invoice_attachment_; me.implant_attachment_list = comeback_attachment_name_; formDataImplant_.implant_attachment = comeback_attachment_name_; // me.$set(me.formData, "implant_attachment", comeback_attachment_name_); } // æ¤å…¥å•è¡¨å¤´æ•°æ® me.formDataImplant = clone(formDataImplant_); me.formData.host_id = me.formDataImplant.id || ""; me.formData.account_id = me.formDataImplant.customer_id || ""; me.formData.org_code = me.formDataImplant.customer_code || ""; me.formData.org_name = me.formDataImplant.customer_name || ""; me.formData.org_id = me.formDataImplant.org_id || ""; me.formData.implant_code = me.formDataImplant.code || ""; me.formData.bu_name = me.formDataImplant.bu_name || ""; me.formData.company_name = me.formDataImplant.company_name || ""; me.formData.bu_id = me.formDataImplant.bu_id || ""; me.formData.company_id = me.formDataImplant.company_id || ""; } // æ¤å…¥å•çš„å‘ç¥¨ä¿¡æ¯æ•°æ® if(obj[me.table_dataname_invoice]) { me.tableData_invoice = clone(obj[me.table_dataname_invoice]); } // æ¤å…¥å•å‡è¯è¡¨æ ¼æ•°æ® if(obj[me.table_dataname_pzd]) { me.tableData_pzd = clone(obj[me.table_dataname_pzd]); } // æ¤å…¥å•æ˜Žç»†è¡¨æ ¼æ•°æ® if(obj[me.table_dataname]) { var newtableData_ = []; var tableData_ = clone(obj[me.table_dataname]); tableData_.map(r=>{ r.old_qty = r.qty * 1; if (r.old_qty) { newtableData_.push(r); } }); me.tableData = clone(newtableData_); } }, openBookDetail(sceneCode, callback) { var me = this; var data_ = {}; var text_ = "åº“å˜æ˜Žç»†" var config = { totab: false, //true: 以Tabå¯¼èˆªçš„æ–¹å¼æ‰“å¼€ width: "900px", height: "500px", icon: "icon-product", text: text_ + "选择", id: "popup_bookDetail",//totab: trueæ—¶éœ€è®¾ç½®ï¼Œç”¨äºŽåˆ¤æ–æ˜¯å¦å·²æ‰“å¼€æ¤é¡µé¢ url: "module/md/page/popup/page/popup_bookDetail.html", data: data_, delta: {}, // filter: "org_id='"+ me.selectedrow.org_id + "' and bu_id='" + me.selectedrow.bu_id + "'", filter: "qty_available > 0 and wm_book_detail.account_id = '" + me.formDataImplant.customer_id + "'", sceneCode: sceneCode,//"refuseedit",//"approval", //"add"//"browse", callback: function(popupobj, popupcallback) { callback(popupobj) if (popupcallback) { popupcallback(); } } }; me.doPopupByPublic(config); }, deleteDataById(id, dataname, confirm_txt, callback){ var me = this; Root.confirm('ç¡®å®šåˆ é™¤è¯¥äº§å“' + confirm_txt + 'å—?', 'åˆ é™¤æç¤º', { confirmButtonText: 'åˆ é™¤', cancelButtonText: 'å–æ¶ˆ', type: 'warning' }).then(() => { callback(); }).catch(() => { Root.message({ type: 'info', message: '已喿¶ˆåˆ 除' }); }); }, //æäº¤ submitRowTable() { var me = this; var bo_ = true; var isNotNull = true; var bo = me.$refs.form1.checkForm(); if(!bo) { me.iscommit = false; Root.message({ type: 'warning', message: '请填写调整å•必填项' }); return; } var bo2 = me.$refs.form2.checkForm(); if(!bo2) { me.iscommit = false; Root.message({ type: 'warning', message: '请填写调整æ¤å…¥å¿…填项' }); return; } if (me.tableData.length == 0) { isNotNull = false; me.iscommit = true; Root.message({ type: 'warning', message: 'è¯·å…ˆæ·»åŠ æ˜Žç»†æ•°æ®' }); return; } me.tableData.map(r=>{ if ((!r.qty || r.qty == 0) && !r.old_qty) { isNotNull = false; } if (!r.implant_date || r.implant_date == "") { _bo = false; } }) if(!isNotNull){ me.iscommit = false; Root.message({ type: 'error', message: '明细ä¸å˜åœ¨æ•°é‡ä¸ºç©ºæˆ–为0的数æ®' }); return; } this.saveRowTable(function() { me.iscommit = true; me.saveRowTable(); }); }, sumQTY_pzd() { var qty_total_ = 0 this.tableData_pzd.map(r=>{ if (r.qty) { qty_total_ += (r.qty * 1) } }) this.tableData_invoice[0].qty_total = qty_total_; }, saveRowTable(callback) { // åˆ¤æ–æ˜¯å¦å…许ä¿å˜ var me = this; let param_ = { dataname: "so_implant_cancel", filter: "host_id='"+ this.formData.host_id +"' and id != '"+ this.formData.id +"' and state_code in ('Input', 'ClosingApproval', 'ChangingApproval')", } Server.call("root/data/getEntitySet", param_, function(result) { if (result && result.data && result.data.entityset && result.data.entityset.length) { var isApproval_ = false; var approval_code_ = ""; var isInput_ = false; var input_code_ = ""; var input_list_ = [] result.data.entityset.map(r=>{ if (r.state_code == "ClosingApproval" || r.state_code == "ChangingApproval") { isApproval_ = true; approval_code_ += "ã€"+r.code+"】" } if (r.state_code == "Input") { isInput_ = true; input_code_ += "ã€"+r.code+"】" input_list_.push(r); } }) // å˜åœ¨å®¡æ‰¹ä¸çš„ä¸èƒ½ä¿å˜ if (isApproval_) { Root.message({ type: 'error', message: '该æ¤å…¥å•å·²å˜åœ¨å®¡æ‰¹ä¸çš„æ’¤é”€è°ƒæ•´å•'+approval_code_+',ä¸èƒ½å†æ¬¡è°ƒæ•´' }); me.iscommit = false return } // å˜åœ¨å½•入或退回的,需è¦ä½œåºŸåŽæ‰èƒ½ä¿å˜ if (isInput_) { Root.confirm('该æ¤å…¥å•å·²å˜åœ¨æ’¤é”€è°ƒæ•´å•'+input_code_+'ç»§ç»å°†ä½œåºŸå…¶ä»–è°ƒæ•´å•æ®, 是å¦ç»§ç»ï¼Ÿ', 'æç¤º', { confirmButtonText: 'ç»§ç»', cancelButtonText: 'å–æ¶ˆ', type: 'warning' }).then(() => { me.iscommit = false var ids_ = me.toinstring(input_list_); me.doSubmitAssign("so_implant_cancel", ids_, function() { me.doSaveRowTable(callback); }); }).catch(() => { me.iscommit = false Root.message({ type: 'info', message: '已喿¶ˆ' }); }); } } else { me.doSaveRowTable(callback); } }); }, toinstring(list) { var ids_ = ""; list.map(sa=>{ if (!ids_) { ids_ = "('" + sa.id; } else { ids_ += "','" + sa.id; } }); ids_ += "')" return ids_; }, doSubmitAssign(dataname, ids, callback) { var me = this; var params = { dataname: dataname, data: {}, filter: dataname + ".id in " + ids, } params.data[dataname] = { state_code: "Close", state_name: "作废" } Server.call("root/data/alterEntity", params, function(result) { if (callback) { callback() } }) }, //ä¿å˜ doSaveRowTable(callback) { var me = this; me.loading_save = true; var operator_ = "saveEntity";//ä¿å˜ if(me.iscommit) { operator_ = "toClose";// æ•´å•æ’¤é”€æäº¤ if (me.isalteredit) { operator_ = "toChange";// æ¤å…¥è°ƒæ•´æäº¤ } me.loading_save = false; } //撤销å•è¡¨å¤´æ•°æ® var entity_ = clone(this.formData); var entity = {}; for (var r in entity_) { if (entity_[r] && r != "implant_attachment") { entity[r] = entity_[r]; } } //æ¤å…¥å•è¡¨å¤´æ•°æ® var entityImplant = {}; //æ¤å…¥å•è¡¨æ ¼æ•°æ® var tableData_ = []; var qty_total = 0; var isnull_qty = false; if (this.isalteredit) { var entity_implant = clone(this.formDataImplant); for (var r in entity_implant) { if (entity_implant[r]) { entityImplant[r] = entity_implant[r]; } } this.tableData.map(r=>{ var row_ = {}; for (var k in r) { if (r[k] || r[k] === false || r[k] == 0) { row_[k] = r[k]; } } if (!row_.qty) { row_.qty = 0 if (!row_.old_qty) { isnull_qty = true; } } row_.diff_qty = row_.qty*1 - row_.old_qty*1; qty_total += (row_.qty*1) tableData_.push(row_); }) entityImplant.qty_total = qty_total; if (tableData_.length == 0) { Root.message({ type: 'warning', message: 'è¯·å…ˆæ·»åŠ æ˜Žç»†æ•°æ®' }); me.iscommit = false me.loading_save = false; return } if (isnull_qty) { Root.message({ type: 'warning', message: '请检查å˜åœ¨æ•°é‡ä¸º0的明细数æ®' }); me.iscommit = false me.loading_save = false; return } if (this.tableData_pzd && this.tableData_pzd.length == 0) { Root.message({ type: 'warning', message: 'è¯·å…ˆæ·»åŠ æ¤å…¥å‡è¯æ•°æ®' }); me.iscommit = false me.loading_save = false; return } else { me.sumQTY_pzd() if ((entityImplant.qty_total * 1) != (this.tableData_invoice[0].qty_total * 1)) { Root.message({ type: 'warning', message: 'æ¤å…¥æ€»æ•°é‡å¿…é¡»ç‰äºŽå‡è¯æ€»æ•°é‡' }); me.iscommit = false me.loading_save = false; return } } if (entityImplant.implant_evidence_code != "deliver" && !entityImplant.invoice_no) { // 䏿˜¯å‡ºåº“å• Root.message({ type: 'warning', message: 'å‘票å·ç ä¸èƒ½ä¸ºç©ºï¼Œå¯æ‰‹åŠ¨æŸ¥è¯¢å‘ç¥¨æ·»åŠ ' }); me.iscommit = false me.loading_save = false; return } } let param = { dataname: this.dataname, data: {}, } if (entity.id) { param.id = entity.id; } // if (entity.host_id) { // param.refer = { // dataname: "so_implant", // id: entity.host_id // } // } param.data[this.dataname] = entity; if (this.isalteredit) { param.host = {}; param.host[me.datanameImplanted] = entityImplant;//需è¦ç‰å¾…确认æ¤å…¥å•部分的datanameï¼› param.host[me.table_dataname] = tableData_; param.host[me.table_dataname_invoice] = this.tableData_invoice; param.host[me.table_dataname_pzd] = this.tableData_pzd; var so_implant_file_ = clone(this.implant_attachment_list); if (this.invoice_attachment_list[0]) { so_implant_file_.push(this.invoice_attachment_list[0]) } param.host["so_implant_file"] = so_implant_file_; } Server.call("root/data/" + operator_, param, function(result) { console.log(result); if (result.success) { if (callback) { callback(); } else if(me.iscommit){ me.iscommit = false; Root.message({ type: 'success', message: 'æäº¤æˆåŠŸ' }); me.saveAfter(); } else { Root.message({ type: 'success', message: 'ä¿å˜æˆåŠŸ' }); me.saveAfter(); } } }, function(errorresult) { if(me.iscommit) { console.log("错误信æ¯", errorresult); me.iscommit = false; if (errorresult.messages && errorresult.messages.count && errorresult.messages.count.error) { if (errorresult.messages.list) { var config = { totab: false, // width: "1200px", // height: 800, icon: "icon-product", text: "错误信æ¯", url: "module/tool/page/popup_error_messages.html", data: { error_attr: "negative_stock", tableFields: [ {isshow: "T",field: "product_name",name: "产å“åç§°", width: "150", isminwidth: true}, {isshow: "T",field: "spec",name: "è§„æ ¼", width: "100", isminwidth: true}, {isshow: "T",field: "batch_no",name: "批å·", width: "100", isminwidth: true}, {isshow: "T",field: "qty_available",name: "å¯ç”¨æ•°é‡", width: "100", isminwidth: true}, ], tableData: errorresult.negative_stock ? errorresult.negative_stock : [] }, delta: errorresult.messages.list, callback: function(obj, callback) { if (callback) { callback(); } } }; me.doPopupByPublic(config); } } else { Root.message({ type: 'error', message: 'æäº¤å¤±è´¥' }); } } else { console.log("错误信æ¯", errorresult); me.loading_save = false; if (errorresult.messages && errorresult.messages.count && errorresult.messages.count.error) { if (errorresult.messages.list) { var config = { totab: false, // width: "1200px", // height: 800, icon: "icon-product", text: "错误信æ¯", url: "module/tool/page/popup_error_messages.html", data: {}, delta: errorresult.messages.list, callback: function(obj, callback) { if (callback) { callback(); } } }; me.doPopupByPublic(config); } } else { Root.message({ type: 'error', message: 'ä¿å˜å¤±è´¥' }); } } me.iscommit = false; me.loading_save = false; }); }, showFileImgByFileId(fieldobj, obj) { let me = this; var file_name = fieldobj.file_name; var file_id = ""; var file_path = fieldobj.file_path; // 需è¦åŽ»æŽ‰â€œD:/repository/†var url_prefix = "D:/repository/"; // ç”Ÿäº§çŽ¯å¢ƒæ–‡ä»¶åœ°å€ var url_prefix_test = "D:/repository_test/"; // æµ‹è¯•çŽ¯å¢ƒæ–‡ä»¶åœ°å€ if (file_path.indexOf(url_prefix) == 0) { file_path = file_path.substring(url_prefix.length); } else if (file_path.indexOf(url_prefix_test) == 0) { file_path = file_path.substring(url_prefix_test.length); } if(file_id || file_path) { var fileid = file_id; var filepath = file_path; let fileName = clone(file_name); let index1 = fileName.lastIndexOf("."); let index2 = fileName.length; let suffix = fileName.substring(index1, index2).toLowerCase(); //åŽç¼€å if (suffix == ".png" || suffix == ".jpg" || suffix == ".jpeg" || suffix == ".pdf") { var row = { fileid: fileid, filename: fileName, // dataname: "so_implant", file_path: filepath, } var config = { totab: false, width: "1200px", height: 800, icon: "icon-product", text: "附件预览", id: "pdf_" + fileid, url: "module/tool/page/popup_file_pdf.html", data: row, delta: {}, callback: function(obj, callback) { if (callback) { callback(); } } }; this.doPopupByPublic(config); } else {//åªå¯ä¸‹è½½ï¼Œä¸å¯é¢„览 // handleDownloadUrl(fileid,false); handleDownload(fileid, this.dataname); } } }, showFileImgByFileId_n(filenamefield, fileobj, objformdata){ let me = this; var formData_ = clone(objformdata); var file_id = fileobj.id var file_name = fileobj.file_name var dataname_ = "so_implant" this.zzimg = {}; this.zzimgList = []; this.file_txt = false; if(file_id) { var fileid = file_id; let fileName = clone(file_name); let index1 = fileName.lastIndexOf("."); let index2 = fileName.length; let suffix = fileName.substring(index1, index2).toLowerCase(); //åŽç¼€å if (suffix == ".png" || suffix == ".jpg" || suffix == ".pdf") { var row = { fileid: fileid, dataname: dataname_, filename: fileName } var config = { totab: false, width: "1200px", height: 800, icon: "icon-product", text: "附件预览", id: "pdf_" + fileid, url: "module/tool/page/popup_file_pdf.html", data: row, delta: {}, callback: function(obj, callback) { if (callback) { callback(); } } }; this.doPopupByPublic(config); } else {//åªå¯ä¸‹è½½ï¼Œä¸å¯é¢„览 // handleDownloadUrl(fileid,false); handleDownload(fileid, dataname_); } } }, onPopupByUploadFile(filenamefield, fileidfield, dataname) { var me = this; var analysistype = "invoiceIdentify"; var formData_ = clone(me.formDataImplant); var sender_id_ = ""; // 业务数æ®id; if (formData_.id) { sender_id_ = formData_.id; } var delta_ = {filetypelist: [".png", ".jpg", ".jpeg",".pdf"], analysistype: analysistype, isUploadAndSave: true}; //, ".pdf" var config = { totab: false, width: "500px", icon: "icon-product", text: "å‘ç¥¨é™„ä»¶ä¸Šä¼ ", id: "popupByUploadFile", url: "module/tool/page/popup_uploadFile.html", data: { dataName: dataname, fileidfieldName: fileidfield, id: sender_id_, fileNamefieldName: filenamefield, apply_type_code: me.formData.type_code, apply_dataname: "so_implant_change" }, delta: delta_, callback: function(obj, callback) { me.$message({ showClose: true, message: 'ä¸Šä¼ æˆåŠŸï¼', type: 'success' }); var f_ = { id: obj.row[0].id, file_name: decodeURI(obj.row[0].name) } // if (!formData_[filenamefield]) { // formData_[filenamefield] = {}; // } var invoice_attachment_list_ = [] invoice_attachment_list_.push(obj.filedbtxt[0]); me.invoice_attachment_list = clone(invoice_attachment_list_); // 如果是å‘票 // 如果附件是å‘票 // is_bill是å¦å‘票,is_realæ˜¯å¦æœ‰æ•ˆå‘票 if (obj.filetxt && obj.filetxt.is_bill) { // 如果已ç»å˜åœ¨å‘ç¥¨ï¼Œéœ€è¦æç¤ºä¼šè¦†ç›–ï¼Œæ˜¯å¦ç»§ç»ï¼Œå–消的è¯ï¼Œéœ€è¦åˆ 除附件 if (me.formDataImplant.invoice_no) { Root.confirm('å·²å˜åœ¨å‘票,继ç»åˆ™ä¼šæ›¿æ¢ä¹‹å‰çš„å‘票', 'å•一å‘票æç¤º', { confirmButtonText: 'ç»§ç»', cancelButtonText: 'å–æ¶ˆ', type: 'warning' }).then(() => { // 如果ä¸å˜åœ¨åˆ™ç›´æŽ¥æ·»åŠ formData_.implant_evidence_source = "OCR识别" formData_[filenamefield] = f_.file_name; formData_[fileidfield] = f_.id; me.formDataImplant = clone(formData_); me.tablePZRefresh(); me.refreshProof(obj.filetxt); }).catch(() => { // if (f_.id) { // let param = { // dataname: "so_implant_file", // id: f_.id // } // Server.call("root/data/deleteEntity", param, function(result) { // console.log(result); // if (result && result.data) { // Root.message({ // type: 'info', // message: '已喿¶ˆå‘票' // }); // } // }); // } }); } else { formData_.implant_evidence_source = "OCR识别" // 如果ä¸å˜åœ¨åˆ™ç›´æŽ¥æ·»åŠ formData_[filenamefield] = f_.file_name; formData_[fileidfield] = f_.id; me.formDataImplant = clone(formData_); me.tablePZRefresh(); me.refreshProof(obj.filetxt); } } else { formData_.implant_evidence_source = "识别失败" formData_[filenamefield] = f_.file_name; formData_[fileidfield] = f_.id; me.formDataImplant = clone(formData_); me.tablePZRefresh(); // 清空å‡è¯ me.emptyProof(); } if (callback) { callback(); } } }; this.doPopupByPublic(config); }, onPopupByUploadFile_n(filenamefield, fileidfield, dataname, objformdata) { var me = this; var analysistype_ = ""; var sender_id_ = ""; // 业务数æ®id; if (objformdata.id) { sender_id_ = objformdata.id; } var delta_ = {filetypelist: [".png", ".jpg",".pdf"]}; //, ".pdf" var config = { totab: false, width: "500px", icon: "icon-product", text: "é™„ä»¶ä¸Šä¼ ", id: "popupByUploadFile", url: "module/tool/page/popup_uploadFile.html", data: { dataName: dataname, fileidfieldName: fileidfield, id: sender_id_, fileNamefieldName: filenamefield, apply_type_code: me.formData.type_code, apply_dataname: "so_implant_change" }, delta: delta_, callback: function(obj, callback) { me.$message({ showClose: true, message: 'ä¸Šä¼ æˆåŠŸï¼', type: 'success' }); var comeback_attachment_name_ = clone(me.implant_attachment_list); comeback_attachment_name_.unshift(obj.filedbtxt[0]); me.implant_attachment_list = comeback_attachment_name_; me.$set(me.formDataImplant, "implant_attachment", comeback_attachment_name_); // var f_ = { // id: obj.row[0].id, // file_name: decodeURI(obj.row[0].name) // } // if (!objformdata[filenamefield]) { // objformdata[filenamefield] = [] // } // objformdata[filenamefield].push(f_); if (!objformdata.id) { objformdata.id = obj.row[0].sender_id; } if (callback) { callback(); } } }; this.doPopupByPublic(config); }, deleteByFileId_n(filenamefield, fileobj, objformdata){ var me = this; var formData_ = clone(me.formData); Root.confirm('ç¡®å®šåˆ é™¤é™„ä»¶ã€' + fileobj.file_name + '】å—?', 'åˆ é™¤æç¤º', { confirmButtonText: 'åˆ é™¤', cancelButtonText: 'å–æ¶ˆ', type: 'warning' }).then(() => { objformdata[filenamefield].remove(fileobj); Root.message({ type: 'success', message: 'åˆ é™¤æˆåŠŸ!' }); // if (fileobj.id) { // let param = { // dataname: "so_implant_file", // id: fileobj.id // } // Server.call("root/data/deleteEntity", param, function(result) { // console.log(result); // if (result && result.data) { // objformdata[filenamefield].remove(fileobj); // // me.formData[filenamefield].remove(fileobj); // // me.formData = formData_; // Root.message({ // type: 'success', // message: 'åˆ é™¤æˆåŠŸ!' // }); // } // }); // } }).catch(() => { Root.message({ type: 'info', message: '已喿¶ˆåˆ 除' }); }); }, // onPopupByUploadFile(filenamefield, fileidfield, formDataMark, dataname) { // var me = this; // var formData_ = clone(formDataMark); // //æ£å¸¸é™„ä»¶ä¸Šä¼ // var analysistype_ = ""; // // var delta_ = {filetypelist: [], analysistype: analysistype_} // //å‘票验真 // if (filenamefield == "implant_attachment") { // analysistype_ = "invoiceVerification"; // } // var delta_ = {filetypelist: [".png", ".jpg"], analysistype: analysistype_} // //æ£å¸¸é™„ä»¶ä¸Šä¼ // var config = { // totab: false, // width: "500px", // icon: "icon-product", // text: "é™„ä»¶ä¸Šä¼ ", // id: "popupByUploadFile", // url: "module/tool/page/popup_uploadFile.html", // data: { // dataName: dataname, // fileidfieldName: fileidfield, // id: formData_.id, // fileNamefieldName: filenamefield // }, // delta: delta_, // callback: function(obj, callback) { // console.log(obj); // if (obj.filetxt.is_real || !obj.filetxt.is_bill) {//çœŸæˆ–è€…ä¸æ˜¯å‘票 // var message_ = "ä¸Šä¼ æˆåŠŸï¼" // var file_ = { // id: obj.row[0].id, // file_name: decodeURI(obj.row[0].name) // } // //如果是真å‘票 // if (obj.filetxt.is_real) { // message_ = "å‘票验è¯ä¸ºçœŸï¼Œä¸Šä¼ æˆåŠŸï¼" // file_.file_tag = obj.filetxt.billno; // } // if (!formData_[filenamefield]) { // formData_[filenamefield] = [] // } // formData_[filenamefield].push(file_); // me.formData = formData_; // me.$message({ // showClose: true, // message: message_, // type: 'success' // }); // } // else {//å‡ // me.$alert(obj.filetxt.content, 'å‘票验è¯ä¸ºå‡ï¼Œä¸Šä¼ 失败', { // confirmButtonText: '确定', // callback: action => { // //åˆ é™¤æ¤é™„ä»¶ // let param = { // id: obj.row[0].id, // dataname: 'file_index', // } // Server.call("root/data/deleteEntity", param, function(result) { // console.log(result); // }); // } // }); // } // if (callback) { // callback(); // } // } // }; // this.doPopupByPublic(config); // }, // é€šè¿‡æˆ–æ‹’ç» onShowApproval(passOrRefuse) { var me = this; if (passOrRefuse == "approve") { // ä¿å˜è®¢å•æ˜Žç»†çš„æ‰¹å· this.saveRowTable(function(){ me.approveremark = ""; me.reasonvisible = true;//审批备注填写弹窗 me.passOrRefuse = passOrRefuse;// commit下一个状æ€;approve通过;gohome;//æ‹’ç» goback;//回退 }) } else { this.approveremark = ""; this.reasonvisible = true;//审批备注填写弹窗 this.passOrRefuse = passOrRefuse;// commit下一个状æ€;approve通过;gohome;//æ‹’ç» goback;//回退 } }, saveReason() { this.loading_pass = true; if(this.passOrRefuse == "commit" || this.passOrRefuse == "approve"){ this.doApproval(); } else{ if(this.approveremark != ""){ this.doApproval(); } else{ Root.message({ type: 'warning', message: 'è¯·å¡«å†™åŽŸå› ' }); this.loading_pass = false; } } }, doApproval() { this.doRunApproval(); }, doRunApproval(next_step, up_step) { var me = this; if (!next_step) { next_step = {} } if (!up_step) { up_step = {} } // this.passOrRefuse;//首次开户-通过 // commit // ä¸‹ä¸€ä¸ªçŠ¶æ€ // approve // 通过 // gohome // æ‹’ç» // goback // 回退 var to_state_ = ""; if (this.passOrRefuse == "commit") { to_state_ = next_step[this.formData.state_code]; } else if (this.passOrRefuse == "approve") { // to_state_ = up_step[this.formData.state_code]; } else if (this.passOrRefuse == "gohome") { // to_state_ = up_step[this.formData.state_code]; } else if (this.passOrRefuse == "goback") { to_state_ = up_step[this.formData.state_code]; } let param = { dataname: this.dataname, id: me.formData.id, remark: this.approveremark } Server.call("root/data/" + this.passOrRefuse, param, function(result) { me.loading_pass = false; console.log(result); if (me.passOrRefuse == "commit" || me.passOrRefuse == "approve") { Root.message({ type: 'success', message: '审批æˆåŠŸ' }); } else if (me.passOrRefuse == "goback") { Root.message({ type: 'success', message: '已退回' }); } else if (me.passOrRefuse == "gohome") { Root.message({ type: 'success', message: '已拒ç»' }); } me.saveAfter(); }, function(errorresult) { console.log("错误信æ¯", errorresult); me.loading_pass = false; if (errorresult.messages && errorresult.messages.count && errorresult.messages.count.error) { if (errorresult.messages.list) { var config = { totab: false, // width: "1200px", // height: 800, icon: "icon-product", text: "错误信æ¯", url: "module/tool/page/popup_error_messages.html", data: {}, delta: errorresult.messages.list, callback: function(obj, callback) { if (callback) { callback(); } } }; me.doPopupByPublic(config); } } else { Root.message({ type: 'error', message: '审批失败' }); } }); }, } }); }; loadJsCss(function () { initVue(); }); </script> <style> /* 在vue.jsä¸ v-cloak 这个指令是防æ¢é¡µé¢åŠ è½½æ—¶å‡ºçŽ° vuejs çš„å˜é‡å而设计的 */ [v-cloak] { display: none !important; } /* 分隔线相关-1 */ .hr-fade-content { color: #e1a716; border: 0; font-size: 20px; font-weight: 550; padding: 1.5em 0; position: relative; } .hr-fade-content::before { content: attr(data-content); position: absolute; padding: 0 1ch; line-height: 1px; border: solid #d0d4d5; border-width: 0 99vw; width: fit-content; /* for 䏿”¯æŒfit-contentæµè§ˆå™¨ */ white-space: nowrap; left: 50%; transform: translateX(-50%); } .hr-fade-content { -webkit-mask-image: linear-gradient(to right, transparent, black, transparent); mask-image: linear-gradient(to right, transparent, black, transparent); } /* 分隔线相关-2 */ /* .title{ text-align: center; font-size: 14px; color: #999; overflow: hidden; } .inner{ position: relative; padding: 0 10px; } .inner::before{ content: ''; position: absolute; height: 1px; top: 50%; border-left: 9999px solid #ccc; border-right: 9999px solid #ccc; right: -9999px; left: -9999px; } */ .h_change_body { border: 1px solid #C0C4CC; border-radius: 4px; padding: 5px; box-sizing: border-box; } </style> </head> <body style="margin: 0px;"> <div v-cloak id="vbody"> <div id="page_root"> <div ref="popup_body" style="padding: 0 20px;"> <div class="el-dialog__header"> <div class="dialog-title"> <i class="iconfont icon-customermanagement"></i> <span> {{title}} {{formData.code}}</span> </div> </div> <div :style="{height: t_height +'px', 'overflow-y': 'auto'}"> <!-- <div style="height: 550px; overflow-y: auto;"> --> <div class="el-dialog__body"> <h-form ref="form1" :form-attr="formAttr" :table-fields="formFields" :form-data="formData" :table-field-click="formfieldClick"> </h-form> <div :class="formFieldsImplant.length ? 'h_change_body' : ''"> <h-form ref="form2" :form-attr="formAttrImplant" :table-fields="formFieldsImplant" :form-data="formDataImplant" :table-field-click="formfieldImplantClick" > </h-form> <div style="padding: 0px;"> <h-table v-if="is_refresh_pzd && tableFields_pzd.length && tablebuttonclick_pzd.length" ref="table1" :table-attr="tableAttr_pzd" :table-fields="tableFields_pzd" :table-data="tableData_pzd" :table-field-click="tablefieldClick_pzd" :isfilterfield="false" :isdraggableorder="false" :table-buttons-click="tablebuttonclick_pzd" :is-pagination="false" :is-highlight-row="true" :is-within-edit-table-data="isedit_pzd" :show-summary="true" > </h-table> </div> <h-table v-if="isRefresh && tableFields.length" ref="table1" :table-attr="tableAttr" :table-fields="tableFields" :table-data="tableData" :is-within-edit-table-data="isalteredit && isedit_pzd" :is-pagination="false" :table-field-click="tablefieldClick" :isdraggableorder="false" :table-buttons-click="tablebuttonclick" :show-summary="true" :is-highlight-row="true" v-on:get-data="getData" v-on:del-data="delData"> </h-table> <!-- :is-edit-table-data="isedit || isrefuseedit" :edit-table-button="editTableButton" --> <el-dialog title="å¡«å†™åŽŸå› " :visible.sync="reasonvisible" height="50%"> <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 10}" placeholder="è¯·è¾“å…¥åŽŸå› " v-model="approveremark"> </el-input> <div slot="footer" class="dialog-footer" > <el-button type="default" @click="reasonvisible = false">å– æ¶ˆ</el-button> <el-button type="primary" :loading="loading_pass" @click="saveReason">ç¡® 定</el-button> </div> </el-dialog> </div> </div> </div> <!-- <el-dialog title="填写调整撤销信æ¯" :visible.sync="isChange" :close-on-press-escape="false" :close-on-click-modal="false" :show-close="false" height="50%"> <h-form ref="form_change" :form-attr="formAttr_change" :table-fields="formFields_change" :form-data="formData_change" :table-field-click="formfieldchangeClick" > </h-form> <div slot="footer" class="dialog-footer" > <el-button size="small" type="default" @click="closeDialog">å– æ¶ˆ</el-button> <el-button size="small" type="primary" @click="setChangeForm">ç¡® 定</el-button> </div> </el-dialog> --> <div class="el-dialog__footer"> <el-button-group style="margin-right: 80px;" > <el-button size="small" v-if="isapproval" type="warning" plain @click="onShowApproval('gohome')">退回到申请人</el-button> <el-button size="small" v-if="isapproval" type="danger" plain @click="onShowApproval('goback')">退回到上一æ¥</el-button> </el-button-group> <el-button size="small" type="default" @click="closeDialog">å– æ¶ˆ</el-button> <el-button size="small" v-if="isedit || isrefuseedit" type="primary" :loading="loading_save" @click="saveRowTable()":icon="buttonsconfig.save.icon">{{buttonsconfig.save.name}}</el-button> <el-button size="small" v-if="isedit" type="success" :loading="loading_submit" @click="submitRowTable":icon="buttonsconfig.submit.icon">{{buttonsconfig.submit.name}}</el-button> <el-button size="small" v-if="isrefuseedit" type="success" @click="">冿¬¡æäº¤</el-button> <el-button size="small" v-if="isapproval" type="success" @click="onShowApproval('approve')">通 过</el-button> </div> <!-- <div class="el-dialog__footer"> <el-button size="small" type="default" @click="closeDialog">å– æ¶ˆ</el-button> <el-button size="small" v-if="isedit || isrefuseedit" type="primary" @click="saveRowTable" :loading="loading_save" :icon="buttonsconfig.save.icon">{{buttonsconfig.save.name}}</el-button> <el-button size="small" v-if="isedit" type="success" @click="submitRowTable" :loading="iscommit" :icon="buttonsconfig.submit.icon">{{buttonsconfig.submit.name}}</el-button> <el-button size="small" v-if="isrefuseedit" type="success" @click="">冿¬¡æäº¤</el-button> <el-button size="small" v-if="isapproval" type="danger" @click="onRefuseApproval">æ‹’ ç»</el-button> <el-button size="small" v-if="isapproval" type="success" @click="onPassApproval">通 过</el-button> </div> --> </div> </div> </div> <div id="page_loading" style="position: absolute; top:0px; width: 100vw; height: 50vh;"> <div class="spinner"> <div class="cube1"></div> <div class="cube2"></div> </div> </div> </body> </html>