From b5812cecf98745f4b36a8bf72ff082c3220ef1d6 Mon Sep 17 00:00:00 2001 From: zhangyanpeng <bob.zhang@highdatas.com> Date: 星期五, 02 八月 2024 14:32:07 +0800 Subject: [PATCH] Merge branch 'master' of http://highdatas.com:9000/r/promotion/promotion_html --- module/md/page/customer/page/customer_basic_acct.html | 281 +++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 207 insertions(+), 74 deletions(-) diff --git a/module/md/page/customer/page/customer_basic_acct.html b/module/md/page/customer/page/customer_basic_acct.html index 35cb2f3..ec53615 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,13 +181,7 @@ this.popupParames = clone(Root.popupParames); this.title = this.popupParames.title || this.popupParames.text if (this.popupParames.data) { - this.formData = clone(this.popupParames.data); - if (this.formData.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 } var customer_id = "" @@ -319,6 +321,10 @@ //棰勫姞杞芥暟鎹悗缁欏摢浜涘瓧娈佃缃畂ptions鎴杅ormatterjson if (me.dataRequestObj.newEntity) { var formData = clone(me.dataRequestObj.newEntity.data[me.dataname]); + formData['company_id'] = '1181' + formData['company_name'] = '姹囧畤鍒惰嵂' + formData['bu_id'] = 'BU-GM' + formData['bu_name'] = '鑲跨槫' // formData.product_category_name = []; if (me.newformData) { let formData_ = clone(formData); @@ -469,6 +475,24 @@ // 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_) 鏋勫缓鐨刦ormdata_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) + } + }) + } me.initData(); // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂� @@ -584,7 +608,35 @@ 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 criteria_data = [] + me.formData_criteria = result.data.md_org_account_criteria + me.formFields_criteria.map(f=>{ + me.formData_criteria.map(v=>{ + if (f.id == v.criteria_id) { + var obj_ = {} + Object.assign(obj_,f,v) + criteria_data.push(obj_) + } + }) + }) + me.formdata_rule_group.map(g => { + criteria_data.map(v => { + if (v.group_code == g.group_code) { + g.children.push(v) + } + }) + }) + } + else { + me.formdata_rule_group.map(g=>{ + me.formFields_criteria.map(f=>{ + if(f.group_code == g.group_code) { + g.children.push(f) + } + }) + }) + } if (result.meta) { var metaBydataname = {}; for (var dataname_ in result.meta) { @@ -706,6 +758,8 @@ //璁剧疆瀛楁浜嬩欢 me.tableFieldClick(); } + //鏁版嵁澶勭悊 + var formData_ = {}; if (me.accountnccdata.id) { @@ -722,20 +776,20 @@ business_address: me.accountnccdata.md_org__business_address, // 缁忛攢鍟嗗叧鑱斾俊鎭� - business_person: me.accountnccdata.md_org__business_person, - business_phone: me.accountnccdata.md_org__business_phone, - business_email: me.accountnccdata.md_org__business_email, - md_org__license_business_no: me.accountnccdata.md_org__license_business_no, - md_org__register_address: me.accountnccdata.md_org__register_address, - md_org__code: me.accountnccdata.md_org__code, - md_org__ncc_code: me.accountnccdata.md_org__ncc_code, - md_org__province: me.accountnccdata.md_org__province, - md_org__city: me.accountnccdata.md_org__city, - md_org__county: me.accountnccdata.md_org__county, - - md_org__receive_address: me.accountnccdata.md_org__receive_address, - md_org__receiver_name: me.accountnccdata.md_org__receiver_name, - md_org__receiver_phone: me.accountnccdata.md_org__receiver_phone, + business_person: me.accountnccdata.md_org__business_person, + business_phone: me.accountnccdata.md_org__business_phone, + business_email: me.accountnccdata.md_org__business_email, + md_org__license_business_no: me.accountnccdata.md_org__license_business_no, + md_org__register_address: me.accountnccdata.md_org__register_address, + md_org__code: me.accountnccdata.md_org__code, + md_org__ncc_code: me.accountnccdata.md_org__ncc_code, + md_org__province: me.accountnccdata.md_org__province, + md_org__city: me.accountnccdata.md_org__city, + md_org__county: me.accountnccdata.md_org__county, + + md_org__receive_address: me.accountnccdata.md_org__receive_address, + md_org__receiver_name: me.accountnccdata.md_org__receiver_name, + md_org__receiver_phone: me.accountnccdata.md_org__receiver_phone, } for (var k in me.formData) { @@ -1285,7 +1339,7 @@ if (this.formData.business_email) { // 濉啓浜嗛偖绠憋紝鍒欐洿鏂癿d_org涓殑閭淇℃伅 var param = { - dataname: "md_org", + dataname: "md_org_account", id: this.formData.org_id, data: { md_org: { @@ -1381,7 +1435,6 @@ // return // } - console.log(param); // return 0 Server.call("root/data/" + operator_, param, function(result) { console.log(result); @@ -1449,56 +1502,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) { @@ -1509,6 +1519,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', @@ -1528,13 +1546,33 @@ if(me.iscommit) { // param.to_state = "OpeningApproval";//鎻愪氦 if (me.formData.org_ncc_id) { - param.refer = { - dataname: "md_org_account_ncc", - id: me.formData.org_ncc_id - } + // param.refer = { + // dataname: "md_org_account", + // id: me.formData.org_ncc_id + // } } } + 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.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_; @@ -1553,8 +1591,6 @@ return } - console.log(param); - // return Server.call("root/data/" + operator_, param, function(result) { console.log(result); if (result.success) { @@ -1774,6 +1810,22 @@ padding: 5px; box-sizing: border-box; } + .me_h_itemgroup_row { + margin-bottom: 10px; + } + .me_h_itemgroup_row .me_h_unitlabel:before { + content: '*'; + color: #F56C6C; + margin-right: 4px; + } + .me_h_itemgroup_row .me_h_nounitlabel:before { + content: '*'; + color: #F56C6C00; + margin-right: 4px; + } + .itemgroup_row_item { + text-align: left; + } </style> </head> @@ -1839,6 +1891,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