From 38f00f0f0b95e80e20caa9cf5e5e485d0425b8c9 Mon Sep 17 00:00:00 2001 From: tom <tom.he@highdatas.com> Date: 星期四, 01 八月 2024 22:30:40 +0800 Subject: [PATCH] tj --- module/md/page/customer/page/customer_basic.html | 28 module/md/page/customer/page/404.html | 2564 +++++++++++++++++++++++++++++++++++++++++++++++++++++ module/md/page/customer/page/customer_basic_acct.html | 268 +++-- 3 files changed, 2,731 insertions(+), 129 deletions(-) diff --git a/module/md/page/customer/page/404.html b/module/md/page/customer/page/404.html new file mode 100644 index 0000000..311cc90 --- /dev/null +++ b/module/md/page/customer/page/404.html @@ -0,0 +1,2564 @@ +<!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: "agm_agreement", + title: "鍗忚淇℃伅", + + formAttr: { + istitle: false, + title: "琛ㄥ崟鍚嶇О", + columnnumber: 4, + labelwidth: "100px", + labelposition: "left",//"left",// right//top + size: "mini", + border: "10px solid #c6c6c600" + }, + formFields: [], + newformData: { + // agreement_no: createCode("XY"), + state_code: "Input", + state_name: "褰曞叆", + is_generate: false, + // creator_id: + }, + formData: {}, + //瀛楁璁剧疆 + formfieldClick: {}, + + //鎸夐敭鏉冮檺璁剧疆 + isedit: false,//鎻愪氦鍓嶇紪杈戯紝淇濆瓨/鎻愪氦 + isrefuseedit: false,//鎷掔粷鍚庣紪杈戯紝淇濆瓨/鍐嶆鎻愪氦 + isapproval: false,//瀹℃壒锛屽悓鎰�/鎷掔粷/杞姙/閫�鍥� + iscommit: false,//鎻愪氦鏍囪 + loading_save: false, + + //瀹℃壒鐩稿叧鍙橀噺 + reasonvisible:false,//瀹℃壒閫氳繃鎴栨嫆缁濆~鍐欏師鍥� + approveremark: '',//濉啓鐞嗙敱 + passOrRefuse:false, + loading_pass: false, + + //楂樺害 + p_height: null, + + //寮圭獥鍙傛暟 + popupParames: {}, + + dataRequest: [ + { + name: "agm_category", // 鍗忚绫诲瀷涓嬫媺 + //url: "root/front/getOneDictionary", + //paramsobj: { code: "OrgType", }, + isnotoption: false, //true:涓嶆槸閫夐」 + code:"id",//鏄笅鎷夐�夐」鏃惰缃� + label:"name",//鏄笅鎷夐�夐」鏃惰缃� + }, + + { + name: "md_bu_product", // 浜у搧涓嬫媺椤� + dataname: "md_bu_product", + isnotoption: false, //true:涓嶆槸閫夐」 + code:"id",//鏄笅鎷夐�夐」鏃惰缃� + label:"product_name",//鏄笅鎷夐�夐」鏃惰缃� + filter: "", + orderby: "product_name" + }, + { + name: "md_geo_province", // 鐪佷唤涓嬫媺椤� + dataname: "md_geo_province", + isnotoption: false, //true:涓嶆槸閫夐」 + code:"name",//鏄笅鎷夐�夐」鏃惰缃� + label:"name",//鏄笅鎷夐�夐」鏃惰缃� + filter: "", + orderby: "name" + }, + ], + + copyAdd: false, + formDatas_old: [], + + isRefresh: true, + tabs: [ + {code: "tab1", name: "浜у搧/鍖哄煙", dataname: "", filterTxt: "", orderby: "", + tableFields: [ + {isshow: "T", field: "product_id", name: "浜у搧鑼冨洿", type: "cascader", options: [], props:{label: "value", value: "code", multiple: true}, colspan: 2, required: true}, + {isshow: "T", field: "province", name: "閿�鍞渷浠�", type: "cascader", options: [], props:{label: "value", value: "code", multiple: true}, colspan: 2}, + ], + formData: { + province: [], + product_id: [], + }, + formAttr: { + istitle: false, + title: "琛ㄥ崟鍚嶇О", + columnnumber: 2, + labelwidth: "100px", + labelposition: "left",//"left",// right//top + size: "mini", + border: "10px solid #c6c6c600", + disabled: false + }, + }, + // {code: "tab2", name: "绛剧害鍖婚櫌", dataname: "md_org_account_hospital", filterTxt: "1<>1", orderby: "", + // tableFields: [], + // tableData: [], + // tablefieldClick: {}, + // tablebuttonClick: {}, + // }, + {code: "tab3", name: "绛剧害鍖婚櫌", dataname: "md_target_dealer", filterTxt: "1<>1", orderby: "", + tableFields: [], + tableData: [], + tablefieldClick: {}, + tablebuttonClick: {}, + }, + // {code: "tab4", name: "浠锋牸鏀跨瓥", dataname: "md_prod_price_detail", filterTxt: "1<>1", orderby: "", + // tableFields: [], + // tableData: [], + // tablefieldClick: {}, + // tablebuttonClick: {}, + // }, + // {code: "tab6", name: "涔拌禒鏀跨瓥", dataname: "agm_record_gift", filterTxt: "1<>1", orderby: "", + // tableFields: [], + // tableData: [], + // tablefieldClick: {}, + // tablebuttonClick: {}, + // }, + // {code: "tab7", name: "鎶樻墸鏀跨瓥", dataname: "agm_record_rate", filterTxt: "1<>1", orderby: "", + // tableFields: [], + // tableData: [], + // tablefieldClick: {}, + // tablebuttonClick: {}, + // }, + // {code: "tab5", name: "闄勪欢", dataname: "md_sku", filterTxt: "1<>1", orderby: ""}, + + ], + activeTabName:"", + selectTabObj: {}, + TabObjMap: {}, + + productobj_map: {}, + md_bu_product_obj: {}, // 浜у搧鑼冨洿涓嬫媺 + options_tree_province: [], // 鍖哄煙鐪佷唤涓嬫媺 + + options_category: [], + options_categoryobj: {}, + options_template: [], + options_templateobj: {}, + + old_agm_record_product_obj: {}, + old_agm_record_province_obj: {}, + }, + created() { + 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.popupParames.delta || this.popupParames.delta.rows) { + this.formDatas_old = clone(this.popupParames.delta.rows); + // console.log(this.formDatas_old); + } + + if (this.popupParames.sceneCode) { + if (this.popupParames.sceneCode == "add") {//鏂板 + //鍔ㄦ�佽幏鍙栭粯璁ゆ暟鎹� + var newEntity_ = { + name: "newEntity", + url: "root/data/newEntity", + paramsobj: {dataname: this.dataname}, + isnotoption: true, //true:涓嶆槸閫夐」 + } + this.dataRequest.push(newEntity_); + this.isedit = true; + } + else if (this.popupParames.sceneCode == "browse") {//鍙 + this.formAttr.disabled = true; + this.tabs[0].formAttr.disabled = true; + } + else if (this.popupParames.sceneCode == "copyAdd") {//鍙 + this.copyAdd = true; + this.isedit = true; + } + else if (this.popupParames.sceneCode == "edit") {//缂栬緫 + this.isedit = true; + } + else if (this.popupParames.sceneCode == "change") {//鍙樻洿 + this.formAttr.disabled = true; + this.tabs[0].formAttr.disabled = true; + } + else if (this.popupParames.sceneCode == "approval") {//瀹℃壒 + this.formAttr.disabled = true; + this.isapproval = true; + this.tabs[0].formAttr.disabled = true; + } + else if (this.popupParames.sceneCode == "refuseedit") {//鎷掔粷鍚庣殑缂栬緫 + this.isrefuseedit = true; + } + } + }, + + mounted() { + this.activeTabName = "tab1"; + var me = this; + me.p_height = document.documentElement.clientHeight*1 - 91; + + //棰勫姞杞芥暟鎹� + if (this.dataRequest && this.dataRequest.length) { + var result = {}; + this.loadRequestData(this.dataRequest, result, function(data) { + me.dataRequestObj = data; + //棰勫姞杞芥暟鎹悗缁欏摢浜涘瓧娈佃缃畂ptions鎴杅ormatterjson + if (me.dataRequestObj.newEntity) { + var formData = clone(me.dataRequestObj.newEntity.data[me.dataname]); + // formData.product_category_name = []; + 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 (data.agm_category) { + data.agm_category.map(c=>{ + me.options_categoryobj[c.id] = c; + }) + + let agm_category_ = ArrayToTree(clone(data.agm_category), "name", "parent_id"); + me.options_category = agm_category_; + } + + // 浜у搧鑼冨洿涓嬫媺 + if (me.dataRequestObj.md_bu_product) { + var md_bu_product_array_ = clone(me.dataRequestObj.md_bu_product); + var md_bu_product_obj_ = {}; + var productobj_map_ = {}; + + md_bu_product_array_.map(p=>{ + if (!md_bu_product_obj_[p.bu_id]) { + md_bu_product_obj_[p.bu_id] = { + children: [], + } + } + var p_ = { + code: p.product_id, + value: p.product_name + } + productobj_map_[p.product_id] = p.product_name; + md_bu_product_obj_[p.bu_id].children.push(p_); + }) + me.md_bu_product_obj = clone(md_bu_product_obj_) + me.productobj_map = clone(productobj_map_); + } + + // 鍖哄煙鐪佷唤涓嬫媺 + if (me.dataRequestObj.md_geo_province) { + // var options_tree_province_ = listTOListGroup(me.dataRequestObj.md_geo_province, "area", "value"); + me.options_tree_province = clone(me.dataRequestObj.md_geo_province); + } + + // me.initData(); + }); + } + else { + // me.initData(); + } + + // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂� + }, + + 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; + var id_ = null; + if (this.formData.id) { + id_ = this.formData.id; + } + // this.selectTabObj = clone(this.TabObjMap[this.activeTabName]); + this.getRowDataById(id_, function(result) {//鏌ヨ鍚庣殑鍥炶皟锛岀敤浜庤幏鍙栧瓧娈电殑 + if (result.meta && result.meta[me.dataname] && result.meta[me.dataname].fields) { + var metas = clone(result.meta[me.dataname].fields); + var formFields_ = []; + + metas.map(f=>{ + f.isshow = "T"; + if (f.field == "category_id") { + f.options = clone(me.options_category); + } + if (f.field == "agreement_no" || f.field == "logistics_code" || f.field == "template_attachment_name" || f.field == "contract_attachment_name") { + f.isshow = "F"; + } + + formFields_.push(clone(f)); + }) + + if (!me.formFields || (me.formFields && me.formFields.length == 0)) { + me.formFields = clone(formFields_); + + //瀛楁鏁扮粍杞瓧娈祇bj锛岀洰鐨勪负浜嗙瓫閫夋椂鑾峰彇瀛楁灞炴�� + me.fieldsToFieldsObj(); + } + + // 鍗忚绫诲瀷鐨勮祴鍊� + if (me.formData.category_id) { + me.formData.category_id_temp = clone(me.formData.category_id); + me.getParents(me.formData.category_id, me.options_categoryobj, [], function(parent_ids){ + me.formData.category_id = parent_ids; + me.$set(me.formData, "category_id", parent_ids); + }); + } + // 鍥炴寕闄勪欢鐨勮祴鍊� + if (me.rowData["agm_agreement_file"] && me.rowData["agm_agreement_file"].length) { + var comeback_attachment_name_ = [] + me.rowData["agm_agreement_file"].map(f=>{ + var f_ = { + id: f.id, + file_name: f.file_name + } + comeback_attachment_name_.push(f_); + }) + me.$set(me.formData, "comeback_attachment_name", comeback_attachment_name_); + } + + var formFields_ = clone(me.formFields); + formFields_.map(f=>{ + if (f.field == "template_attachment_name") { // 鑷姩鐢熸垚 + f.isshow = "F"; + if (me.rowData["agm_agreement"] && me.rowData["agm_agreement"].is_generate) { + f.isshow = "T"; + } + } + if (f.field == "contract_attachment_name") { // 鎵嬪伐涓婁紶 + f.isshow = "F"; + if (!me.rowData["agm_agreement"] || (me.rowData["agm_agreement"] && !me.rowData["agm_agreement"].is_generate)) { + f.isshow = "T"; + } + } + }) + me.formFields = clone(formFields_); + + + me.setTabObjMap(result.meta, me.rowData); + + } + }) + }, + + setTabObjMap(metas, datas) { + var me = this; + // tabs: [ + // {code: "tab1", name: "浜у搧/鍖哄煙", dataname: "md_sku", filterTxt: "1<>1", orderby: ""}, + // {code: "tab2", name: "鍖婚櫌鎺堟潈", dataname: "agm_authorization", filterTxt: "1<>1", orderby: ""}, + // {code: "tab3", name: "鎸囨爣", dataname: "md_target_dealer", filterTxt: "customer_id=''", orderby: ""}, + // {code: "tab4", name: "浠锋牸", dataname: "md_sku", filterTxt: "1<>1", orderby: ""}, + // // {code: "tab5", name: "闄勪欢", dataname: "md_sku", filterTxt: "1<>1", orderby: ""}, + // {code: "tab6", name: "鏀跨瓥", dataname: "agm_record", filterTxt: "1<>1", orderby: ""}, + // ], + this.tabs.map(tab=>{ + if (tab.code == "tab1") { + tab.tableFields.map(f=>{ + if (f.field == "product_id") { + if (me.formData.bu_id && me.md_bu_product_obj[me.formData.bu_id]) { + f.options = clone(me.md_bu_product_obj[me.formData.bu_id].children); + } + else { + f.options = []; + } + } + else if (f.field == "province") { + f.options = clone(me.options_tree_province); + } + }) + // agm_record_province + // agm_record_product + + if (datas["agm_record_product"]) { + var product_id_ = [] + me.old_agm_record_product_obj = {}; + datas["agm_record_product"].map(p=>{ + me.old_agm_record_product_obj[p.product_id] = p; + var select_p_ = [p.product_id]; + product_id_.push(select_p_); + }) + tab.formData.product_id = product_id_ + } + if (datas["agm_record_province"]) { + var province_id_ = [] + me.old_agm_record_province_obj = {}; + datas["agm_record_province"].map(p=>{ + me.old_agm_record_province_obj[p.province] = p; + var select_p_ = [p.province]; + province_id_.push(select_p_); + }) + tab.formData.province = province_id_; + } + } + else if (tab.code == "tab2" || tab.code == "tab3" || tab.code == "tab4" || tab.code == "tab6" || tab.code == "tab7") { + var metas_ = metas[tab.dataname].fields; + var tableFields_ = []; + metas_.map(f=>{ + f.isshow = "T"; + if (tab.code == "tab2") { + if (f.field == "md_hospital__code" || f.field == "md_hospital__name" || f.field == "hospital_code" || f.field == "hospital_name") { + f.isshow = "T"; + } + else { + f.isshow = "F"; + } + } + + if (f.field == "agreement_no" || f.field == "company_name" || f.field == "bu_name" || f.field == "state_name" + || f.field == "md_org__code" || f.field == "md_org__name" || f.field == "customer_code"|| f.field == "customer_name" + || f.field == "creator_name" || f.field == "create_time" || f.field == "update_time" + || f.field == "source" || f.field == "account_name" || f.field == "record_name" || f.field == "record_no") { + f.isshow = "F"; + } + if (me.isedit && (f.field == "date_from" || f.field == "date_to")) { + f.inputtype = "date"; + f.required = false; + f.width = "150"; + + } + else { + f.inputtype = "span"; + } + if (f.field == "category_id") { + f.options = clone(me.options_category); + } + + if (tab.code == "tab4" && f.field == "bu_name") { + f.isshow = "T"; + } + + tableFields_.push(clone(f)); + }) + tab.tableFields = clone(tableFields_); + tab.tableData = clone(datas[tab.dataname]); + } + + this.TabObjMap[tab.code] = clone(tab); + }) + // 璁剧疆瀛楁浜嬩欢 + this.tableFieldClick(); + // 琛ㄦ牸鎸夐敭浜嬩欢 + this.tableButtonClick(); + + this.selectTabObj = clone(this.TabObjMap[this.activeTabName]); + }, + + //鎷垮埌鎵�鏈夌殑鐖惰妭鐐筰d + getParents(id, treemap, list, callback) { + list.unshift(id); + if (treemap[id].parent_id) { + this.getParents(treemap[id].parent_id, treemap, list, callback) + } + else { + callback(list); + } + }, + + tableButtonClick() { + var me = this; + var tablebuttonClick = {}; + // 鎺堟潈鍖婚櫌 + tablebuttonClick.tab2 = [ + // { + // name: "鏂板", type: "primary", icon: "el-icon-plus", + // isbuttonshow: this.isedit, + // code: "add", isselected: false, classname: "", + // onclick: function(obj) { + // // obj.selectedList + // if (!me.formData.company_name) { + // Root.message({ + // type: 'warning', + // message: '璇峰厛閫夋嫨鍏徃' + // }); + // return + // } + // if (!me.formData.bu) { + // Root.message({ + // type: 'warning', + // message: '璇峰厛閫夋嫨BU' + // }); + // return + // } + + // me.openAccountHospital('addhospital', obj.selectedList[0]); + // } + // }, + { + isbuttonshow: this.isedit, + code: "add", isselected: false, classname: "", + onclick: function(obj) { + if (!me.formData.company_name) { + Root.message({ + type: 'warning', + message: '璇峰厛閫夋嫨鍏徃' + }); + return + } + if (!me.formData.bu_name) { + Root.message({ + type: 'warning', + message: '璇峰厛閫夋嫨BU' + }); + return + } + //鎵撳紑鍖婚櫌搴撳脊绐� + me.openHospital("add", obj, function(popupobj){ + let row_ = clone(me.formData); + var list_h = clone(popupobj.list) + + var tableData_ = clone(me.TabObjMap["tab2"].tableData); + list_h.map(h=>{ + var h_ = { + hospital_id: clone(h.hospital_id), + id: "", + agreement_id: me.formData.id, + // agreement_no: me.formData.agreement_no, // 淇濆瓨涓婄殑閮芥槸鍒濆缂栫爜0000锛� + account_id: me.formData.account_id, + + company_id: me.formData.company_id, + company_name: me.formData.company_name, + bu_id: me.formData.bu_id, + bu_name: me.formData.bu_name, + org_id: me.formData.customer_id, + md_org__name: me.formData.customer_name, + md_hospital__code: h.md_hospital__code, + md_hospital__name: h.md_hospital__name, + + hospital_code: h.md_hospital__code, + hospital_name: h.md_hospital__name, + } + + tableData_.unshift(clone(h_)); + }) + + me.TabObjMap["tab2"].tableData = clone(tableData_); + if (me.selectTabObj.code == "tab2") { + me.selectTabObj = clone(me.TabObjMap["tab2"]); + } + + }); + } + }, + + // { + // // name: "缂栬緫", // type: "primary", // icon: "el-icon-edit", + // isbuttonshow: this.isedit, + // code: "edit", isselected: true, classname: "", + // onclick: function(obj) { + // // obj.selectedList + // me.openAccountHospital('edithospital', obj.selectedList[0]); + // } + // }, + { + // name: "鍒犻櫎", // type: "primary", // icon: "el-icon-edit", + isbuttonshow: this.isedit, type: "danger", + code: "delete", isselected: true, classname: "", + onclick: function(obj) { + var row = obj.selectedList[0]; + var txt = clone(row.md_hospital__name); + + me.deleteDataById(row.id, me.selectTabObj.dataname, "銆�" + txt + "銆�", function() { + me.TabObjMap["tab2"].tableData.splice(obj.selectRowIndex, 1); + me.selectTabObj = clone(me.TabObjMap["tab2"]); + // me.getAccountHospitalByAgreementId(); + }) + } + }, + ] + // 鎸囨爣 + tablebuttonClick.tab3 = [ + { + // name: "鏂板", // type: "primary", // icon: "el-icon-edit", + isbuttonshow: this.isedit || me.popupParames.sceneCode == "change", + code: "add", isselected: false, classname: "", + onclick: function(obj) { + var options_product_ = []; + me.TabObjMap["tab1"].tableFields.map(f=>{ + if (f.field == "product_id") { + options_product_ = clone(f.options); + } + }) + // 鑾峰彇鎺堟潈浜у搧 + if (options_product_.length == 0) { + Root.message({ + type: 'warning', + message: '娌℃湁鎺堟潈浜у搧' + }); + return; + } + else { + me.openTargetDealer('addTarget', obj.selectedList[0], options_product_); + } + } + }, + { + // name: "缂栬緫", // type: "primary", // icon: "el-icon-edit", + isbuttonshow: this.isedit, + code: "edit", isselected: true, classname: "", + onclick: function(obj) { + // obj.selectedList + var options_product_ = []; + me.TabObjMap["tab1"].tableFields.map(f=>{ + if (f.field == "product_id") { + options_product_ = clone(f.options); + } + }) + // 鑾峰彇鎺堟潈浜у搧 + if (options_product_.length == 0) { + Root.message({ + type: 'warning', + message: '娌℃湁鎺堟潈浜у搧' + }); + return; + } + else { + me.openTargetDealer('editTarget', obj.selectedList[0], options_product_, obj.selectRowIndex); + } + } + }, + { + // name: "鍒犻櫎", // type: "primary", // icon: "el-icon-edit", + isbuttonshow: this.isedit, type: "danger", + code: "delete", isselected: true, classname: "", + onclick: function(obj) { + var row = obj.selectedList[0]; + var txt = clone(row.product_name); + me.deleteDataById(row.id, me.selectTabObj.dataname, "銆�" + txt + "銆�", function() { + me.TabObjMap["tab3"].tableData.splice(obj.selectRowIndex, 1); + // me.TabObjMap["tab3"].tableData.removeobj(row); + me.selectTabObj = clone(me.TabObjMap["tab3"]); + }) + } + }, + ] + // 浠锋牸鏀跨瓥 + tablebuttonClick.tab4 = [ + { + // name: "鏂板", // type: "primary", // icon: "el-icon-edit", + isbuttonshow: this.isedit, + code: "add", isselected: false, classname: "", + onclick: function(obj) { + var options_product_ = []; + + // 鑾峰彇鎺堟潈浜у搧 + if (me.TabObjMap["tab1"].formData.product_id.length == 0) { + Root.message({ + type: 'warning', + message: '璇峰厛璁剧疆銆愪骇鍝�/鍖哄煙銆戜腑鐨勪骇鍝佽寖鍥�' + }); + return; + } + else { + me.openPolicyList("add", "price", function(popupobj){ + // 鍒涘缓涓�涓柊鐨勪拱璧犲妗� root/data/newEntity + me.toSaveRecord("price", popupobj, function(newrow){ + var tableData_ = clone(me.TabObjMap["tab4"].tableData); + var formData_ = clone(me.formData); + if (newrow) { + newrow.type_code = 'Customer' + if (formData_.date_from) { + newrow.date_from = formData_.date_from + } + if (formData_.date_to) { + newrow.date_to = formData_.date_to + } + + tableData_.unshift(clone(newrow)); + } + + me.TabObjMap["tab4"].tableData = clone(tableData_); + if (me.selectTabObj.code == "tab4") { + me.selectTabObj = clone(me.TabObjMap["tab4"]); + } + }); + }); + } + } + }, + { + // name: "鍒犻櫎", // type: "primary", // icon: "el-icon-edit", + isbuttonshow: this.isedit, type: "danger", + code: "delete", isselected: true, classname: "", + onclick: function(obj) { + var row = obj.selectedList[0]; + var txt = clone(row.product_name); + me.deleteDataById(row.id, me.selectTabObj.dataname, "銆�" + txt + "銆�", function(){ + // me.getPolicyListByAgreementId("price"); + me.TabObjMap["tab4"].tableData.splice(obj.selectRowIndex, 1); + me.selectTabObj = clone(me.TabObjMap["tab4"]); + }) + } + }, + + + // { + // // name: "鏂板", // type: "primary", // icon: "el-icon-edit", + // isbuttonshow: this.isedit, + // code: "add", isselected: false, classname: "", + // onclick: function(obj) { + // var options_product_ = []; + + // // 鑾峰彇鎺堟潈浜у搧 + // if (me.TabObjMap["tab1"].formData.product_id.length == 0) { + // Root.message({ + // type: 'warning', + // message: '璇峰厛璁剧疆銆愪骇鍝�/鍖哄煙銆戜腑鐨勪骇鍝佽寖鍥�' + // }); + // return; + // } + // else { + // var product_ids_ = clone(me.TabObjMap["tab1"].formData.product_id); + // var product_line_obj_ = {}; + // product_ids_.map(pis=>{ + // if (!product_line_obj_[pis[0]]) { + // product_line_obj_[pis[0]] = { + // code: pis[0], + // value: me.productobj_map[pis[0]], + // children: [], + // } + // } + // var p_ = { + // code: pis[1], + // value: me.productobj_map[pis[1]] + // } + + // product_line_obj_[pis[0]].children.push(p_); + // }) + + // for (var line_ in product_line_obj_) { + // options_product_.push(product_line_obj_[line_]); + // } + // me.openPriceDetail('addbyagreement', obj.selectedList[0], options_product_); + // } + // } + // }, + // { + // // name: "缂栬緫", // type: "primary", // icon: "el-icon-edit", + // isbuttonshow: this.isedit, + // code: "edit", isselected: true, classname: "", + // onclick: function(obj) { + // // obj.selectedList + // var options_product_ = []; + + // // 鑾峰彇鎺堟潈浜у搧 + // if (me.TabObjMap["tab1"].formData.product_id.length == 0) { + // Root.message({ + // type: 'warning', + // message: '璇峰厛璁剧疆銆愪骇鍝�/鍖哄煙銆戜腑鐨勪骇鍝佽寖鍥�' + // }); + // return; + // } + // else { + // me.openPriceDetail('editbyagreement', obj.selectedList[0], options_product_); + // } + // } + // }, + // { + // // name: "鍒犻櫎", // type: "primary", // icon: "el-icon-edit", + // isbuttonshow: this.isedit, type: "danger", + // code: "delete", isselected: true, classname: "", + // onclick: function(obj) { + // var row = obj.selectedList[0]; + // var txt = clone(row.product_name); + // me.deleteDataById(row.id, me.selectTabObj.dataname, "銆�" + txt + "銆�", function(){ + // me.getProdPriceByAgreementId(); + // }) + // } + // }, + ] + // 涔拌禒鏀跨瓥 + tablebuttonClick.tab6 = [ + { + // name: "鏂板", // type: "primary", // icon: "el-icon-edit", + isbuttonshow: this.isedit, + code: "add", isselected: false, classname: "", + onclick: function(obj) { + var options_product_ = []; + + // 鑾峰彇鎺堟潈浜у搧 + if (me.TabObjMap["tab1"].formData.product_id.length == 0) { + Root.message({ + type: 'warning', + message: '璇峰厛璁剧疆銆愪骇鍝�/鍖哄煙銆戜腑鐨勪骇鍝佽寖鍥�' + }); + return; + } + else { + me.openPolicyList("add", "gift", function(popupobj){ + // 鍒涘缓涓�涓柊鐨勪拱璧犲妗� root/data/newEntity + me.toSaveRecord("gift", popupobj, function(newrow){ + var tableData_ = clone(me.TabObjMap["tab6"].tableData); + var formData_ = clone(me.formData); + if (newrow) { + if (formData_.date_from) { + newrow.date_from = formData_.date_from + } + if (formData_.date_to) { + newrow.date_to = formData_.date_to + } + + tableData_.unshift(clone(newrow)); + } + + me.TabObjMap["tab6"].tableData = clone(tableData_); + if (me.selectTabObj.code == "tab6") { + me.selectTabObj = clone(me.TabObjMap["tab6"]); + } + }); + }); + } + } + }, + { + // name: "鍒犻櫎", // type: "primary", // icon: "el-icon-edit", + isbuttonshow: this.isedit, type: "danger", + code: "delete", isselected: true, classname: "", + onclick: function(obj) { + var row = obj.selectedList[0]; + var txt = clone(row.policy_no) + clone(row.policy_name) + clone(row.product_name); + me.deleteDataById(row.id, me.selectTabObj.dataname, "銆�" + txt + "銆�", function(){ + // me.getPolicyListByAgreementId("gift"); + me.TabObjMap["tab6"].tableData.splice(obj.selectRowIndex, 1); + me.selectTabObj = clone(me.TabObjMap["tab6"]); + }) + } + }, + ] + + // 鎶樻墸鏀跨瓥 + tablebuttonClick.tab7 = [ + { + // name: "鏂板", // type: "primary", // icon: "el-icon-edit", + isbuttonshow: this.isedit, + code: "add", isselected: false, classname: "", + onclick: function(obj) { + var options_product_ = []; + + // 鑾峰彇鎺堟潈浜у搧 + if (me.TabObjMap["tab1"].formData.product_id.length == 0) { + Root.message({ + type: 'warning', + message: '璇峰厛璁剧疆銆愪骇鍝�/鍖哄煙銆戜腑鐨勪骇鍝佽寖鍥�' + }); + return; + } + else { + me.openPolicyList("add", "rate", function(popupobj){ + me.toSaveRecord("rate", popupobj, function(newrow){ + var tableData_ = clone(me.TabObjMap["tab7"].tableData); + var formData_ = clone(me.formData); + if (newrow) { + if (formData_.date_from) { + newrow.date_from = formData_.date_from + } + if (formData_.date_to) { + newrow.date_to = formData_.date_to + } + tableData_.unshift(clone(newrow)); + } + + me.TabObjMap["tab7"].tableData = clone(tableData_); + if (me.selectTabObj.code == "tab7") { + me.selectTabObj = clone(me.TabObjMap["tab7"]); + } + }); + }); + } + } + }, + { + // name: "鍒犻櫎", // type: "primary", // icon: "el-icon-edit", + isbuttonshow: this.isedit, type: "danger", + code: "delete", isselected: true, classname: "", + onclick: function(obj) { + var row = obj.selectedList[0]; + var txt = clone(row.policy_no) + clone(row.policy_name) + clone(row.discount_name); + me.deleteDataById(row.id, me.selectTabObj.dataname, "銆�" + txt + "銆�", function(){ + // me.getPolicyListByAgreementId("rate"); + me.TabObjMap["tab7"].tableData.splice(obj.selectRowIndex, 1); + me.selectTabObj = clone(me.TabObjMap["tab7"]); + }) + } + }, + ] + + for (var tabcode in this.TabObjMap) { + if (tablebuttonClick[tabcode]) { + this.TabObjMap[tabcode].tablebuttonClick = tablebuttonClick[tabcode]; + } + else { + this.TabObjMap[tabcode].tablebuttonClick = []; + } + } + }, + + toSaveRecord(typecode, policyobj, callback) { + var me = this; + var newdataname = "agm_record" + if (typecode == "price") { + newdataname = "md_prod_price_detail" + } + var newEntityParam = { + dataname: newdataname + } + Server.call("root/data/newEntity", newEntityParam, function(result) { + var newdata = clone(result.data[newdataname]); + + let formData_ = clone(me.formData); + let row_ = clone(policyobj.row); + for (var k in newdata) { + if (k != "id" && row_[k]) { + if (k == "policy_name") { + newdata["discount_name"] = row_[k]; + } + + newdata[k] = row_[k]; + } + } + + // newdata.policy_id = clone(row_.id); + newdata.record_id = clone(row_.id); + newdata.record_name = clone(row_.policy_name); + + newdata.agreement_id = formData_.id; + newdata.agreement_no = formData_.agreement_no; + newdata.company_name = formData_.company_name; + newdata.bu_name = formData_.bu_name; + + newdata.account_id = formData_.account_id; + newdata.org_id = formData_.customer_id; + // newdata.account_code = formData_.customer_code; + newdata.account_code = formData_.customer_code; + newdata.account_name = formData_.customer_name; + + newdata.state_code = "Input" + newdata.state_name = "褰曞叆" + newdata.date_from = "" + newdata.date_to = "" + newdata.source = "鍗忚鍒嗚В" + + newdata.company_id = me.formData.company_id + newdata.bu_id = me.formData.bu_id + callback(newdata); + // 淇濆瓨鍒板妗� + // let param = { + // dataname: me.selectTabObj.dataname, + // data: {} + // } + // param.data[me.selectTabObj.dataname] = newdata + // Server.call("root/data/saveEntity", param, function(result) { + // me.getPolicyListByAgreementId(typecode); + // }); + }); + }, + + openHospital(sceneCode, obj, callback) { + var me = this; + var data_ = {}; + var config = { + totab: false, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮� + width: "800px", + height: "520px", + icon: "icon-product", + text: "鍖婚櫌閫夋嫨", + id: "popup_hospitalToList",//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈� + url: "module/md/page/popup/page/popup_hospitalToList.html", + data: data_, + delta: {}, + // filter: "org_id='"+ me.selectedrow.org_id + "' and bu_id='" + me.selectedrow.bu_id + "'", + filter: "", + sceneCode: sceneCode,//"refuseedit",//"approval", //"add"//"browse", + callback: function(popupobj, popupcallback) { + callback(popupobj); + if (popupcallback) { + popupcallback(); + } + } + }; + me.doPopupByPublic(config); + }, + + openAccountHospital(sceneCode, seletrow) { + let me = this; + var row = {} + if (sceneCode == "addhospital") { + row = { + agreement_id: me.formData.id, + agreement_no: me.formData.agreement_no, + account_id: me.formData.account_id, + + company_id: me.formData.company_id, + company_name: me.formData.company_name, + bu_id: me.formData.bu_id, + bu_name: me.formData.bu_name, + org_id: me.formData.customer_id, + md_org__name: me.formData.customer_name, + } + } + else if (sceneCode == "edithospital" || sceneCode == "browse") { + row = seletrow; + if(!row.id){ + Root.message({ + type: 'warning', + message: '璇烽�夋嫨涓�鏉℃暟鎹�' + }); + return; + } + } + + var config = { + totab: false, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮� + width: "1100px", + height: "520px", + icon: "icon-product", + text: "鎺堟潈鍖婚櫌 " + (row.md_hospital__name ? row.md_hospital__name : ""), + id: "customer_basic_acct_yysq" + row.id + sceneCode,//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈� + url: "module/md/page/customer/page/customer_basic_acct_yysq.html", + data: row, + delta: {}, + sceneCode: sceneCode,//"refuseedit",//"approval", //"add"//"browse", + callback: function(obj, callback) { + me.getAccountHospitalByAgreementId(); + if (callback) { + callback(); + } + } + }; + me.doPopupByPublic(config); + }, + + openTargetDealer(sceneCode, obj, options_product_, selectRowIndex) { + let me = this; + var row = {}; + // 骞翠唤+鍏徃+BU+缁忛攢鍟� + var text_ = ""; + if(this.formData.company_name && this.formData.bu_name && this.formData.customer_name) { + text_ = this.formData.company_name + "銆�" + this.formData.bu_name + "銆�" + this.formData.customer_name; + } + else { + Root.message({ + type: 'warning', + message: '璇峰厛閫夋嫨缁忛攢鍟�' + }); + return; + } + if (sceneCode == "editTarget" || sceneCode == "browse") { + row = clone(obj); + if(!row.id){ + Root.message({ + type: 'warning', + message: '璇烽�夋嫨涓�鏉℃暟鎹�' + }); + return; + } + } + + var config = { + totab: false, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮� + width: "1100px", + height: "520px", + icon: "icon-product", + text: "鍟嗕笟鎸囨爣-" + text_, + id: "popup_target_dealer_edit",//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈� + url: "module/md/page/popup/page/popup_target_dealer_edit.html", + data: row, + delta: { + agreementdata: this.formData, + options_product: options_product_, + productobj_map: clone(me.productobj_map) + }, + sceneCode: sceneCode,//"refuseedit",//"approval", //"add"//"browse", + callback: function(popupobj, callback) { + var tableData_ = clone(me.TabObjMap["tab3"].tableData); + if (sceneCode == "addTarget" && popupobj.row) { + tableData_.unshift(clone(popupobj.row)); + } + else if (sceneCode == "editTarget" && popupobj.row) { + tableData_[selectRowIndex] = clone(popupobj.row); + } + + me.TabObjMap["tab3"].tableData = clone(tableData_); + if (me.selectTabObj.code == "tab3") { + me.selectTabObj = clone(me.TabObjMap["tab3"]); + } + + // me.getTargetDealerByAgreementId(); + if (callback) { + callback(); + } + } + }; + me.doPopupByPublic(config); + }, + + // openPriceDetail(sceneCode, obj, options_product_) { + // let me = this; + // var row = {}; + // var text = ""; + + // if (!me.formData.customer_id) { + // Root.message({ + // type: 'warning', + // message: '璇烽�夋嫨缁忛攢鍟�' + // }); + // return; + // } + + // // type_code: "", // Standard鏍囧噯浠风洰琛ㄣ�丆ustomer缁忛攢鍟嗕环鐩〃 + // if (sceneCode == "addbyagreement") { + // row = { + // source: "鍗忚鍒嗚В", + // agreement_id: me.formData.id, + // agreement_no: me.formData.agreement_no, + // company_id: me.formData.company_id, + // company_name: me.formData.company_name, + // bu_id: me.formData.bu_id, + // bu_name: me.formData.bu_name, + + // account_id: me.formData.account_id, + // customer_id: me.formData.customer_id, + // customer_code: me.formData.customer_code, + // customer_name: me.formData.customer_name, + // }; + // } + // else if (sceneCode == "editbyagreement" || sceneCode == "browse") { + // row = obj; + // if(!row){ + // Root.message({ + // type: 'warning', + // message: '璇烽�夋嫨涓�鏉℃暟鎹�' + // }); + // return; + // } + + // if (row.customer_name) { + // text = row.customer_name; + // } + // if (row.product_name) { + // text += "銆�" + row.product_name + "銆�"; + // } + // if (row.spec) { + // text += row.spec; + // } + + // if (text) { + // text = "-" + text; + // } + // } + + // var config = { + // totab: false, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮� + // width: "1100px", + // height: "520px", + // icon: "icon-product", + // text: "鍗忚浠锋牸" + text, + // id: "price_list_basic_edit" + row.id + sceneCode,//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈� + // url: "module/md/page/product/page/price_list_basic_edit.html", + // data: row, + // delta: { + // agreementdata: this.formData, + // options_product: options_product_, + // productobj_map: clone(me.productobj_map) + // }, + // sceneCode: sceneCode,//"refuseedit",//"approval", //"add"//"browse", + // callback: function(obj, callback) { + // me.getProdPriceByAgreementId(); + // if (callback) { + // callback(); + // } + // } + // }; + // me.doPopupByPublic(config); + // }, + + openPolicyList(sceneCode, typecode, callback) { + var me = this; + var data_ = {}; + var text_ = me.selectTabObj.name + var dataname = "agm_policy_gift"; + if (typecode == "rate") { + dataname = "agm_policy_rate" + } + else if (typecode == "price") { + dataname = "agm_policy_price" + } + var config = { + totab: false, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮� + width: "1100px", + height: "520px", + icon: "icon-product", + text: text_ + "閫夋嫨", + id: "popup_policy",//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈� + url: "module/md/page/popup/page/popup_policy.html", + dataname: dataname, + data: data_, + delta: {}, + // filter: "org_id='"+ me.selectedrow.org_id + "' and bu_id='" + me.selectedrow.bu_id + "'", + filter: "agm_policy.state_code='Open' and agm_policy.type_code='" + typecode + "'", + sceneCode: sceneCode,//"refuseedit",//"approval", //"add"//"browse", + callback: function(popupobj, popupcallback) { + callback(popupobj) + + if (popupcallback) { + popupcallback(); + } + } + }; + me.doPopupByPublic(config); + }, + + tableFieldClick() { + var me = this; + //琛ㄥ崟瀛楁浜嬩欢璁剧疆 + this.formfieldClick = { + is_generate: { + val: { + onchange: function(obj) { + var formFields_ = clone(me.formFields); + formFields_.map(f=>{ + if (f.field == "template_attachment_name") { // 鑷姩鐢熸垚 + f.isshow = "F"; + if (me.formData["is_generate"]) { + f.isshow = "T"; + } + } + if (f.field == "contract_attachment_name") { // 鎵嬪伐涓婁紶 + f.isshow = "F"; + if (!me.formData["is_generate"]) { + f.isshow = "T"; + } + } + }) + me.formFields = clone(formFields_); + } + } + }, + + contract_attachment_name: { + buttonarray: { + onclick: function(obj) { + var filenamefield = obj.obj.field; + var fileidfield = "contract_attachment_id"; + // 鍗曢檮浠� + if(obj.buttonobj && obj.buttonobj.code == "showfile"){ + me.showFileImgByFileId(filenamefield, fileidfield, me.dataname); + }else if (obj.buttonobj && obj.buttonobj.code == "upload"){ + me.onPopupByUploadFile(filenamefield, fileidfield, me.dataname); + }else if (obj.buttonobj && obj.buttonobj.code == "delfile"){ + me.deleteByFileId(filenamefield, fileidfield, obj); + } + + // 澶氶檮浠� + // if(obj.buttonobj && obj.buttonobj.code == "showfilebyfile"){ + // me.showFileImgByFileId_n(filenamefield, obj.buttonobj.fileobj, obj.formdata); + // }else if (obj.buttonobj && obj.buttonobj.code == "uploadlist"){ + // me.onPopupByUploadFile_n(filenamefield, fileidfield, "agm_agreement", obj.formdata); + // }else if (obj.buttonobj && obj.buttonobj.code == "delfilebyfile"){ + // me.deleteByFileId_n(filenamefield, obj.buttonobj.fileobj, obj.formdata); + // } + }, + } + }, + category_id:{ + val: { + onchange: function(obj) { + let row_ = clone(me.formData); + if (Array.isArray(row_.category_id)) { + row_.category_id_temp = row_.category_id[row_.category_id.length - 1]; + var selectoption = me.options_categoryobj[row_.category_id_temp]; + row_.category_name = selectoption.name; + // 鑾峰彇鍗忚绫诲瀷瀵瑰簲鐨勬ā鏉� + me.getTemplateByCategoryId(selectoption.id); + } + + me.formData = clone(row_); + } + } + }, + // template_id:{ + // val: { + // onchange: function(obj) { + // let row_ = clone(me.formData); + // if (Array.isArray(row_.template_id)) { + // row_.template_id_temp = row_.template_id[row_.template_id.length - 1]; + // var selectoption = me.options_templateobj[row_.template_id_temp]; + + // row_.template_name = selectoption.name; + // row_.template_attachment_id = selectoption.template_attachment_id; + // row_.template_attachment_name = selectoption.template_attachment; + // } + // me.formData = clone(row_); + // } + // } + // }, + customer_name: { + popup: { + onclick: function(obj) {//寮圭獥鐐瑰嚮浜嬩欢 + //鎵撳紑寮�鎴峰簱寮圭獥 + me.openAccount("add", obj, function(popupobj){ + let row_ = clone(me.formData); + row_.customer_id = popupobj.row.org_id; + row_.company_id = popupobj.row.company_id; + row_.company_name = popupobj.row.company_name; + row_.bu_id = popupobj.row.bu_id; + row_.bu_name = popupobj.row.bu_name; + row_.customer_code = popupobj.row.code; + row_.customer_name = popupobj.row.account_name; + row_.account_id = popupobj.row.id; + row_.account_actor_name = popupobj.row.actor_name; + me.formData = clone(row_); + + me.getAccountPByAccountId(popupobj.row.id); + me.getAccountHospitalByAgreementId(); + + }); + } + }, + }, + + comeback_attachment_name: { + buttonarray: { + onclick: function(obj) { + var filenamefield = obj.obj.field; + // var fileidfield = "comeback_attachment_name"; + var fileidfield = "comeback_attachment_id"; + // 鍗曢檮浠� + if(obj.buttonobj && obj.buttonobj.code == "showfile"){ + me.showFileImgByFileId(filenamefield, fileidfield, me.dataname); + }else if (obj.buttonobj && obj.buttonobj.code == "upload"){ + me.onPopupByUploadFile(filenamefield, fileidfield, me.dataname); + }else if (obj.buttonobj && obj.buttonobj.code == "delfile"){ + me.deleteByFileId(filenamefield, fileidfield, obj); + } + + // 澶氶檮浠� + // if(obj.buttonobj && obj.buttonobj.code == "showfilebyfile"){ + // me.showFileImgByFileId_n(filenamefield, obj.buttonobj.fileobj, obj.formdata); + // }else if (obj.buttonobj && obj.buttonobj.code == "uploadlist"){ + // me.onPopupByUploadFile_n(filenamefield, fileidfield, "agm_agreement", obj.formdata); + // }else if (obj.buttonobj && obj.buttonobj.code == "delfilebyfile"){ + // me.deleteByFileId_n(filenamefield, obj.buttonobj.fileobj, obj.formdata); + // } + }, + + } + }, + + + template_attachment_name: {//瀛楁浜嬩欢璁剧疆 + buttonarray: { + onclick: function(obj) { + var filenamefield = obj.obj.field; + // var fileidfield = "template_attachment_id"; + var fileidfield = "template_attachment_name"; + if(obj.buttonobj && obj.buttonobj.code == "showfile"){ + me.showFileImgByFileId(filenamefield, fileidfield, "agm_template"); + } + } + }, + }, + + date_from: {//璧峰鏃ユ湡 + val: { + onchange: function(obj) { + //寮�濮嬫棩鏈熻鏃╀簬鎴鏃ユ湡 + if (obj.data.date_from && obj.data.date_to) { + if (new Date(obj.data.date_from) > new Date(obj.data.date_to)) { + Root.message({ + type: 'warning', + message: '璧峰鏃ユ湡涓嶈兘鏅氫簬缁堟鏃ユ湡' + }); + obj.data.date_from = null; + } + } + } + } + }, + + date_to: {//缁堟鏃ユ湡 + val: { + onchange: function(obj) { + //鎴鏃ユ湡瑕佹櫄浜庡紑濮嬫棩鏈� + if (obj.data.date_from && obj.data.date_to) { + if (new Date(obj.data.date_from) > new Date(obj.data.date_to)) { + Root.message({ + type: 'warning', + message: '缁堟鏃ユ湡涓嶈兘鏃╀簬璧峰鏃ユ湡' + }); + obj.data.date_to = null; + } + } + } + } + }, + }; + + var formfieldClick_tab5 = { + field_fj: { //瀛楁浜嬩欢璁剧疆 + buttonarray: { + onclick: function(obj) { + if(obj.buttonobj && obj.buttonobj.fileobj){ + me.showFileImgByFileId(obj.buttonobj.fileobj.file_name, obj.buttonobj.fileobj.id); + } + } + }, + }, + }; + + this.TabObjMap["tab1"].formfieldClick = { + product_id: { + val: { + onchange:function(){ + me.TabObjMap["tab1"].formData = me.selectTabObj.formData + } + } + }, + province: { + val: { + onchange:function(){ + me.TabObjMap["tab1"].formData = me.selectTabObj.formData + } + } + } + }; + + // this.TabObjMap["tab5"].formfieldClick = formfieldClick_tab5; + }, + + deleteDataById(id, dataname, confirm_txt, callback){ + var me = this; + var formData_ = clone(me.formData); + Root.confirm('纭畾鍒犻櫎璇�' + me.selectTabObj.name + confirm_txt + '鍚楋紵', '鍒犻櫎鎻愮ず', { + confirmButtonText: '鍒犻櫎', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + if (id) { + let param = { + dataname: dataname, + id: id + } + Server.call("root/data/deleteEntity", param, function(result) { + console.log(result); + if (result && result.data) { + callback(); + } + }); + } + else { + callback(); + } + + }).catch(() => { + Root.message({ + type: 'info', + message: '宸插彇娑堝垹闄�' + }); + }); + + }, + + + // 鑾峰彇鎺堟潈鐪佷唤鍜屾巿鏉冧骇鍝侊紝鏍规嵁寮�鎴穒d + getAccountPByAccountId(account_id) { + var me = this; + me.TabObjMap["tab1"].tableFields.map(f=>{ + if (f.field == "product_id") { + if (me.formData.bu_id && me.md_bu_product_obj[me.formData.bu_id]) { + f.options = clone(me.md_bu_product_obj[me.formData.bu_id].children); + } + else { + f.options = []; + } + // f.options = clone(md_bu_product_line_array_); + } + else if (f.field == "province") { + f.options = clone(me.options_tree_province); + } + }) + + if (me.selectTabObj.code == "tab1") { + me.selectTabObj = clone(me.TabObjMap["tab1"]); + } + + // var me = this; + // let param_table = { + // isClientMode: false, + // dataname: "md_org_account", + // id: account_id, + + // } + // Server.call("root/data/getEntity", param_table, function(result) { + // var a = ""; + // if (result.data) { + // var rowData_ = clone(result.data); + // // var md_bu_product_line_array_ = []; + // // var options_tree_province = []; + // // if (rowData_["md_org_account_product"]) { + // // var md_bu_product_array_ = clone(rowData_["md_org_account_product"]); + // // var md_bu_product_line_obj_ = {}; + // // var md_bu_product_obj_ = {}; + // // var productobj_map_ = {}; + + // // md_bu_product_array_.map(p=>{ + // // if (!md_bu_product_line_obj_[p.product_line_id]) { + // // productobj_map_[p.product_line_id] = p.product_line_name; + // // md_bu_product_line_obj_[p.product_line_id] = { + // // code: p.product_line_id, + // // value: p.product_line_name, + // // bu_id: p.bu_id, + // // children: [], + // // } + // // } + // // var p_ = { + // // code: p.product_id, + // // value: p.product_name + // // } + // // productobj_map_[p.product_id] = p.product_name; + // // md_bu_product_line_obj_[p.product_line_id].children.push(p_); + // // }) + + // // me.productobj_map = clone(productobj_map_); + + // // for (var line in md_bu_product_line_obj_) { + // // md_bu_product_line_array_.push(md_bu_product_line_obj_[line]); + // // } + // // // me.md_bu_product_obj = clone(md_bu_product_obj_); + // // } + + // // if (rowData_["md_org_account_province"]) { + // // var province_ = rowData_["md_org_account_province"]; + // // province_.map(p=>{ + // // p.value = p.province; + // // p.code = p.province; + // // }) + // // var options_tree_province_ = listTOListGroup(province_, "area", "value"); + // // options_tree_province = options_tree_province_; + // // } + + // // me.TabObjMap["tab1"].tableFields.map(f=>{ + // // if (f.field == "product_id") { + // // if (me.formData.bu_id) { + // // mp.options = clone(me.md_bu_product_obj[me.formData.bu_id]); + // // } + // // else { + // // mp.options = []; + // // } + // // // f.options = clone(md_bu_product_line_array_); + // // } + // // else if (f.field == "province") { + // // f.options = clone(me.options_tree_province); + // // } + // // }) + + // // if (me.selectTabObj.code == "tab1") { + // // me.selectTabObj = clone(me.TabObjMap["tab1"]); + // // } + // } + + // }) + }, + // 鑾峰彇鎺堟潈鍖婚櫌锛屾牴鎹崗璁甶d + getAccountHospitalByAgreementId() { + var me = this; + let param_table = { + isClientMode: false, + dataname: "md_org_account_hospital", + filter: "agreement_id='" + me.formData.id + "'", + } + Server.call("root/data/getEntitySet", param_table, function(result) { + if (result.data.entityset) { + me.TabObjMap["tab2"].tableData = clone(result.data.entityset); + if (me.selectTabObj.code == "tab2") { + me.selectTabObj = clone(me.TabObjMap["tab2"]); + } + } + }) + }, + getTargetDealerByAgreementId() { + var me = this; + let param_table = { + isClientMode: false, + dataname: "md_target_dealer", + filter: "agreement_id='" + me.formData.id + "'", + } + Server.call("root/data/getEntitySet", param_table, function(result) { + if (result.data.entityset) { + me.TabObjMap["tab3"].tableData = clone(result.data.entityset); + if (me.selectTabObj.code == "tab3") { + me.selectTabObj = clone(me.TabObjMap["tab3"]); + } + } + }) + }, + + // 鑾峰彇浠锋牸鍒楄〃锛屾牴鎹崗璁甶d + getProdPriceByAgreementId() { + var me = this; + let param_table = { + isClientMode: false, + dataname: "md_prod_price_detail", + filter: "agreement_id='" + me.formData.id + "'", + } + Server.call("root/data/getEntitySet", param_table, function(result) { + if (result.data.entityset) { + me.TabObjMap["tab4"].tableData = clone(result.data.entityset); + if (me.selectTabObj.code == "tab4") { + me.selectTabObj = clone(me.TabObjMap["tab4"]); + } + } + }) + }, + + getPolicyListByAgreementId(typecode) { + var me = this; + var tabname = "tab6"; + var dataname = "agm_record_gift"; // 涔拌禒鏀跨瓥 + if (typecode == "rate") { + dataname = "agm_record_rate" // 鎶樻墸鏀跨瓥 + tabname = "tab7" + } + if (typecode == "price") { + dataname = "md_prod_price_detail" // 浠锋牸鏀跨瓥 + tabname = "tab4" + } + + let param_table = { + isClientMode: false, + dataname: dataname, + filter: "agreement_id='" + me.formData.id + "'", + } + Server.call("root/data/getEntitySet", param_table, function(result) { + if (result.data.entityset) { + me.TabObjMap[tabname].tableData = clone(result.data.entityset); + if (me.selectTabObj.code == tabname) { + me.selectTabObj = clone(me.TabObjMap[tabname]); + } + } + }) + }, + + // 鑾峰彇鍗忚妯℃澘鍙婃ā鏉块檮浠讹紝鏍规嵁鍗忚绫诲瀷 + getTemplateByCategoryId(category_id) { + var me = this; + let param_table = { + isClientMode: false, + dataname: "agm_template", + filter: "category_id='" + category_id + "'", + + } + Server.call("root/data/getEntitySet", param_table, function(result) { + if (result.data.entityset) { + var template_list_ = clone(result.data.entityset); + template_list_.map(t=>{ + if (t.template_type_code == "main_template") { // 涓绘ā鏉� + var formData_ = clone(me.formData); + formData_.template_id = t.id; + formData_.template_name = t.name; + formData_.template_attachment_id = t.template_attachment_id; + formData_.template_attachment_name = t.template_attachment; + me.formData = clone(formData_); + } + else { // 闄勫綍妯℃澘 + + } + }) + } + }) + }, + openAccount(sceneCode, obj, callback) { + var me = this; + var data_ = {}; + var config = { + totab: false, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮� + width: "800px", + height: "520px", + icon: "icon-product", + text: "缁忛攢鍟嗛�夋嫨", + id: "popup_account",//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈� + url: "module/md/page/popup/page/popup_account.html", + data: data_, + delta: {}, + // filter: "org_id='"+ me.selectedrow.org_id + "' and bu_id='" + me.selectedrow.bu_id + "'", + filter: "md_org_account.state_code='Open'", + sceneCode: sceneCode,//"refuseedit",//"approval", //"add"//"browse", + callback: function(popupobj, popupcallback) { + callback(popupobj); + if (popupcallback) { + popupcallback(); + } + } + }; + me.doPopupByPublic(config); + }, + showFileImgByFileId_n(filenamefield, fileobj, objformdata){ + let me = this; + var formData_ = clone(me.selectTabObj.formData); + var file_id = ""; + var file_name = ""; + var dataname_ = ""; + if(filenamefield == "contract_attachment_name"){ + file_id = fileobj.id; + file_name = fileobj.file_name + dataname_ = "agm_agreement" + } + + 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_n(filenamefield, fileidfield, dataname, objformdata) { + var me = this; + var analysistype_ = ""; + var sender_id_ = ""; // 涓氬姟鏁版嵁id; + if (objformdata.id) { + sender_id_ = objformdata.id; + } + var formData_ = clone(me.selectTabObj.formData); + 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 + }, + delta: delta_, + callback: function(obj, callback) { + me.$message({ + showClose: true, + message: '涓婁紶鎴愬姛锛�', + type: 'success' + }); + console.log('闄勪欢淇℃伅',obj) + if(filenamefield == "contract_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_); + // objformdata[filenamefield] = decodeURI(obj.row[0].name); + // objformdata[fileidfield] = obj.row[0].id; + if (!objformdata.id) { + objformdata.id = obj.row[0].sender_id; + } + } + if (!objformdata) { + me.selectTabObj.formData = formData_; + } + 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(() => { + if (fileobj.id) { + let param = { + dataname: "agm_agreement_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: '宸插彇娑堝垹闄�' + }); + }); + + }, + + showFileImgByFileId(filenamefield, fileidfield, dataname) { + let me = this; + var formData_ = clone(me.formData); + var file_name = formData_[filenamefield]; + var file_id = formData_[fileidfield]; + 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, + filename: fileName, + dataname: dataname + } + + var config = { + totab: false, + width: "1000px", + 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_ = ""; + var formData_ = clone(me.formData); + var delta_ = {filetypelist: []}//".png", ".jpg", ".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: me.formData.id, + fileNamefieldName: filenamefield, + }, + delta: delta_, + callback: function(obj, callback) { + me.$message({ + showClose: true, + message: '涓婁紶鎴愬姛锛�', + type: 'success' + }); + + if (!formData_[filenamefield]) { + formData_[filenamefield] = {}; + } + formData_[filenamefield] = decodeURI(obj.row[0].name); + formData_[fileidfield] = obj.row[0].id; + + me.formData = formData_; + if (callback) { + callback(); + } + } + }; + this.doPopupByPublic(config); + }, + deleteByFileId(filenamefield, fileidfield, obj){ + var me = this; + var formData_ = clone(me.formData); + Root.confirm('纭畾鍒犻櫎闄勪欢銆�' + formData_[filenamefield] + '銆戝悧锛�', '鍒犻櫎鎻愮ず', { + confirmButtonText: '鍒犻櫎', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + if (obj.formdata[fileidfield]) { + let param = { + dataname: "agm_agreement_file", + id: obj.formdata[fileidfield], + } + + Server.call("root/data/deleteEntity", param, function(result) { + console.log(result); + if (result && result.data) { + formData_[filenamefield] = ""; + formData_[fileidfield] = ""; + me.formData = clone(formData_); + Root.message({ + type: 'success', + message: '鍒犻櫎鎴愬姛!' + }); + } + }); + } + }).catch(() => { + Root.message({ + type: 'info', + message: '宸插彇娑堝垹闄�' + }); + }); + + }, + //鎻愪氦 + submitRowTable() { + this.iscommit = true; + //蹇呭~椤规牎楠� + var bo1 = this.$refs.form1.checkForm(); + if(!bo1){ + Root.message({ + type: 'error', + message: '璇峰~鍐欏繀濉」' + }); + this.iscommit = false; + return; + } + this.saveRowTable(); + }, + + //淇濆瓨 + saveRowTable() { + var me = this; + var operator_ = "saveEntity";//淇濆瓨 + me.loading_save = true; + if(me.iscommit) { + operator_ = "commit";//鎻愪氦 + } + + var entity_ = clone(me.formData); + + if (me.copyAdd) { + var entitys = clone(me.formDatas_old); + var entity = []; + entitys.map(es => { + for (var f in es) { + if (f == "id") { + es.source_id = es[f]; + } + if (f == "agreement_no" || f == "comeback_attachment_id" || f == "comeback_attachment_name" || f == "state_detail_code" || f == "state_detail_name" || f == "id" || f == "creator_id" || f == "creator_name" || f == "create_time" || f == "update_time") { + es[f] = ""; + } + if (f == "state_code") { + es[f] = "Input"; + } + if (f == "state_name") { + es[f] = "褰曞叆"; + } + if (f == "category_id" || f == "category_name" || f == "date_from" || f == "date_to" || f == "remark" || f == "template_attachment_id" || f == "template_attachment_name" || f == "template_id" || f == "template_name") { + es[f] = entity_[f]; + } + } + entity.push(es); + }) + } + else { + var entity = {}; + for (var r in entity_) { + if (r == "category_id" && entity_["category_id_temp"]) { + entity[r] = entity_["category_id_temp"]; + } + else if (r == "template_id" && entity_["template_id_temp"]) { + entity[r] = entity_["template_id_temp"]; + } + else if (r == "comeback_attachment_name") { + + } + else if (entity_[r] || entity_[r] == "" || entity_[r] == false || entity_[r] == 0) { + entity[r] = entity_[r]; + } + } + } + + var productlist_ = []; + var provincelist_ = []; + var account_hospital_ = []; + var target_dealer_ = []; + var price_policy_ = []; + var gift_policy_ = []; + var rate_policy_ = []; + + if (me.TabObjMap["tab1"].formData.product_id.length) { + var product_ids = clone(me.TabObjMap["tab1"].formData.product_id); + product_ids.map(pids=>{ + var p_ = { + agreement_id: me.formData.id, + agreement_no: me.formData.agreement_no, + company_name: me.formData.company_name, + bu_name: me.formData.bu_name, + company_id: me.formData.company_id, + bu_id: me.formData.bu_id, + + + account_id: me.formData.account_id, + customer_id: me.formData.customer_id, + customer_code: me.formData.customer_code, + customer_name: me.formData.customer_name, + source: "鍗忚鍒嗚В", + + product_id: pids[0], + product_name: me.productobj_map[pids[0]] + } + if (me.old_agm_record_product_obj[pids[0]]) { + p_.id = me.old_agm_record_product_obj[pids[0]].id + } + productlist_.push(p_) + }) + } + if (me.TabObjMap["tab1"].formData.province.length) { + var provinces = clone(me.TabObjMap["tab1"].formData.province); + provinces.map(ps=>{ + var p_ = { + agreement_id: me.formData.id, + agreement_no: me.formData.agreement_no, + company_name: me.formData.company_name, + bu_name: me.formData.bu_name, + company_id: me.formData.company_id, + bu_id: me.formData.bu_id, + + account_id: me.formData.account_id, + customer_id: me.formData.customer_id, + customer_code: me.formData.customer_code, + customer_name: me.formData.customer_name, + source: "鍗忚鍒嗚В", + + // area: ps[0], + province: ps[0], + } + if (me.old_agm_record_province_obj[ps[0]]) { + p_.id = me.old_agm_record_province_obj[ps[0]].id + } + provincelist_.push(p_) + }) + } + + if (me.TabObjMap["tab2"].tableData.length) { + account_hospital_ = clone(me.TabObjMap["tab2"].tableData); + } + + if (me.TabObjMap["tab3"].tableData.length) { + target_dealer_ = clone(me.TabObjMap["tab3"].tableData); + } + + if (me.TabObjMap["tab4"].tableData.length) { + price_policy_ = clone(me.TabObjMap["tab4"].tableData); + } + if (me.TabObjMap["tab6"].tableData.length) { + gift_policy_ = clone(me.TabObjMap["tab6"].tableData); + } + if (me.TabObjMap["tab7"].tableData.length) { + rate_policy_ = clone(me.TabObjMap["tab7"].tableData); + } + + let param = { + dataname: me.dataname, + data: {}, + } + if (me.formData.id) { + param.id = me.formData.id + } + // if(me.iscommit) { + // param.to_state = "OpeningApproval";//鎻愪氦 + // } + + param.data[me.dataname] = entity; + + if (productlist_.length) { + param.data["agm_record_product"] = productlist_; + } + if (provincelist_.length) { + param.data["agm_record_province"] = provincelist_; + } + if (account_hospital_.length) { + param.data["md_org_account_hospital"] = account_hospital_; + } + if (target_dealer_.length) { + param.data["md_target_dealer"] = target_dealer_; + } + + if (price_policy_.length) { + // param.data["agm_record_price"] = price_policy_; + param.data["md_prod_price_detail"] = price_policy_; + } + if (gift_policy_.length) { + param.data["agm_record_gift"] = gift_policy_; + } + if (rate_policy_.length) { + param.data["agm_record_rate"] = rate_policy_; + } + + Server.call("root/data/"+operator_, param, function(result) { + if (result.success) { + if (me.iscommit) { + me.iscommit = false; + me.loading_save = false; + Root.message({ + type: 'success', + message: '鎻愪氦鎴愬姛' + }); + } + else { + me.loading_save = false; + Root.message({ + type: 'success', + message: '淇濆瓨鎴愬姛' + }); + } + me.saveAfter(); + } + }, function(errorresult) { + console.log("閿欒淇℃伅", errorresult); + if (errorresult.messages && errorresult.messages.count && errorresult.messages.count.error) { + if (errorresult.messages.list) { + me.iscommit = false; + me.loading_save = false; + 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 if (errorresult.exists_errors && errorresult.exists_errors.length) { + var messages_list = [] + var index_ = 0; + errorresult.exists_errors.map(r=>{ + index_ ++; + var messages_ = { + step: index_, + level: "Error", + message: r.title + "銆�" + r.errors[0].agreement_no + r.errors[0].account_actor_name?r.errors[0].account_actor_name: '' + "銆�" + } + messages_list.push(messages_) + }) + me.iscommit = false; + var config = { + totab: false, + // width: "1200px", + // height: 800, + icon: "icon-product", + text: "閿欒淇℃伅", + url: "module/tool/page/popup_error_messages.html", + data: {}, + delta: messages_list, + callback: function(obj, callback) { + if (callback) { + callback(); + } + } + }; + me.doPopupByPublic(config); + } + else { + if(me.iscommit) { + me.iscommit = false; + Root.message({ + type: 'error', + message: '鎻愪氦澶辫触' + }); + } + else { + me.loading_save = false; + Root.message({ + type: 'error', + message: '淇濆瓨澶辫触' + }); + } + } + }); + }, + + //瀹℃壒閫氳繃鐩稿叧鏁版嵁璧嬪�� + onPassApproval() { + this.approveremark = ""; + this.reasonvisible = true; + this.passOrRefuse = true; + }, + + //瀹℃壒鎷掔粷鐩稿叧鏁版嵁璧嬪�� + onRefuseApproval(){ + this.approveremark = ""; + this.reasonvisible = true; + this.passOrRefuse = false; + }, + + //淇濆瓨閫氳繃/鎷掔粷鍘熷洜 + saveReason2(){ + this.loading_pass = true; + if(this.passOrRefuse){ + this.doPassApproval(true); + }else{ + if(this.approveremark != ""){ + this.doPassApproval(false); + } + else{ + Root.message({ + type: 'warning', + message: '璇峰~鍐欏師鍥�' + }); + this.loading_pass = false; + } + } + }, + + //瀹℃壒閫氳繃/鎷掔粷 + doPassApproval(bo) { + var me = this; + var state_ = "approve" + if (!bo) { + state_ = "reject" + } + + let param = { + dataname: me.dataname, + id: me.formData.id, + remark: me.approveremark, + } + Server.call("root/data/" + state_, param, function(result) { + me.loading_pass = false; + console.log(result); + if (bo) { + Root.message({ + type: 'success', + message: '瀹℃壒鎴愬姛' + }); + me.saveAfter(); + } + + else { + 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: '瀹℃壒澶辫触' + }); + } + }); + }, + + // 閫氳繃鎴栨嫆缁� + onShowApproval(passOrRefuse) { + 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(bo) { + var me = this; + this.getMachine(function(next_step, up_step) { // + me.doRunApproval(next_step, up_step); + }); + }, + + getMachine(callback) { + var me = this; + let param = { + dataname: me.dataname, + } + Server.call("root/state/getMachine", param, function(result) { + var next_step = {}; // 鍚戜笅娴佺▼ + var up_step = {}; // 鍚戜笂娴佺▼ + + if (result && result.machine && result.machine.detail) { + result.machine.detail.map(md=>{ + next_step[md.from_code] = md.to_code; + up_step[md.to_code] = md.from_code; + }) + + callback(next_step, up_step); + } + }) + }, + + doRunApproval(next_step, up_step) { + var me = this; + 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") { + + } + 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: "agm_agreement", + id: me.formData.id, + to_state: to_state_, + remark: this.approveremark + } + // + // return + 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: '瀹℃壒澶辫触' + }); + } + }); + }, + + onTabBeforeLeave(tab, oldtab) { + this.TabObjMap[oldtab] = clone(this.selectTabObj); + }, + handleClick() { + this.isRefresh = false; + + this.selectTabObj = {} + this.$nextTick(() => { // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂� + this.selectTabObj = clone(this.TabObjMap[this.activeTabName]); + this.isRefresh = true; + }); + } + + + + } + }); + }; + + loadJsCss(function () { + initVue(); + }); + </script> + <style> + /* 鍦╲ue.js涓� v-cloak 杩欎釜鎸囦护鏄槻姝㈤〉闈㈠姞杞芥椂鍑虹幇 vuejs 鐨勫彉閲忓悕鑰岃璁$殑 */ + [v-cloak] { + display: none !important; + } + </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"> + </div> + </div> + </div> + </div> + </div> + + + </body> +</html> diff --git a/module/md/page/customer/page/customer_basic.html b/module/md/page/customer/page/customer_basic.html index ea7ba7a..2c272fc 100644 --- a/module/md/page/customer/page/customer_basic.html +++ b/module/md/page/customer/page/customer_basic.html @@ -150,22 +150,6 @@ this.formAttr.disabled = true; } else if (this.popupParames.sceneCode == "edit") {//缂栬緫 - var newEntity_ = { - name: "md_org_account_criteria", - url: "root/data/getEntitySet", - paramsobj: {dataname: 'md_org_account_criteria',parent_id:this.popupParames.data.id}, - isnotoption: true, //true:涓嶆槸閫夐」 - } - this.dataRequest.push(newEntity_); - - // if (this.newformData) { - // let formData_ = clone(this.formData); - - // for (var k in this.newformData) { - // formData_[k] = this.newformData[k]; - // } - // this.formData = formData_; - // } this.isedit = true; } else if (this.popupParames.sceneCode == "approval") {//瀹℃壒 @@ -771,7 +755,7 @@ data: {}, } //鏂板鐨勬儏鍐� - me.formdata_group.map(group => { + me.formdata_group.map(group => {// group.children.map(unitobj => { var row_ = { id: uuid_short(), @@ -955,20 +939,15 @@ > </h-form> </div> - <div v-if='formFields.length>0' class="el-dialog__body" style="width: 100%; float: right; "> + <!-- <div v-if='formFields.length>0' class="el-dialog__body" style="width: 100%; float: right; "> <div style="border: 1px solid #C0C4CC ;padding: 5px"> <div class="h_table_title"><i class="iconfont icon-fuzhushuxian" style="color: rgb(2, 112, 193);"></i><span style="font-size: 16px;">鎺ㄥ箍鍟嗚瘎鍒�</span></div> </i> - <!-- <el-row style="display: flex;flex-direction: row;justify-content:space-between;padding-left: 91px;padding-top: 10px;" > - <el-col :span="16"><div class="itemgroup_field"><span>璇勫垎椤�</span></div></el-col> - <el-col :span="8"><div class="itemgroup_field"><span>璇勫垎</span></div></el-col> - </el-row> --> <div style="width: 100%;height: 5px;margin: 10px 0px 25px 0px;background-color: gainsboro; opacity: 40%;"></div> <template v-for="(formgroup, k) in formdata_group"> <div style="display: flex;justify-content: space-between;padding: 5px;"> <div style="width: 7%; display: flex; align-items: center; justify-content: center; text-align: center;font-weight: bold;border-right: 3px solid gainsboro;"> <div style="display: flex;justify-content: center;align-items: center;margin-right: 15px;"> - <!-- {{formgroup.groupname}} --> {{formgroup.group_name}} </div> </div> @@ -978,7 +957,6 @@ <el-col :span="6" class="itemgroup_row_item"> <div> <span :class="[unitobj.required_no ? 'me_h_nounitlabel' : 'me_h_unitlabel']" style="font-size: 12px;"> - <!-- {{unitobj.content_before}} --> {{unitobj.content_before}} </span> </div> @@ -1035,7 +1013,7 @@ <div style="width: 100%;height: 5px;margin: 25px 0px;background-color: gainsboro;opacity: 40%"></div> </template > </div> - </div> + </div> --> </div> <!-- <div class="el-dialog__footer" style="position: absolute; bottom: 0px; left: 0px; right: 0px;"> <el-button size="small" type="default" @click="reasonvisible = false">鍙� 娑�</el-button> diff --git a/module/md/page/customer/page/customer_basic_acct.html b/module/md/page/customer/page/customer_basic_acct.html index 45c6e89..34d8cec 100644 --- a/module/md/page/customer/page/customer_basic_acct.html +++ b/module/md/page/customer/page/customer_basic_acct.html @@ -71,6 +71,12 @@ isnotoption: true, //true:涓嶆槸閫夐」 filter: "1<>1", }, + { + name: "md_org_account_criteria_rule", //rule绛斿嵎瀛楁 + dataname: "md_org_account_criteria_rule", + isnotoption: true, //true:涓嶆槸閫夐」 + filter: "", + }, ], options_md_org_master: [], isExistsAccount: false, @@ -89,7 +95,9 @@ meta_account_position_list: [], meta_account_change: [], + formFields_criteria: [], formData_change: {}, + formdata_rule_group:[], formAttr: { istitle: false, @@ -173,62 +181,6 @@ this.popupParames = clone(Root.popupParames); this.title = this.popupParames.title || this.popupParames.text if (this.popupParames.data) { - // var formdata_ = {} - // let formdata_ = { - // account_name, - // actor_code, - // actor_name, - // authorize_province, - // authorize_province_remark, - // bu_id, - // bu_name, - // business_address, - // business_email, - // business_need_code, - // business_need_name, - // business_need_others, - // business_person, - // business_phone, - // check_error, - // code, - // combined_score, - // company_id, - // company_name, - // create_time, - // creator_id, - // creator_name, - // credit_amt, - // credit_available, - // degree, - // file_authorization_name, - // file_authorization_id, - // h_rowindex, - // id, - // is_frozen, - // objective_score, - // open_date, - // opening_reason, - // org_id, - // org_ncc_id, - // platform_account_code, - // platform_account_id, - // platform_account_name, - // platform_org_id, - // remark, - // settlement, - // state_code, - // state_name, - // subjective_score, - // update_time, - - // } = clone(this.popupParames.data); - // this.formData = {} - // if (this.formData.source && !this.formData.md_org__source) { - // this.newformData.md_org__source = this.formData.source; - // } - // else if (this.formData.md_org__ncc_code) { - // this.newformData.md_org__source = "NCC" - // } this.formData = this.popupParames.data } @@ -523,6 +475,31 @@ // me.options_tree_province = options_tree_province_; me.options_province = clone(me.dataRequestObj.md_geo_province); } + if (me.dataRequestObj.md_org_account_criteria_rule) { + var obj_ = {} + me.formFields_criteria = me.dataRequestObj.md_org_account_criteria_rule; + me.formFields_criteria.map(e=>{ + if (!obj_[e.group_code]) { + var obj = {} + obj_[e.group_code] = e.group_code + obj_[e.group_name] = e.group_name + //obj_鐢ㄤ綔妫�娴嬫槸鍚﹂噸澶嶏紝鑻ユ湭閲嶅锛屽垯灏嗚obj鏀惧叆(鑰屼笉鏄斁鍏bj_) formdata_rule_group缁撴瀯濡備笅 + // formdata_rule_group:[{group_name:'瀹㈣璇勫垎',group_code:'Objective',children:[]},{group_name:'涓昏璇勫垎',group_code:'Subjective',children:[]}], + obj['group_code'] = e.group_code + obj['group_name'] = e.group_name + obj['children'] = [] + obj.children.push(e) + me.formdata_rule_group.push(obj) + } + else { + me.formdata_rule_group.map(g=>{ + if (g.group_code== e.group_code) { + g.children.push(e) + } + }) + } + }) + } me.initData(); // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂� @@ -638,7 +615,25 @@ id_ = this.formData.id; } this.getRowDataById(id_, function(result) {//鏌ヨ鍚庣殑鍥炶皟锛岀敤浜庤幏鍙栧瓧娈电殑 - console.log(result) + if (result.data.md_org_account_criteria && result.data.md_org_account_criteria.length>0) { + var formData_criteria_ = result.data.md_org_account_criteria + me.formFields_criteria.map(g => { + formData_criteria_.map(e => { + if (g.id == e.criteria_id) { + Object.assign(e,g) + } + }) + }) + me.formdata_rule_group.map(g => { + g.children = [] + formData_criteria_.map(v => { + if (v.group_code == g.group_code) { + // v['content_before'] = g.content_before + g.children.push(v) + } + }) + }) + } if (result.meta) { var metaBydataname = {}; for (var dataname_ in result.meta) { @@ -760,6 +755,8 @@ //璁剧疆瀛楁浜嬩欢 me.tableFieldClick(); } + //鏁版嵁澶勭悊 + var formData_ = {}; if (me.accountnccdata.id) { @@ -1435,7 +1432,6 @@ // return // } - console.log(param); // return 0 Server.call("root/data/" + operator_, param, function(result) { console.log(result); @@ -1503,56 +1499,13 @@ // var table_provinces_ = []; for (var r in entity_) { - // if (r == "product_id") { - // var products_ = entity_[r]; - // products_.map(p=>{ - // var p_ = { - // product_line_id: p[0], - // product_line_name: me.productobj_map[p[0]], - - // }; - // if (p.length == 2) { - // p_.product_id = p[1]; - // p_.product_name = me.productobj_map[p[1]] - // } - - // // 濡傛灉宸茬粡瀛樿繃鍒檌d淇濇寔涓嶅彉 - // if (me.old_md_org_account_product_obj[p[0] + p[1]]) { - // p_.id = me.old_md_org_account_product_obj[p[0] + p[1]].id - // } - - // // 锛堢己鍔熻兘锛夊鏋滄湰娆℃暟鎹腑娌℃湁浜嗭紝鍒欓渶瑕佸垹闄ゅ師鏁版嵁銆傜洰鍓嶆病鏈夊垹闄ゅ姩浣溿�� - - - // table_products_.push(p_); - // }) - // } - // else if (r == "province") { - // var provinces_ = entity_[r]; - // provinces_.map(p=>{ - // var p_ = { - // area: p[0], - // province: p[1] - // }; - - // // 濡傛灉宸茬粡瀛樿繃鍒檌d淇濇寔涓嶅彉 - // if (me.old_md_org_account_province_obj[p[0] + p[1]]) { - // p_.id = me.old_md_org_account_province_obj[p[0] + p[1]].id - // } - - // // 锛堢己鍔熻兘锛夊鏋滄湰娆℃暟鎹腑娌℃湁浜嗭紝鍒欓渶瑕佸垹闄ゅ師鏁版嵁銆傜洰鍓嶆病鏈夊垹闄ゅ姩浣溿�� - - - // table_provinces_.push(p_); - // }) - // } - // else if (entity_[r] || entity_[r] == 0) { entity[r] = entity_[r]; } } var tableData_ = []; + var md_org_account_criteria_ = [] this.tableData.map(r=>{ var row_ = {}; for (var k in r) { @@ -1563,6 +1516,14 @@ tableData_.push(row_); }) + if (tableData_.length == 0) { + Root.message({ + type: 'warning', + message: '璇峰厛娣诲姞鏄庣粏鏁版嵁' + }); + me.iscommit = false + return + } if (tableData_.length == 0) { Root.message({ type: 'warning', @@ -1589,6 +1550,26 @@ } } + me.formdata_rule_group.map(group => {// + group.children.map(unitobj => { + if (!unitobj.criteria_value) { + Root.message({ + type: 'warning', + message: '璇峰厛娣诲姞鏄庣粏鏁版嵁' + }); + me.iscommit = false + return + } + var row_ = { + parent_id: me.formData.org_id, + criteria_id: unitobj.id, + criteria_value: unitobj.criteria_value, + remark: unitobj.remark ? unitobj.remark : '', + } + md_org_account_criteria_.push(row_); + }) + }) + param.data["md_org_account_criteria"] = md_org_account_criteria_.length ? md_org_account_criteria_ : null; param.data[this.dataname] = entity; param.data[this.table_dataname] = tableData_; @@ -1607,8 +1588,6 @@ return } - console.log(param); - // return Server.call("root/data/" + operator_, param, function(result) { console.log(result); if (result.success) { @@ -1893,6 +1872,87 @@ </div> + <div v-if='formFields.length>0' class="el-dialog__body" style="width: 100%; float: right; "> + <div> + <div class="h_table_title"><i class="iconfont icon-fuzhushuxian" style="color: rgb(2, 112, 193);"></i><span style="font-size: 16px;">鎺ㄥ箍鍟嗚瘎鍒�</span></div> + </i> + <!-- <el-row style="display: flex;flex-direction: row;justify-content:space-between;padding-left: 91px;padding-top: 10px;" > + <el-col :span="16"><div class="itemgroup_field"><span>璇勫垎椤�</span></div></el-col> + <el-col :span="8"><div class="itemgroup_field"><span>璇勫垎</span></div></el-col> + </el-row> --> + <div style="width: 100%;height: 5px;margin: 10px 0px 25px 0px;background-color: gainsboro; opacity: 40%;"></div> + <template v-for="(formgroup, k) in formdata_rule_group"> + <div style="display: flex;justify-content: space-between;padding: 5px;"> + <div style="width: 7%; display: flex; align-items: center; justify-content: center; text-align: center;font-weight: bold;border-right: 3px solid gainsboro;"> + <div style="display: flex;justify-content: center;align-items: center;margin-right: 15px;"> + <!-- {{formgroup.groupname}} --> + {{formgroup.group_name}} + </div> + </div> + <div style="width: 93%;padding: 0 10px;"> + + <el-row v-for="(unitobj, kc) in formgroup.children" :key="'YWNL' + k + kc" class="me_h_itemgroup_row"> + <el-col :span="6" class="itemgroup_row_item"> + <div> + <span :class="[unitobj.required_no ? 'me_h_nounitlabel' : 'me_h_unitlabel']" style="font-size: 12px;"> + <!-- {{unitobj.content_before}} --> + {{unitobj.content_before}} + </span> + </div> + </el-col> + <el-col :span="18" > + <div v-if="unitobj.content_type == 'textarea'"> + <el-input style="width:100%" type="textarea" + v-model="unitobj.criteria_value"> + </el-input> + </div> + <div v-else-if="unitobj.content_type == 'radio' && !unitobj.dictionary_id"> + <el-radio-group v-model="unitobj.criteria_value"> + <el-radio label="T">鏄�</el-radio> + <el-radio label="F">鍚�</el-radio> + </el-radio-group> + </div> + <div v-else-if="unitobj.content_type == 'radio' && unitobj.dictionary_id"> + <el-radio-group v-model="unitobj.criteria_value"> + <el-radio v-for="(r, k) in unitobj.options" :key="unitobj.id + k" :label="r.code">{{r.value}}</el-radio> + </el-radio-group> + </div> + <div v-else-if="unitobj.content_type == 'input'"> + <el-input style="width:100%" + v-model="unitobj.criteria_value"> + </el-input> + </div> + <div v-else-if="unitobj.content_type == 'date'"> + <el-date-picker style="width:100%" type="date" value-format="yyyy-MM-dd" + v-model="unitobj.criteria_value"> + </el-date-picker> + </div> + <div v-else-if="unitobj.content_type == 'upload'"> + <table> + <tr> + <td align="left" style="width: 100%; padding: 0px; overflow: hidden; border-bottom: 1px solid #DCDFE6;"> + <span class="h_cellclick" @click="buttonArrayClick(unitobj, {code:'showfile'})">{{unitobj.criteria_value}}</span> + </td> + <td > + <template v-if="isBusiness && unitobj.criteria_value"> + <el-button type="primary" style="padding: 5px;" @click="buttonArrayClick(unitobj, {code:'delfile'})" icon="el-icon-delete" class="form_delfile">鍒犻櫎闄勪欢</el-button> + </template > + + <template v-else-if="isBusiness && !unitobj.criteria_value"> + <el-button type="primary" style="padding: 5px;" @click="buttonArrayClick(unitobj, {code:'upload'})" icon="el-icon-upload" class="form_uploadfile">闄勪欢涓婁紶</el-button> + </template > + </td> + </tr> + </table> + </div> + </el-col> + </el-row> + </div> + </div> + <div style="width: 100%;height: 5px;margin: 25px 0px;background-color: gainsboro;opacity: 40%"></div> + </template > + </div> + </div> </div> <el-dialog title="濉啓鍘熷洜" :visible.sync="reasonvisible" height="50%"> -- Gitblit v1.8.0