<!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 src="../../../js/jquery-3.5.1.min.js"></script> <script src="../../../js/vue/vue.js"></script> <script src="../../../data/data.js?v=2022052404"></script> <script src="../../../js/vue/element-ui/lib/index.js"></script> <script src="../../../js/vue/axios/dist/axios.min.js"></script> <script src="../../../js/foundation.js?v=20220524"></script> <script src="../../../js/control.js?v=20220425"></script> <script src="../../../js/myelement.js?v=20220615"></script> <script src="../../../js/vue/page.js?v=20220615"></script> <link href="../../../js/vue/element-ui/lib/theme-chalk/index.css" rel="stylesheet"> <link href="../../../css/myelement.css?v=20220425" rel="stylesheet"> <link href="../../../css/iconfont.css" rel="stylesheet"> <link href="../../../css/page.css?v=20220425" rel="stylesheet"> <link href="//at.alicdn.com/t/font_2374495_13ltsxm2eor.css" rel="stylesheet"> </head> <body> <div id="vbody" align="center"> <div id="page_root" style="width: 276mm;"> <div ref="popup_body" style="padding-right: 0px;"> <div class="el-dialog_header"> <div class="dialog-title"> <span> {{formAttr.title}} </span> </div> </div> <div id="page_body"> <div class="el-dialog_body" > <h-form ref="form1" :form-attr="formAttr" :table-fields="formFields" :form-data="formData" :is-end-colspan="false" v-on:show-popup="showPopup" v-on:button-click="buttonClick" v-on:form-change="selectchange" v-on:visible-change="cellVisibleChange" v-on:formcallspan-click="formcallspanClick" > </h-form> <div class="h_dialog__body" style=" padding-top: 20px;"> <div style="display: flex;"> <div v-if="showChangeInfo" style="margin-right: auto;"> <span>å˜æ›´å‰</span> </div> </div> <h-table v-if="isRefresh" ref="table1" :table-fields="tableFields" :table-data="tableData" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> <h-table v-if="isRefresh && showTable2" ref="table1" :table-fields="tableFields_2" :table-data="tableData" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> <h-table v-if="isRefresh && showTable3" ref="table1" :table-fields="tableFields_3" :table-data="tableData" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> <h-table v-if="isRefresh && showTable4" ref="table1" :table-fields="tableFields_4" :table-data="tableData" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> <h-table v-if="isRefresh && showTable5" ref="table1" :table-fields="tableFields_5" :table-data="tableData" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> <h-table v-if="isRefresh && showTable6" ref="table1" :table-fields="tableFields_6" :table-data="tableData" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> </div> <div class="h_dialog__body" v-if="showChangeInfo" style="padding-top: 30px;;"> <div v-if="showChangeInfo" style="text-align: left;"> <span>å˜æ›´åŽ</span> </div> <h-table v-if="isRefresh" ref="table1" :table-fields="tableFields2" :table-data="tableData2" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> <h-table v-if="isRefresh && showTable2" ref="table1" :table-fields="tableFields2_2" :table-data="tableData2" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> <h-table v-if="isRefresh && showTable3" ref="table1" :table-fields="tableFields2_3" :table-data="tableData2" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> <h-table v-if="isRefresh && showTable4" ref="table1" :table-fields="tableFields2_4" :table-data="tableData2" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> <h-table v-if="isRefresh && showTable5" ref="table1" :table-fields="tableFields2_5" :table-data="tableData" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> <h-table v-if="isRefresh && showTable6" ref="table1" :table-fields="tableFields2_6" :table-data="tableData" :is-pagination="false" :is-show-index="true" v-on:edit-data="editData" v-on:del-data="delData" v-on:cell-input-change="cellInputChange" v-on:cell-click="cellClick" v-on:visible-change="cellVisibleChange" v-on:cell-select-change="cellSelectChange" > </h-table> </div> <div v-if="showApprovalInfo" style="border-top: 15px"> <div style="width: 100%; height: 100%; border: 0px;"> <div class="topbar"> <span>审批记录</span> </div> <div class="versionNo"> <h-table v-if="isRefresh" ref="table3" :table-fields="default_tableFields3" :table-data="tableData3" :table-height="tableHeight" :isdraggableorder="false" :is-pagination="false" > </h-table> </div> </div> </div> </div> <div style="width: 100%; height: 60px;"> </div> </div> <div class="el-dialog_footer"> <el-button type="default" @click="toPDFPage">打å°</el-button> <el-button v-if="!fromDing" type="default" @click="closeDialog">å…³ é—</el-button> </div> </div> </div> <div id="page_loading" style="position: absolute; top:0px; width: 100vw; height: 100vh;z-index:9999"> <div class="spinner"> <div class="cube1"></div> <div class="cube2"></div> </div> </div> <el-dialog :visible.sync="dingResult" width="40vw" height="50vh" :show-close="false" :close-on-click-modal="false" :close-on-press-escape="false"> <span>{{dingResultTxt}}</span> <div style="min-height: 150px;"></div> </el-dialog> </div> <script type="text/javascript"> new ListVue({ el: "#vbody", data: { dataname: "", formName: "", tableName: "", newRowDefault: { //id: uuid_short(), statecode: "input", biz_date: createDate(), }, notdisabled: true, acctObj:{ flow_id:"" }, attachment_name:"", formAttr: { istitle: false, title: "", columnnumber: 2, labelwidth: "140px", labelposition: "right", size: "medium", border: "5px solid #c6c6c600", disabled: true }, formFields: [], tableFields: [], a2label:[], a1label:[], tableData2: [], tableDataChange: {}, tableData: [], selectrow: {}, tableHeight2: 240, isEditTableData:true, isWithinEditTableData:false, formData: {}, isRefresh: true, selectFormField: {}, popupByFieldsDialog: false, filterAttr: { columnnumber: 3, labelwidth: "100px", labelposition: "right", size: "medium", border: "3px solid #c6c6c600" }, filterFields:[], filterFieldsObj: {}, filterObj: {}, filterList:[], returnreason: [], isLoading:false, treeDataObj: {}, approval:false, reasonvisible:false, textarea2: '', fromDing: false, dingResult: false, dingResultTxt: "", isQGXD: false, isWLGLB: false, tableFields: [], tableFields_2: [], tableFields_3: [], tableFields_4: [], tableFields_5: [], tableFields_6: [], tableData: [], tableData_old: [], tableFields2: [], tableFields2_2: [], tableFields2_3: [], tableFields2_4: [], tableFields2_5: [], tableFields2_6: [], tableData2: [], //审批相关 default_tableFields3: [ {isshow: "T", field: "node_name", name: "当å‰èŠ‚ç‚¹", width: "150", type:"span", required: true}, {isshow: "T", field: "end_time", name: "申请/审批时间", width: "100", type:"span", formatter: "formatter_date", required: true, isminwidth: true,}, {isshow: "T", field: "pass", name: "审批情况", width: "150", type:"span", required: true, isminwidth: true,}, {isshow: "T", field: "reason", name: "åŽŸå› ", width: "150", type: "span", required: true, isminwidth: true,}, {isshow: "T", field: "user_name", name: "申请/审批人", width: "150", type:"span", required: true, isminwidth: true,}, ], tableFields3: [], tableData3: [], tableData4: [], showApprovalInfo: false, showChangeInfo: false, showTable2: false, showTable3: false, showTable4: false, showTable5: false, showTable6: false, }, created() { //this.popupParames = clone(Root.popupParames); var url = window.location.href; var params = getGetParams(url); this.popupParames = clone(params); if (!window.top.userinfo) { window.top.userinfo = { user: { id: this.popupParames.userId } } } if (this.popupParames) { this.dataname = this.popupParames.dataname this.formName = this.popupParames.formName this.tableName = this.popupParames.tableName if (this.dataname == "pkg_agm_record_syzc") { this.formAttr.title = "商业政ç–ä¿¡æ¯" } if (this.dataname == "pkg_agm_record_fxzc") { this.formAttr.title = "分销政ç–ä¿¡æ¯" } if (this.dataname == "pkg_agm_record_qtfy") { this.formAttr.title = "å‰å°è´¹ç”¨ä¿¡æ¯" } if (this.dataname == "pkg_agm_record_zyzc") { this.formAttr.title = "èµ è¯æ”¿ç–ä¿¡æ¯" } if (this.dataname == "pkg_agm_record_ecyj") { this.formAttr.title = "二次议价信æ¯" } if (this.dataname == "pkg_grant_order") { this.formAttr.title = "èµ è¯ç”³è¯·ä¿¡æ¯" } } }, mounted() { var me = this; me.getDic() }, methods:{ getDic() { let me = this Server.call("root/dict/getDictList", {isClientMode: false}, function(result) { let dictList = result.data.data; var data_ = {}; result.data.data.map(e=>{ if (e.items.length) { data_[e.code] = e.items; } }) var newdata_ = clone(result.data.data); newdata_.map(d_=>{ if (d_.items && d_.items.length) { d_.items.map(d_item=>{ d_item.code = d_item.value d_item.value = d_item.label }) } }) newDictionary.load(newdata_); me.initData() }); }, initData() { let me = this let param = { dataname: this.dataname, id: this.popupParames.id, token: this.popupParames.token }; Server.call("rootjemin/data/getEntity", param, function(result) { if (result.success) { var metas = clone(result.meta[me.formName].fields); var table_metas = clone(result.meta[me.tableName].fields); var formFields_ = []; var tableFields_ = []; metas.map(f=>{ f.isshow = "T"; f.type = f.inputtype if (f.field == 'biz_date') { f.type = 'date' } f.name = f.labelchinese formFields_.push(clone(f)); }) table_metas.map(e=>{ if (e.table_group_name) { e.labelchinese = clone(e.table_group_name + e.labelchinese) } if (e.formatter == "formatter_json") { var json_ = {}; if (e.formatterjson) { //说明是对应关系 json_ = e.formatterjson; } else if (e.formatpattern){ //æ ¹æ®formatpattern获å–公用的对应关系,从å—å…¸ä¸èŽ·å–,å—典数æ®ä»Žæ•°æ®åº“èŽ·å– var map_ = newDictionary.getMap(e.formatpattern); json_ = e.formatterjson = clone(map_); e['valMap'] = json_ } else if (!e.formatpattern && e.optionsgroup){ //æ ¹æ®optionsgroup下拉组å获å–公用的对应关系,从å—å…¸ä¸èŽ·å–,å—典数æ®ä»Žæ•°æ®åº“èŽ·å– var map_ = newDictionary.getMap(e.optionsgroup); json_ = e.formatterjson = clone(map_); } e['valMap'] = json_ } e.isshow = "T"; e.width = "50px" if (!e.appendix) { tableFields_.push(clone(e)); } }) let tableFields_1 = [] let tableFields_2 = [] let tableFields_3 = [] let tableFields_4 = [] let tableFields_5 = [] let tableFields_6 = [] tableFields_.map(s => { s.name = s.labelchinese if (tableFields_1.length < 11) { tableFields_1.push(s) } else if (tableFields_2.length < 11) { tableFields_2.push(s) me.showTable2 = true } else if (tableFields_3.length < 11) { tableFields_3.push(s) me.showTable3 = true } else if (tableFields_4.length < 11) { tableFields_4.push(s) me.showTable4 = true } else if (tableFields_5.length < 11) { tableFields_5.push(s) me.showTable5 = true } else if (tableFields_6.length < 11) { tableFields_6.push(s) me.showTable6 = true } }) if (me.formData.trans_type == 'trans') { var termination_date = { isshow: "T",field: "termination_date", name: "ç»ˆæ¢æ—¥æœŸ", width: "150", type:"date", formatter: "formatter_date" }; tableFields_.unshift(termination_date); } if (me.formData.trans_type == 'end') { tableFields_.map(t => { t.type = "span"; }) var termination_date = { isshow: "T",field: "termination_date", name: "ç»ˆæ¢æ—¥æœŸ", width: "150", type:"date", formatter: "formatter_date", cssname: "highClass" }; tableFields_.unshift(termination_date); } me.formFields = clone(formFields_); me.tableFields = clone(tableFields_1); me.tableFields_2 = clone(tableFields_2); me.tableFields_3 = clone(tableFields_3); me.tableFields_4 = clone(tableFields_4); me.tableFields_5 = clone(tableFields_5); me.tableFields_6 = clone(tableFields_6); me.tableFields2 = clone(tableFields_1); me.tableFields2_2 = clone(tableFields_2); me.tableFields2_3 = clone(tableFields_3); me.tableFields2_4 = clone(tableFields_4); me.tableFields2_5 = clone(tableFields_5); me.tableFields2_6 = clone(tableFields_6); let formData_ = result.data[me.formName] let tableData_ = result.data[me.tableName] if (formData_) { if (formData_.flow_type) { if (formData_.flow_type == "adjust") { formData_.flow_type = "终端补差" } if (formData_.flow_type == "good") { formData_.flow_type = "终端货抵" } if (formData_.flow_type == "price") { formData_.flow_type = "特è¯ç»Ÿä¸€å‘è´§ä»·" } } me.formData = formData_ me.province_code_old = me.formData.head_province_code || '' me.province_name_old = me.formData.head_province_name || '' } if (tableData_ && tableData_.length > 0) { tableData_.map(e => { e.is_deposit = e.is_deposit? 'Y' : 'N' for (let key in e) { let arr = tableFields_.filter(s => s.valMap && s.field == key) if (arr.length > 0) { e[key] = clone(arr[0].valMap[e[key]]) } } }) let idStr = '' tableData_.map(s => { if (!idStr) idStr += "'" + s.old_id + "'" else idStr += ",'" + s.old_id + "'" }) if (me.formData.trans_type && me.formData.trans_type == 'trans' && me.popupParames.sceneCode !== "changeEdit") { me.tableDataObj = {} tableData_.map(s => { me.tableDataObj[s.old_id] = s.id }) me.tableData2 = tableData_ me.getOldData(idStr) } else if (me.popupParames.sceneCode == "changeEdit") { me.tableData = tableData_ me.getOldData(idStr) } else { me.tableData = tableData_ } } if (me.popupParames.sceneCode !== "change" && me.popupParames.sceneCode !== "end" && me.popupParames.sceneCode !== "changeEdit" && me.popupParames.sceneCode !== "endEdit" && me.formData.trans_type && me.formData.trans_type == 'trans') { me.showChangeInfo = true } if (me.formData.flow_id) { me.showApprovalInfo = true me.getApprovalHisInfo(me.formData.flow_id || "") } me.$nextTick(() => { // 以æœåŠ¡çš„æ–¹å¼è°ƒç”¨çš„ Loading 需è¦å¼‚æ¥å…³é— document.getElementById('page_root').style.display = "block"; document.getElementById('page_loading').style.display = "none"; }); } }); }, clearData() { this.formData = clone(this.newRowDefault) this.tableData2 = []; }, onServerInitData(data) { }, getApprovalList() { var me = this; let param = { isClientMode: false, flowId: this.acctObj.flow_id } this.tableData_act = []; Server.call("root/order/getHistoryTask/", param, function(result) { console.log(result); if (result && result.data) { me.tableData_act = result.data.entityset; } }); }, fileNameTrim(str) { let name = str.substring(0,str.indexOf(".")); let suffix = str.substring(str.indexOf(".")+1); if(name.length > 18) name = name.substring(0,18) + "...( " + suffix + " )" else name = str; return name; }, closeDialog() { ClosePage(); /* let me = this; if(this.popupParames.totab) { Root.tab.removeItem(Root.tab.selected); Root.tab.open(me.popupParames.parentOption, false); }else { Root.hidePopup(); } */ }, toPDFPage() { //let newstr = document.getElementById("page_body").innerHTML; //let oldstr = document.body.innerHTML; //document.body.innerHTML = newstr; window.print(); //document.body.innerHTML = oldstr; //return false; }, ArrayToTree(array_, name, parentId, parId, disabled_field, isencode) { if(!parentId) { parentId = "parent_id"; } if(!name) { name = "label"; } if(!parId) { parId = ""; } let obj = {}; let result = []; let list = JSON.parse(JSON.stringify(array_)); list.map(el => { obj[el.id] = el; }) let openId = ""; for (let i = 0, len = list.length; i < len; i++) { let parentId_ = list[i][parentId]; //如果å˜åœ¨åˆ¤æ–åªè¯»å—æ®µï¼Œå¹¶ä¸”è¯¥å—æ®µæœ‰å€¼åˆ™è®¾ç½®è¯¥èŠ‚ç‚¹ä¸ºåªè¯» if (disabled_field) { if(list[i][disabled_field]) { list[i].disabled = true; } } //è®¾ç½®æ˜¾ç¤ºå—æ®µ if (isencode) { list[i].label = decodeURI(encodeURI(list[i][name]));//æ•°æ®å¦‚果带“%â€çš„需è¦ç¼–ç å†è§£ç ,å¦åˆ™ä¼šå˜åœ¨æ ¼å¼é”™è¯¯ list[i].name = decodeURI(encodeURI(list[i][name])); } else { list[i].label = decodeURI(list[i][name]); list[i].name = decodeURI(list[i][name]); } if (parentId_ == parId || !parentId_ || parentId_ == "null") { if(!obj[list[i].id].children) { obj[list[i].id].children = null; } result.push(list[i]); continue; } else if (obj[parentId_]) { if (!obj[parentId_].children) { obj[parentId_].children = []; } obj[parentId_].children.push(list[i]); } } return result; }, getTree() { let me = this; let param_table = { isClientMode: false, dataname: "revocationOrderType", filter:"parent_id <> '1' or parent_id is null" } Server.call("root/data/getEntitySet", param_table, function(result) { console.log(result); me.defaultExpandedKeys = []; var formFields_ = clone(me.formFields); let treeDataList = result.data.entityset;//this.returnreason;//result.data.entityset; /* treeDataList.map(e=>{ me.treeDataObj[e.id] = e; }); */ let isDistributor = localStorage.isdistributor if(isDistributor) { treeDataList.map(e=>{ if(e.id == "2" || e.id == "3") e.parent_id = "1111"; }) } let treeData_ = me.ArrayToTree(treeDataList, "name", "parent_id"); if(!(me.formData.sub_type instanceof Array) && me.popupParames.sceneCode != "add") { let sub_id = me.formData.sub_type; let arr = []; arr.push(sub_id); for (var i = 0; i < treeDataList.length; i++) { let item = treeDataList[i]; if(item.id == sub_id) { if(item.parent_id) { sub_id = item.parent_id; arr.unshift(item.parent_id); i = -1; } else { break; } } } me.$set(me.formData,"sub_type",arr); } treeData_.map(e=>{ me.defaultExpandedKeys.push(e.id); }); let treeDate = []; formFields_.map(e=>{ if(e.field == "sub_type") { e.options = treeData_; } }) me.formFields = formFields_; //me.formData.type = treeData_; //me.$refs.form1.refresh(); }); let param_table_1 = { isClientMode: false, dataname: "revocationOrderType", filter:"parent_id <> '2' and parent_id <> '' and id <> '15'" } Server.call("root/data/getEntitySet", param_table_1, function(result) { let treeDataList = result.data.entityset;//this.returnreason;//result.data.entityset; me.tableFields = me.tableFields.map(e=>{ if(e.field == "revo_remark") { e.options = treeDataList; } return e; }) }); }, checkCustomerAndDelivery(callback) { let m = document.getElementById("cell"); m.innerHTML = ""; if(this.popupParames.sceneCode == "approval") return; if (this.formData.delivery_part_name && this.formData.customer_name) { let me = this; let param_ = { isClientMode: false, dataname: "deliveryType", code: this.formData.delivery_part_code, } me.expiredLicense = false; Server.call("root/data/getEntity", param_, function(result) { //U8é¢„ç•™æŽ¥å£ let url = window.top.RootSetting.url_stock + "order/checkLicence" axios.post(url, { customerId: me.formData.customer_id || "", bookNo: me.formData.book_no ? me.formData.book_no : "", deliveryPartCode:me.formData.delivery_part_code }) .then(data => { console.log(data); if (data.data.success) { if(data.data.data.status != "0") { if(data.data.data.licenceList && data.data.data.licenceList.length > 0){ let licenceList_ = data.data.data.licenceList; for (var i = 0; i < licenceList_.length; i++) { if((licenceList_[i].term && new Date(licenceList_[i].term) < new Date()) || !licenceList_[i].term) { let el = document.createElement('span'); el.className = "cell"; el.style.marginRight = "15px"; el.style.paddingLeft = "5px"; el.style.paddingRight = "5px"; me.expiredMessage.push(licenceList_[i].type + "已过期") el.innerText = licenceList_[i].type + "已过期"; m.appendChild(el); me.expiredLicense =true; } } }else{ let el = document.createElement('span'); el.className = "cell"; el.style.marginRight = "15px"; el.style.paddingLeft = "5px"; el.style.paddingRight = "5px"; me.expiredMessage.push("没有查询到è¯ç…§ä¿¡æ¯") el.innerText = "没有查询到è¯ç…§ä¿¡æ¯"; m.appendChild(el); me.expiredLicense =true; } } if (callback) { callback(); } } else { if (callback) { callback(); } Root.message({ type: 'warning', message: data.data.message }); } }) .catch((error) => { if (callback) { callback(); } console.log(error); }); //} }); }else{ if (callback) { callback(); } } }, cellVisibleChange(obj) { let options_ = []; let me= this; if (obj.field == "a2_product_price") { let filter = " business_type = '" + this.formData.business_type + "' and control_type = '" + this.formData.control_type + "' and operator_code = '" + this.formData.operate_emp_code //+ "' and tax_rate = '" + this.formData.tax_rate + "' and delivery_part_code = '" + this.formData.delivery_part_code + "' and province_code = '" + this.formData.province_code + "' and manager_part_code = '" + this.formData.manager_part_code + "' and business_depart_id = '" + this.formData.business_depart_id + "' and settle_type = '" + this.formData.settle_type + "' and product_code = '" + this.selectrow.product_code + "' and customer_id = '" + this.formData.customer_id + "' and supply_price <> '" + this.selectrow.product_price + "'"; let param_ = { isClientMode: false, filter: filter } Server.call("root/data/getEntitySet/A2Price", param_, function(result){ options_ = result.data.entityset; obj.options = options_; me.a2label = clone(options_) }); }else if(obj.field == "a1_trans_price") { if(!this.formData.trans_customer_code) { Root.message({ type:"warning", message:"请选择A1客户" }) return; } let param_ = { isClientMode: false, customer_code: this.formData.trans_customer_code, delivery_part_code: this.formData.delivery_part_code, product_code: this.selectrow.product_code, //product_code: this.selectedrow.product_code, } Server.call("root/data/getEntitySet/A1CustomerPrice", param_, function(result){ options_ = result.data.entityset; obj.options = options_; me.a1label = clone(options_) }); } }, selectchange(obj){ let field = obj.fieldobj.field; var formFields_ = clone(this.formFields); var tableFields_ = clone(this.tableFields); let row = obj.data; if (field == "sub_type") { let val = row[field]; let isshowF ='T'; let isshowT ='T'; if (val[0] == 3){ isshowF = 'T'; isshowT = 'F'; } else if(val[0] == 2){ isshowF = 'F'; isshowT = 'T'; } else{ isshowF = 'F'; isshowT = 'F'; } formFields_ = formFields_.map((e)=>{ if(e.field == "trans_customer_name") e.isshow = isshowF; if (val[0] == "2" && val[1] == "2-2" && e.field == "ticket_discount_type") { e.isshow = 'T' } else if (e.field == "ticket_discount_type") { e.isshow = 'F' } return e; }); tableFields_ = tableFields_.map((e)=>{ let arr = ["diff_date","old_discount_amt","detail_remark","current_discount_amt","diff_amt","diff_price","a2_product_price"] if(arr.indexOf(e.field) != -1) e.isshow = isshowT; if(e.field == "revo_remark" && isshowF == 'F' && isshowT == 'F') { e.isshow = "T"; e.type = 'select' e.name = 'é€€è´§åŽŸå› ' }else if(e.field == "revo_remark"){ e.isshow = "F"; } if(e.field == "a1_trans_price" || e.field == "a1_delivery_amt" || e.field == "trans_settle_type" || e.field == "pre_settle_type_name") { e.isshow = isshowF; } return e; }); let formData_ = clone(this.formData); formData_.trans_customer_code = ""; formData_.trans_customer_name = ""; formData_.trans_agreement_id = ""; this.formData = formData_; this.formFields = formFields_; this.tableFields = tableFields_; //this.tableData2 = []; for (var i = 0; i < this.tableData2.length; i++) { this.tableData2[i].trans_agreement_record_id = ""; this.tableData2[i].a2_product_price = ""; } } /* this.$nextTick(e=>{ let el = document.getElementsByClassName('el-table__body-wrapper',this.$refs.table1.$el)[0]; let el_a = this.$refs.table1.$refs.table1.$el; el.style.height = (el_a.clientHeight - 40) + 'px' }) */ }, cellSelectChange(scope) { let me = this; let row = scope.row; console.info(row) let field = scope.column.property; console.info(field) let val = row[field]; if(field == "a2_product_price") { row.trans_agreement_record_id = val; this.a2label.map(e=>{ if(e.id == val) { row.a2_product_price = e.supply_price } }) let qty_needreturn_ = parseFloat(row.qty_needreturn); let old_discount_amt_ = parseFloat(row.old_discount_amt) let current_discount_amt_ = parseFloat(row.current_discount_amt) let a2_product_price_ = parseFloat(row.a2_product_price) if(!row.qty_needreturn) qty_needreturn_ = 0 if(!row.old_discount_amt) old_discount_amt_ = 0 if(!row.current_discount_amt) current_discount_amt_ = 0 if(!row.a2_product_price) a2_product_price_ = 0 let diff_price_ = 0; diff_price_ = parseFloat(row.product_price) - a2_product_price_ - old_discount_amt_ + current_discount_amt_ me.$set(row,"diff_price",diff_price_) me.$set(row,"diff_amt",qty_needreturn_ * diff_price_) } else if(field == "a1_trans_price") { me.$set(this.formData,"trans_agreement_id",row[field]) this.a1label.map(e=>{ if(e.id == val) { row.a1_trans_price = e.supply_price //获å–A1çš„ç»“ç®—æ–¹å¼ row.trans_settle_type = e.settle_type_name //设置A1å‘è´§é‡‘é¢ row.a1_delivery_amt = toMoney(row.a1_trans_price * 1 * row.qty_needreturn); } }) } }, onpassApproval(){ /* if(!this.formData.charge_user){ Root.message({ type: 'warning', message: '请填写退货责任人' }) return; } */ this.textarea2 = ""; this.reasonvisible = true; this.passOrRefuse = true; }, onrefuseApproval(){ this.textarea2 = ""; this.reasonvisible = true; this.passOrRefuse = false; }, saveReason(){ document.getElementById('page_loading').style.display = "block"; if(this.passOrRefuse){ this.isLoading = true; this.passApproval('revocation',this.textarea2) }else{ if(this.textarea2 != ""){ this.isLoading = true; this.refuseApproval('revocation',this.textarea2) } else{ Root.message({ type: 'warning', message: 'è¯·å¡«å†™åŽŸå› ' }); document.getElementById('page_loading').style.display = "none"; } } }, passApproval(dataType_,reason_) { let me = this; if(me.formData.act_node_name == 'å•†åŠ¡å®¡æ ¸') { let arr = clone(this.tableData2); while(arr.length > 0) { let item = arr.pop(); let param_table = { isClientMode: false, id:item.id, detail_charge_user:item.detail_charge_user, dataname: "revocation_order_detail", } Server.call("root/data/updateEntity", param_table, function(result) { if(arr.length == 0) { me.passApproval_(dataType_,reason_) } }); } }else if(me.formData.act_node_name == 'æ•°æ®æœåŠ¡éƒ¨-æµå‘åŠSD管ç†å²—') { let arr = clone(this.tableData2); while(arr.length > 0) { let item = arr.pop(); let param_table = { isClientMode: false, id:item.id, inventory_cnt:item.inventory_cnt, dataname: "revocation_order_detail", } Server.call("root/data/updateEntity", param_table, function(result) { if(arr.length == 0) { me.passApproval_(dataType_,reason_) } }); } }else { me.passApproval_(dataType_,reason_) } }, passApproval_(dataType_,reason_) { var id = this.formData.id; let me = this; let subType = this.formData.sub_type; let dataType = "" if(subType instanceof Array) { subType = this.formData.sub_type[this.formData.sub_type.length-1]; dataType = this.formData.sub_type[0]; }else{ subType = this.formData.sub_type; dataType = this.formData.sub_type; } let param = { orderId:id, eventType:"approvalSuccess", dataType:dataType_, extra:{ variableMap:{ reason:reason_, businessType:this.formData.business_type, businessDepartType:this.formData.r_depart_type||"", controlType:this.formData.control_type, managerPartCode:this.formData.manager_part_code, departRevoType:this.formData.depart_revo_type, deliveryPartCode:this.formData.delivery_part_code, isOverDue:true, dataType:dataType, subType:subType, attachment:this.attachment||"", flowId:this.formData.flow_id || "" } }, isClientMode: false, } Server.call("root/order/onEvent", param, function(result) { console.log(result); if (result.success){ Root.message({ type: 'success', message: '审批æˆåŠŸ' }); } if(me.fromDing) { me.dingResult = true; me.dingResultTxt = "审批æˆåŠŸ" return; } me.reasonvisible = false; Root.tab.removeItem(Root.tab.selected); Root.tab.open(me.popupParames.parentOption, true); }, function(result) { Root.message({ type: 'warning', message: '审批失败' }); this.reasonvisible = false; Root.tab.removeItem(Root.tab.selected); Root.tab.open(me.popupParames.parentOption, true); }); }, //å®¡æ‰¹æ‹’ç» refuseApproval(dataType_,reason_) { let me = this; //var row = this.selectedrow; var id = this.formData.id; let subType = this.formData.sub_type; let dataType = "" if(subType instanceof Array) { subType = this.formData.sub_type[this.formData.sub_type.length-1]; dataType = this.formData.sub_type[0]; }else{ subType = this.formData.sub_type; dataType = this.formData.sub_type; } let param = { orderId:id, eventType:"approvalFail", dataType:dataType_, extra:{ variableMap:{ reason:reason_, businessType:this.formData.business_type, businessDepartType:this.formData.r_depart_type||"", controlType:this.formData.control_type, managerPartCode:this.formData.manager_part_code, departRevoType:this.formData.depart_revo_type||"", deliveryPartCode:this.formData.delivery_part_code, isOverDue:true, dataType:dataType, subType:subType, attachment:this.attachment||"", flowId:this.formData.flow_id || "" } }, isClientMode: false, } Server.call("root/order/onEvent", param, function(result) { console.log(result); Root.message({ type: 'success', message: 'æ‹’ç»å®¡æ‰¹æˆåŠŸ' }); this.reasonvisible = false; if(me.fromDing) { me.dingResult = true; me.dingResultTxt = "æ‹’ç»å®¡æ‰¹æˆåŠŸ" return; } Root.tab.removeItem(Root.tab.selected); Root.tab.open(me.popupParames.parentOption, true); }, function(result) { Root.message({ type: 'warning', message: '审批失败' }); this.reasonvisible = false; Root.tab.removeItem(Root.tab.selected); Root.tab.open(me.popupParames.parentOption, true); }); }, submitRowTable() { if(this.formData.has_gsp && this.expiredLicense) { Root.message({ type: 'warning', message: '资质è¯ç…§è¿‡æœŸ,æ— æ³•æäº¤' }); return; } this.formData.continueCommit = true; this.saveRowTable(); }, saveRowTable() { let me = this; if (this.tableData2.length == 0 ) { Root.message({ type: 'warning', message: '请选择退货明细' }); return; } let isDistributor = localStorage.isdistributor; let typeReason = ""; if(this.formData.sub_type instanceof Array) { if(this.formData.sub_type[0] == "2"){//A2 typeReason = "2" }else if(this.formData.sub_type[0] == "3"){//A1 typeReason = "3" }else(//退货 typeReason = "1" ) if (this.formData.sub_type[0] == "2" && this.formData.sub_type[1] == "2-2" && !this.formData.ticket_discount_type) { this.isLoading = false; Root.message({ type: 'warning', message: '请选择票折类型' }); return; } } if(typeReason == "3") { if(!this.formData.trans_agreement_id) { this.isLoading = false; Root.message({ type: 'warning', message: '请选择A1客户或A1ä»·æ ¼' }); return; } } /* sensitiveWord(me,this.formData.remark, results => { if(!checkMenus) { return; } }); */ /* var url = "stock/sensitiveWord/check"; var param_ = { isClientMode: false, text:this.formData.remark } Server.call(url, param_, function(result) { if (data.data.check){ }else{ Root.message({ type: 'warning', message: data.data.data.msg }); return } },function(errorresult) { }); */ let url = window.top.RootSetting.url_stock + "sensitiveWord/check"; axios.post(url, { isClientMode: false, text:this.formData.remark }) .then(data => { if (data.data.data.checked){ }else{ Root.message({ type: 'warning', message: data.data.message }); return } }) .catch( (error) => { console.log(error); }); var array_ = []; for (var i = 0;i< this.tableData2.length;i++) { var row = this.tableData2[i]; var row_ = {}; if(!row.detail_charge_user && !isDistributor) { Root.message({ type:"warning", message:'第 ' + (i+1) + 'æ¡æ˜Žç»†: 请填写退货责任人' }) return; } row_.detailChargeUser = row.detail_charge_user; row_.id = row.id?row.id:""; if(typeReason == '3'){ row_.transAgreementRecordId = this.formData.trans_agreement_id?this.formData.trans_agreement_id:""; }else if(typeReason == '2') { if(!row.old_discount_amt && (row.old_discount_amt != 0 || row.old_discount_amt != "0")) { me.isLoading = false; Root.message({ type: 'warning', message: '第 ' + (i+1) + 'æ¡æ˜Žç»†: 请填写原折让å°è®¡' }); return; } if(!row.current_discount_amt && (row.current_discount_amt != 0 || row.current_discount_amt != "0")) { me.isLoading = false; Root.message({ type: 'warning', message: '第 ' + (i+1) + 'æ¡æ˜Žç»†: 请填写现折让å°è®¡' }); return; } if(!row.trans_agreement_record_id) { me.isLoading = false; Root.message({ type: 'warning', message: '第 ' + (i+1) + 'æ¡æ˜Žç»†: è¯·å¡«å†™è°ƒè´§ä»·æ ¼' }); return; } if(!row.diff_price) { me.isLoading = false; Root.message({ type: 'warning', message: '第 ' + (i+1) + 'æ¡æ˜Žç»†: 请填写补差å•ä»·' }); return; } if(!row.detail_remark) { me.isLoading = false; Root.message({ type: 'warning', message: '第 ' + (i+1) + 'æ¡æ˜Žç»†: 请填写明细备注' }); return; } row_.transAgreementRecordId = row.trans_agreement_record_id?row.trans_agreement_record_id:""; row_.diffAmt = row.diff_amt.toFixed(4) row_.diffDate = dateFormat(row.diff_date,'yyyy-MM-dd'); row_.oldDiscountAmt = row.old_discount_amt row_.currentDiscountAmt = row.current_discount_amt row_.detailRemark = row.detail_remark row_.diffPrice = row.diff_price.toFixed(4) }else { if(!row.revo_remark) { me.isLoading = false; Root.message({ type: 'warning', message: '第 ' + (i+1) + 'æ¡æ˜Žç»†: è¯·å¡«å†™é€€è´§åŽŸå› ' }); return; } } if(row.revo_remark) { row_.revoRemark = row.revo_remark; } if(row.inventory_cnt) { row_.inventoryCnt = row.inventory_cnt; } row_.deliveryDetailId = row.deliveryOrderDetailId; let reg = /^[1-9][0-9]*$/ if(!reg.test(row.qty_needreturn)) { me.isLoading = false; Root.message({ type: 'warning', message: '请填写退货数é‡' }); return; } //row_.transPrice = row.a2_product_price; row_.cnt = row.qty_needreturn; row_.warehouseCode = "1"; row_.batchNO = row.deo_batch_no ? row.deo_batch_no:""; row_.a1TransPrice = row.a1_trans_price ? row.a1_trans_price: 0; row_.transSettleType = row.trans_settle_type ? row.trans_settle_type : ""; array_.push(row_); } let subType = this.formData.sub_type; if(subType instanceof Array) { subType = this.formData.sub_type[this.formData.sub_type.length-1]; }else subType = this.formData.sub_type; document.getElementById('page_loading').style.display = "block"; var remark_ = ""; if (this.formData.remark) { remark_ = this.formData.remark; //åŽ»é™¤ä¸¤ç«¯çš„ç©ºæ ¼ remark_ = remark_.replace(/(^\s*)|(\s*$)/g, ""); //å°†æ‰€æœ‰ç©ºæ ¼æ”¹æˆä¸æ–‡é€—å·ï¼› remark_ = remark_.replace(/\s/g,","); } let param = { isClientMode: false, id: this.formData.id ? this.formData.id : "", salesOrderId:this.formData.deo_id || "", fileId:this.formData.file_id || "", deliveryDetailId:this.formData.deo_id || "", businessDepartId:this.formData.business_depart_id, businessType:this.formData.business_type || "", settleType:this.formData.settle_type || "", roProxy:this.formData.ro_proxy || false, controlType:this.formData.control_type || "", deliveryPartCode:this.formData.delivery_part_code, deliveryPartName:this.formData.delivery_part_name, managerPartCode:this.formData.manager_part_code, customerId:this.formData.customer_id, customerName:this.formData.customer_name, customerCode:this.formData.customer_code, transAgreementId:this.formData.trans_agreement_id || "", //如果是调货 dataType:typeReason, subType:subType, remark: remark_, bizDate:this.formData.biz_date, ticketDiscountType:this.formData.ticket_discount_type || "", customerRecordProvinceCode: this.formData.customer_record_province_code, customerRecordProvinceName: this.formData.customer_record_province_name, detailList:array_, } if(this.formData.withdraw) { param.status = "input" } this.isLoading = true; Server.call("root/order/saveRevocationOrder", param, function(result) { console.log(result); if(result.success){ if(me.formData.continueCommit){ let param = { orderId:result.data.id, eventType:"commit", dataType:"revocation", isClientMode: false, extra:{ variableMap:{ province:me.formData.province_code||"", businessType:me.formData.business_type|| "", departRevoType:me.formData.depart_revo_type, ticketDiscountType: me.formData.ticket_discount_type || "", subType:subType, subDataType:typeReason, dataType:typeReason, flowId:me.formData.flow_id || "" } }, } Server.call("root/order/onEvent", param, function(result) { console.log(result); Root.message({ type: 'success', message: 'æäº¤æˆåŠŸ' }); if(me.formData.withdraw && me.formData.id) { let param = { isClientMode:false, dataname:"revocation_order", id:me.formData.id, withdraw:0 } Server.call("root/data/updateEntity",param,function(result) { }) } Root.tab.removeItem(Root.tab.selected); Root.tab.open(me.popupParames.parentOption, true); },function(result){ document.getElementById('page_loading').style.display = "none"; me.isLoading = false; Root.message({ type: 'warning', message: result.message }); }); }else{ Root.message({ type: 'success', message: 'ä¿å˜æˆåŠŸ' }); Root.tab.removeItem(Root.tab.selected); Root.tab.open(me.popupParames.parentOption, true); } }else{ document.getElementById('page_loading').style.display = "none"; me.isLoading = false; Root.message({ type: 'warning', message: result.message }); } },function(result){ document.getElementById('page_loading').style.display = "none"; me.isLoading = false; Root.message({ type: 'warning', message: result.message }); }); }, rowChange(row, type) { //tc var id_ = row.id; if (this.tableDataChange[id_]) { this.tableDataChange[id_].data = row; } else { var changeRow_ = { type: type, data: row }; this.tableDataChange[id_] = changeRow_; } //t2 if (type == "add") { this.tableData2.unshift(row); this.selectrow = row; } else if (type == "del") { this.tableData2.remove(row); } /* var sum_noRate_ = 0 ; var formData_ = clone(this.formData); this.tableData2.map(e=>{ sum_noRate_ += (e.price_return ? e.price_return : 0 ) * 1; }) formData_.return_amt = sum_noRate_; this.formData = formData_; */ this.isRefresh = true; //this.$refs.form1.refresh(); }, rowDBClick(scope) { this.editData(scope) }, editData(scope) { if (this.selectrow != {} && this.selectrow.isWithinEdit) { this.selectrow.isWithinEdit = false; } if(this.selectrow == scope.row ){ scope.row.isWithinEdit = false; this.selectrow = {}; }else{ this.selectrow = scope.row; this.selectedrow = clone(scope.row); scope.row.isWithinEdit = scope.row.isWithinEdit ? false : true; } this.isRefresh = false; this.$nextTick(function(){ this.isRefresh = true; }) }, delData(scope) { let me = this; let row = scope.row; let index_ = scope.$index; Root.confirm('ç¡®å®šåˆ é™¤-' + row.product_name + '-å—?', 'åˆ é™¤æç¤º', { confirmButtonText: 'åˆ é™¤', cancelButtonText: 'å–æ¶ˆ', type: 'warning' }).then(() => { if (row.id) { let param1 = { filter:{ id: row.id }, isClientMode: false, dataname: 'revocationOrderDetail', } Server.call("root/data/deleteEntitySet", param1, function(result) { }); } me.rowChange(row, "del"); Root.message({ type: 'success', message: 'åˆ é™¤æˆåŠŸ!' }); }).catch(() => { Root.message({ type: 'info', message: '已喿¶ˆåˆ 除' }); }); }, cellInputChange(scope) { let row = scope.row; let me = this; let field = scope.column.property; let qty_needreturn_ = parseFloat(row.qty_needreturn); let old_discount_amt_ = parseFloat(row.old_discount_amt) let current_discount_amt_ = parseFloat(row.current_discount_amt) let a2_product_price_ = parseFloat(row.a2_product_price) if(!row.qty_needreturn) qty_needreturn_ = 0 if(!row.old_discount_amt) old_discount_amt_ = 0 if(!row.current_discount_amt) current_discount_amt_ = 0 if(!row.a2_product_price) a2_product_price_ = 0 if(field == "qty_needreturn" || field == "old_discount_amt" || field == "current_discount_amt") { let diff_price_ = 0; diff_price_ = parseFloat(row.product_price) - a2_product_price_ - old_discount_amt_ + current_discount_amt_ me.$set(row,"diff_price",diff_price_) me.$set(row,"diff_amt",qty_needreturn_ * diff_price_) } if(field == "qty_needreturn") { if(parseInt(row.qty_needreturn) > parseInt(row.qty_canReturn)) { Root.message({ type:"warning", message:"退货数é‡å¤§äºŽæ”¶è´§æ•°é‡" }) me.$set(row,"qty_needreturn",0) row.qty_needreturn = 0; return; } } if (field == "qty_needreturn" && row.a1_trans_price) { //设置A1å‘è´§é‡‘é¢ row.a1_delivery_amt = toMoney(row.a1_trans_price * 1 * row.qty_needreturn); } //this.isRefresh = true; this.rowChange(row, "up"); }, // cellClick(obj) { // /* if(obj.column.property == "product_name") { // this.selectrow = obj.row; // this.showPic("showPic", obj.row); // } */ // }, onCellClick(config, obj) { var row = obj.row ? obj.row : {}; if(obj.tableField.field == "attachment_name" && obj.row.attachment){// var fileid = obj.row.attachment; let arr = obj.row.attachment_name.split("."); let flix = arr[arr.length-1]; if(flix == 'pdf' || flix == 'png' || flix == 'jpg') { let url = "../tool/popup_file_pdf.html"; let row = { filename:obj.row.attachment_name, fileid:fileid } var config = { totab: false, icon: "icon-product", text: "附件预览", url: url, data: row, width:1100, delta: null, callback: function(obj, callback) { if (callback) { callback(); } } }; this.doPopupByPublic(config); }else handleDownload(fileid); } return false; }, onPopupByUploadFileAll() { var me = this; this.attachment = ""; this.attachment_name = ""; var config = { totab: false, width: "1500px", icon: "icon-product", text: "é™„ä»¶ä¸Šä¼ ", id: "popupByUploadFile", url: "../tool/popup_uploadFile.html", data: {}, delta: {filetypelist: []}, callback: function(obj, callback) { var file_ = obj.row[0]; me.attachment = file_.id; me.attachment_name = file_.name; if (callback) { callback(); } } }; this.doPopupByPublic(config); }, showPic(code, row) { Root.popupParames = { url: "../md/product/sku/pic_list.html", }; Root.showPopup(Root.popupParames); }, showPopup(obj) { let list=this.customerList; this.selectFormField = obj.obj; if (this.selectFormField.field == "customer_code" || this.selectFormField.field == "customer_name") { let me = this; let filter_ = "1=1"; if (this.isWLGLB) { filter_ = " sales_order.business_type = '2' and " } else { filter_ = " sales_order.business_type = '1' and (sales_order.create_operate_code = '" + window.top.userinfo.employee.code + "' or sales_order.operate_emp_code = '" + window.top.userinfo.employee.code + "' or a1.link like '%" + window.top.userinfo.employee.code + "%') and checkout_status <> 0 and " } Root.showPopup({ url: "../md/customer/popup/customer_list.html?v=0517", width: 800, height: 550, dataname:"getDeliveryOrderDelivery", filter:filter_, delivery_part_code:this.formData.delivery_part_code, delivery_id:this.formData.deo_id?this.formData.deo_id:"", callback: function(obj, callback) { let formData_ = clone(me.formData); formData_.customer_name = obj.row.customer_name; formData_.customer_code = obj.row.customer_code; formData_.customer_id = obj.row.customer_id; //formData_.trans_customer_code = ''; //formData_.trans_customer_name = ''; //formData_.trans_agreement_id = ''; //formData_.delivery_part_name = ''; //formData_.delivery_part_code = ''; //formData_.revocation_address = ''; me.tableData2 = []; me.formData = formData_; if (callback) { callback(); } } }); } if (this.selectFormField.field == "trans_customer_name") { if (!this.formData.delivery_part_name) { Root.message({ type: 'warning', message: '请选择å‘货主体' }); return; } if (this.tableData2.length <1) { Root.message({ type: 'warning', message: '请选择å‘è´§å•' }); return; } let str = '' for (var i = 0; i < this.tableData2.length; i++) { if(str.indexOf("'" + this.tableData2[i].product_code + "'") == -1) { str += "'" + this.tableData2[i].product_code + "'" +"," } } str = str.substring(0,str.length-1); let me = this; Root.showPopup({ url: "../md/customer/popup/customer_list.html?v=0517", width: 800, height: 550, customer_code:this.formData.customer_code, delivery_part_code:this.formData.delivery_part_code, product_codes:str, dataname:"A1CustomerSimple", callback: function(obj, callback) { let formData_ = clone(me.formData); formData_.trans_customer_code = obj.row.md_code; formData_.trans_customer_name = obj.row.md_description; me.formData = formData_; //me.tableData2 = []; if (callback) { callback(); } } }); } if (this.selectFormField.field == "delivery_part_name") { let me = this; let filter_ = "delivery_order.withdraw <> 1 and "; if(this.formData.customer_code) { filter_ += " delivery_order.customer_code = '" + me.formData.customer_code + "' and " } if (this.isWLGLB) { filter_ = " sales_order.business_type = '2' and " } else { filter_ = " sales_order.business_type = '1' and (sales_order.create_operate_code = '" + window.top.userinfo.employee.code + "' or sales_order.operate_emp_code = '" + window.top.userinfo.employee.code + "' or a1.link like '%" + window.top.userinfo.employee.code + "%') and checkout_status <> 0 and " } //filter_ += " (sales_order.create_operate_code = '" + window.top.userinfo.employee.code + "' or sales_order.operate_emp_code = '" + window.top.userinfo.employee.code + "') and " Root.showPopup({ url: "../order/sorder/popup/sorder_deliverylist.html", width: 800, height: 550, type: "delivery", filter: filter_, callback: function(obj, callback) { let formData_ = clone(me.formData); formData_.business_depart_id = obj.row.business_depart_id; formData_.delivery_part_name = obj.row.delivery_part_name; formData_.delivery_part_code = obj.row.delivery_part_code; formData_.revocation_address = obj.row.revocation_address; /* formData_.revocation_address = obj.row.revocation_address; formData_.customer_name = obj.row.customer_name; formData_.customer_code = obj.row.customer_code; formData_.business_type = obj.row.business_type; formData_.settle_type = obj.row.settle_type; formData_.control_type = obj.row.control_type; formData_.deo_raw_code = obj.row.deo_raw_code; formData_.deo_factory_no = obj.row.deo_factory_no; formData_.manager_part_code = obj.row.manager_part_code; formData_.customer_id = obj.row.customer_id; formData_.business_depart_id = obj.row.business_depart_id; formData_.province_code = obj.row.province_code; formData_.depart_revo_type = obj.row.depart_revo_type; formData_.deo_id = obj.row.deo_id; formData_.so_id = obj.row.id; formData_.book_no = obj.row.book_no; formData_.has_gsp = obj.row.has_gsp; formData_.operate_emp_code = obj.row.operate_emp_code; formData_.tax_rate = obj.row.tax_rate; */ //formData_.trans_customer_code = ''; //formData_.trans_customer_name = ''; //formData_.trans_agreement_id = ''; //me.tableData2 = []; me.formData = formData_; me.checkCustomerAndDelivery(callback) } }); } }, buttonClick(obj) { if (obj.obj.field == "file_name") { //åˆåŒ let me = this; this.doPopup({ totab: false, width: "1500px", icon: "icon-product", text: "é™„ä»¶ä¸Šä¼ ", id: "popupByUploadFile", url: "../tool/popup_uploadFile.html", data: {}, delta: { filetypelist: [".png", ".jpg", ".pdf"] }, callback: function(obj, callback) { let formData_ = clone(me.formData); formData_.file_id = obj.row[0].id formData_.file_name = obj.row[0].name me.formData = formData_; if (callback) { callback(); } } }); } }, formcallspanClick(obj) { if (obj.obj.field == "file_name" && this.formData.file_id) { this.onDownloadFileByFileId(this.formData.file_id, this.formData.file_name); } }, onDownloadFileByFileId(file_id, file_name) { var clickContext = {}; var row_ = {}; if (!file_id) { Root.message({ type: 'warning', message: '没有附件文件' }); return } //////////// let fileid = clone(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") { var fileids_ = []; fileids_.push(fileid) row_ = { filetype: "img", fileids: fileids_ }; clickContext.url = "../tool/popup_file.html"; var config = { icon: "icon-product", text: "附件预览", id: "img_" + fileid, url: "../tool/popup_file.html", data: row_, delta: {}, callback: function(obj, callback) { if (callback) { callback(); } } }; this.doPopup(config); return } else if (suffix == ".pdf") { var row = { fileid: fileid, filename: fileName } var config = { icon: "icon-product", text: "附件预览", id: "pdf_" + fileid, url: "../tool/popup_file_pdf.html", data: row, delta: {}, callback: function(obj, callback) { if (callback) { callback(); } } }; this.doPopupByPublic(config); return; } else { //åªå¯ä¸‹è½½ï¼Œä¸å¯é¢„览 handleDownload(fileid); } }, showOrder(obj) { let me = this; let formData_ = clone(me.formData); if(!formData_.delivery_part_name){ Root.message({ type: 'warning', message: '请选择å‘货主体' }); return; }else if(!formData_.customer_code ){ Root.message({ type: 'warning', message: '请选择客户' }); return; }else if(!formData_.sub_type || formData_.sub_type.length == 0){ Root.message({ type: 'warning', message: 'è¯·é€‰æ‹©é€€è´§åŽŸå› ' }); return; } /* if(formData_.sub_type && formData_.sub_type.indexOf("3") > -1 && !formData_.trans_customer_name){ Root.message({ type: 'info', message: '请选择A1客户' }); return; } */ let filter_order = " sales_order.delivery_part_code = '"+ formData_.delivery_part_code +"' and sales_order.customer_code = '" + formData_.customer_code + "'"; if (this.isWLGLB) { filter_order += " and sales_order.business_type = '2'" } else { filter_order += " and (sales_order.create_operate_code = '" + window.top.userinfo.employee.code + "' or sales_order.operate_emp_code = '" + window.top.userinfo.employee.code + "' or (a1.link like '%" + window.top.userinfo.employee.code + "%' and sales_order.business_type = '1')) " } //filter_order += " and (sales_order.create_operate_code = '" + window.top.userinfo.employee.code + "' or sales_order.operate_emp_code = '" + window.top.userinfo.employee.code + "')" filter_order += " and delivery_order_detail.checkout_cnt > 0" if(this.tableData2.length > 0) { let str = " and delivery_order_detail.id not in ('"; for (var i = 0; i < this.tableData2.length; i++) { if(i == this.tableData2.length-1) str += this.tableData2[i].deliveryOrderDetailId + "')" else str += this.tableData2[i].deliveryOrderDetailId + "','" } //str += " and delivery_order_detail.parent_id = '" + this.formData.deo_id + "'" filter_order += str; } let trans_customer_code = '%' if(this.formData.trans_customer_code) trans_customer_code = this.formData.trans_customer_code Root.showPopup({ url: "../order/sorder/popup/sorder_deliverylist.html", width: 900, height: 600, type: "return", filter: filter_order, //trans_customer_code:trans_customer_code, callback: function(array, callback) { if (array.length > 0) { for (var i = 0; i<array.length; i++) { if(array[i].qty_needReturn > 0){ let row_ = { //id: array[i].deliveryorderdetailid, //parentid: formData_.id, code:array[i].code, product_name:array[i].product_name, deo_raw_code:array[i].deo_raw_code, deo_factory_no:array[i].deo_factory_no, product_code:array[i].product_code, product_spec:array[i].product_spec, deo_batch_no:array[i].batch_no, qty_needreturn:array[i].qty_needReturn, price_return:array[i].product_price * array[i].qty_needReturn, product_price:array[i].product_price, deliveryOrderDetailId :array[i].deliveryorderdetailid, settle_type:array[i].settle_type, checkout_cnt:array[i].checkout_cnt, qty_canReturn:array[i].qty_canReturn, revocation_delivery_cnt:array[i].return_qty, pre_settle_type_name: array[i].pre_settle_type_name, isWithinEdit:true }; if(array[i].proxy_order) { formData_.ro_proxy = true; } me.selectedrow = row_;//selectedrow selectrow me.rowChange(row_, "add"); }else{ Root.message({ type: 'info', message: 'å¯é€€è´§æ•°é‡ä¸º0' }); } } formData_.revocation_address = array[0].revocation_address; formData_.customer_name = array[0].customer_name; formData_.customer_code = array[0].customer_code; formData_.business_type = array[0].business_type; formData_.settle_type = array[0].settle_type; formData_.control_type = array[0].control_type; formData_.deo_raw_code = array[0].deo_raw_code; formData_.deo_factory_no = array[0].deo_factory_no; formData_.manager_part_code = array[0].manager_part_code; formData_.customer_id = array[0].customer_id; formData_.business_depart_id = array[0].business_depart_id; formData_.province_code = array[0].province_code; formData_.business_depart_code = array[0].business_depart_code; formData_.depart_revo_type = array[0].depart_revo_type; formData_.deo_id = array[0].deo_id; formData_.so_id = array[0].id; formData_.book_no = array[0].book_no; formData_.has_gsp = array[0].has_gsp; formData_.operate_emp_code = array[0].operate_emp_code; formData_.tax_rate = array[0].tax_rate; //formData_.customercode = array[0].customercode; //formData_.customername = array[0].customername; formData_.orderid = array[0].orderid; formData_.trans_customer_code = ""; formData_.trans_customer_name = ""; formData_.trans_agreement_id = ""; /* var sum_noRate_ = 0 ; me.tableData2.map(e=>{ sum_noRate_ += (e.price_return ? e.price_return : 0 ) * 1; }) formData_.return_amt = sum_noRate_; */ me.formData = formData_; me.tableData2.map(t=>{ t.a1_trans_price = 0; t.a1_delivery_amt = 0; t.trans_settle_type = ""; }); me.showCustomer(); } if (callback) { callback(); } } }); }, getDaysTrans(provinceCode, index) { let me = this let param = { dataName: 'mdTransday', filter: "province_code='" + provinceCode + "'" } Server.call("root/data/getEntitySet", param, function(result) { let tableData = clone(me.tableData) if (result.data && result.data.entityset && result.data.entityset.length > 0) { tableData[index]['days_trans'] = result.data.entityset[0].days } else { tableData[index]['days_trans'] = 0 } tableData[index]['peroid_payment'] = parseInt(tableData[index]['days_payment'] || 0) + tableData[index]['days_trans'] me.tableData = tableData }); }, getOldData(idStr) { let me = this let param = { dataName: 'agm_record_syzc', filter: "ar.id in (" + idStr + ")", token: this.popupParames.token } Server.call("rootjemin/data/getEntitySet", param, function(result) { if (result.success) { let tableData = result.data.entityset if (tableData.length > 0) { let idArr = idStr.replaceAll("'", "").split(',') let tableData_ = [] idArr.map(s => { tableData_.push(tableData.filter(x => x.id == s)[0]) }) if (me.popupParames.sceneCode == "changeEdit") { me.tableData_old = tableData_ } else { var tableDataOldObj_ = {}; tableData_.map(entity=>{ let row_ = clone(entity); if (row_.start_date) { row_.start_date = row_.start_date.split(' ')[0] } if (row_.end_date) { row_.end_date = row_.end_date.split(' ')[0] } if (row_.termination_date) { row_.termination_date = row_.termination_date.split(' ')[0] } tableDataOldObj_[me.tableDataObj[row_.id]] = row_; }) me.tableDataOldObj = clone(tableDataOldObj_); me.tableData = tableData_ let tableData = clone(me.tableData) let tableData2 = clone(me.tableData2) tableData.map(s => { tableData2.map(x => { if (x.old_id == s.id) { if (!s.termination_date) { s.termination_date = JSON.parse(JSON.stringify(x.termination_date)) x.termination_date = "" } } }) }) me.tableData = tableData me.tableData2 = tableData2 } } } }); }, getApprovalHisInfo(flowId) { let me = this if (!flowId) { return } let param = { flowId: flowId, token: this.popupParames.token } Server.call("jeminact/root/order/getHistoryTask", param, function(result) { if (result.success) { let tableData = [] tableData = result.data.entityset tableData.map(s => { s.pass = !s.pass && s.pass !== 0? '' : s.pass == '1'? 'åŒæ„' : 'æ‹’ç»' s.user_name = s.user_name? s.user_name : '已完æˆ' }) me.tableData3 = tableData } }); }, showCustomer() { if (this.formData.customername) { filter_customer = "name = '" + this.formData.customername + "'" var formData_ = clone(this.formData); var me = this; let param_table = { isClientMode: false, dataname: "vCustomer", filter: filter_customer, } Server.call("root/data/getEntitySet", param_table, function(result) { var customerDetail = result.data.entityset[0]; formData_.customerid = customerDetail.id; me.formData = formData_; }); } } } }); </script> <style> .header { height: 21px; } .el-dialog_header { padding: 10px 20px; border-bottom: 1px solid #ccc; right: 10px; left: 10px; top: 0px; /* position: fixed; */ } .el-dialog_body{ padding: 20px; overflow-y: hidden; right: 10px; left: 10px; top: 42px; bottom: 50px; /* position: fixed; */ } .el-dialog_footer { padding: 10px 20px; border-top: 1px solid #ccc; right: 10px; left: 10px; bottom: 0px; position: fixed; background-color: #fff; z-index: 10; text-align: right; } .el-table .cell.el-tooltip { white-space: normal; min-width: 50px; } .h_table .el-table { margin-bottom: 50px; } .el-dialog__body { overflow-y: visible; } /* 纵å‘: */ /* @page { size: portrait; } */ /* 横å‘: */ @page { size: landscape; } @media print{ .el-dialog_footer{ display:none } .popup-close{ display:none } .approval_button{ display:none } } @page { margin-top: 0; margin-bottom: 0 } </style> </body> </html>