From 2278ff7c0401f7f97e168a0943192357c1999cbf Mon Sep 17 00:00:00 2001 From: tom <tom.he@highdatas.com> Date: 星期六, 03 八月 2024 13:50:15 +0800 Subject: [PATCH] Merge branch 'master' of http://highdatas.com:9000/r/promotion/promotion_html --- module/md/page/customer/page/evaluation_management_edit.html | 499 +++++++++++++++++++++++++------------------------------ 1 files changed, 226 insertions(+), 273 deletions(-) diff --git a/module/md/page/customer/page/evaluation_management_edit.html b/module/md/page/customer/page/evaluation_management_edit.html index e09d1c3..97d605f 100644 --- a/module/md/page/customer/page/evaluation_management_edit.html +++ b/module/md/page/customer/page/evaluation_management_edit.html @@ -15,7 +15,8 @@ new FormVue({ el: "#vbody", data: { - dataname: "md_org_account_criteria", + // dataname: "md_org_account_criteria", + dataname: "md_org_account", title: "鎺ㄥ箍鍟嗚瘎浼颁俊鎭�", newformData: { id: uuid_short(), @@ -78,35 +79,52 @@ formFields: [], - formData: {}, - formData_: [], - formData_group:[], - formdata_obj:[{group_name:'瀹㈣璇勫垎',group_code:'Objective',children:[]},{group_name:'涓昏璇勫垎',group_code:'Subjective',children:[]}], + formData_criteria: [], //璇勫垎琛ㄨ繑鍥炵殑鏄暟缁� + formFields_criteria: [], + formdata_rule_group:[], activities: [ { + id:uuid_short(), + code:uuid_short()+'01', content: '涓村簥鎷滆', - timestamp: '2024-04-15' + timestamp: '2024-04-15', + remark:'娴嬭瘯淇℃伅', }, { + id:uuid_short(), + code:uuid_short()+'01', content: '鎻愬崟', - timestamp: '2024-06-10' + timestamp: '2024-06-10', + remark:'娴嬭瘯淇℃伅', }, { + id:uuid_short(), + code:uuid_short()+'01', content: '涓撮噰', - timestamp: '2024-06-29' + timestamp: '2024-06-29', + remark:'娴嬭瘯淇℃伅', }, { + id:uuid_short(), + code:uuid_short()+'01', content: '杩囦細鍑嗗涓庢矡閫�', - timestamp: '2024-07-01' + timestamp: '2024-07-01', + remark:'娴嬭瘯淇℃伅', }, { + id:uuid_short(), + code:uuid_short()+'01', content: '鍏ラ櫌閲囪喘', - timestamp: '2024-07-15' + timestamp: '2024-07-15', + remark:'娴嬭瘯淇℃伅', }, { + id:uuid_short(), + code:uuid_short()+'01', content: '姝e紡閲囪喘', - timestamp: '' + timestamp: '', + remark:'娴嬭瘯淇℃伅', }, ], treeData: [{ @@ -273,24 +291,24 @@ } else if (this.popupParames.sceneCode == "browse") {//鍙 - var newEntity_ = { - name: "md_org_account_criteria", - url: "root/data/getEntitySet", - paramsobj: {dataname: this.dataname,parent_id:this.popupParames.data.id}, - isnotoption: true, //true:涓嶆槸閫夐」 - } - this.dataRequest.push(newEntity_); + // var newEntity_ = { + // name: "md_org_account_criteria", + // url: "root/data/getEntitySet", + // paramsobj: {dataname: this.dataname,parent_id:this.popupParames.data.id}, + // isnotoption: true, //true:涓嶆槸閫夐」 + // } + // this.dataRequest.push(newEntity_); this.formAttr.disabled = true; } else if (this.popupParames.sceneCode == "edit") {//缂栬緫 - //鍔ㄦ�佽幏鍙栭粯璁ゆ暟鎹� - var newEntity_ = { - name: "md_org_account_criteria", - url: "root/data/getEntitySet", - paramsobj: {dataname: this.dataname,parent_id:this.popupParames.data.id}, - isnotoption: true, //true:涓嶆槸閫夐」 - } - this.dataRequest.push(newEntity_); + // //鍔ㄦ�佽幏鍙栭粯璁ゆ暟鎹� + // var newEntity_ = { + // name: "md_org_account_criteria", + // url: "root/data/getEntitySet", + // paramsobj: {dataname: this.dataname,parent_id:this.popupParames.data.id}, + // isnotoption: true, //true:涓嶆槸閫夐」 + // } + // this.dataRequest.push(newEntity_); // if (this.newformData) { // let formData_ = clone(this.formData); @@ -327,53 +345,23 @@ me.dataRequestObj = data; //棰勫姞杞芥暟鎹悗缁欏摢浜涘瓧娈佃缃畂ptions鎴杅ormatterjson if (me.dataRequestObj.md_org_account_criteria_rule) { - var formData_group_ = [] - // var formdata_obj = {} - formData_group_ = me.dataRequestObj.md_org_account_criteria_rule - me.formData_ = formData_group_ - me.formData_group = [...new Set(formData_group_.map(e=>e.group_name))] - // me.formData_group.push(formData_group_.filter(e=>e.group_code == 'Objective')[0]) - // me.formData_group.push(formData_group_.filter(e=>e.group_code == 'Subjective')[0]) - // me.formData_group.map(e=>e['children'] = []) - - // me.formData_group.map(e=>{ - // formData_group_.map() - // }) - // console.log(me.formData_group) - // me.formData_group.map(e=>{ - // // me.formdata_obj[e.group_code] = [] - // e[children] - // }) - // Object.assign() - } - if (me.dataRequestObj.md_org_account_criteria) { - var formData_ = [] - formData_ = me.dataRequestObj.md_org_account_criteria.data.entityset - // formData_.m - me.formData_.map(g=>{ - formData_.map(e=>{ - if (g.id == e.criteria_id) { - e['group_name'] = g.group_name - e['group_code'] = g.group_code - e['content_before'] = g.content_before - e['content_type'] = g.content_type - } - }) + 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.formdata_obj.map(g=>{ - formData_.map(v=>{ - if (v.group_code == g.group_code) { - // v['content_before'] = g.content_before - g.children.push(v) - } - }) - }) - // formData_.map(e => { - // e['children'] = me.formData_group.filter(v => v.id == e.criteria_id).length > 0 ? me.formData_group.filter(v => v.id == e.criteria_id)[0] : {} - // formdata_obj[e.] - // }) - console.log(me.formdata_obj) - } if (me.dataRequestObj.md_geo_county) { var md_geo_county_obj_ = {}; @@ -449,6 +437,49 @@ initData() { let me = this; var id_ = null; + if (this.formData.id) { + id_ = this.formData.id; + } + this.getRowDataById(id_, function(result) {//鏌ヨ鍚庣殑鍥炶皟锛岀敤浜庤幏鍙栧瓧娈电殑 + // if (result.meta && result.meta[me.dataname] && result.meta[me.dataname].fields) { + + // } + 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) { + me.fieldsToFieldsObj(); + + //璁剧疆瀛楁浜嬩欢 + me.tableFieldClick(); + } + }) }, @@ -543,114 +574,38 @@ } }); }, - open_terminallist(obj) { - var me = this; - Root.showPopup({ - url: "../md/customer/popup/customer_list.html", - width: 800, - height: 550, - data: this.oldObj, - dataname: "customer", - callback: function(obj, callback) { - let formData_ = clone(me.formData); - formData_.customer_name = obj.row.md_description; - formData_.customer_code = obj.row.md_code; - formData_.customer_id = obj.row.id; - - me.formData = formData_; - if (callback) { - callback(); - } - } - }); - }, - open_productlist(obj) { - var me = this; - Root.showPopup({ - url: "../md/product/popup/sku_list.html", - width: 800, - height: 550, - callback: function(obj, callback) { - let formData_ = clone(me.formData); - - formData_.product_id = obj.row.id; - formData_.product_code = obj.row.md_code; - formData_.product_name = obj.row.md_description; - //formData_.spec = obj.row.pack_specification; - - me.formData = formData_; - if (callback) { - callback(); - } - } - }); - }, - tablepopup_customerlist(obj) { - var me = this; - Root.showPopup({ - url: "../md/customer/popup/customer_list.html", - width: 800, - height: 550, - data: this.oldObj, - dataname: "customer", - callback: function(callbackobj, callback) { - obj.row.customer_code = callbackobj.row.md_code - obj.row.customer_name = callbackobj.row.md_description - - if (callback) { - callback(); - } - } - }); - }, - tablepopup_terminallist(obj) { - var me = this; - Root.showPopup({ - url: "../md/customer/popup/customer_list.html", - width: 800, - height: 550, - data: this.oldObj, - dataname: "customer", - callback: function(callbackobj, callback) { - obj.row.terminal_id = callbackobj.row.id - obj.row.terminal_name = callbackobj.row.md_description - - if (callback) { - callback(); - } - } - }); - }, - tablepopup_productlist(obj) { - var me = this; - Root.showPopup({ - url: "../md/product/popup/sku_list.html", - width: 800, - height: 550, - callback: function(callbackobj, callback) { - obj.row.product_id = callbackobj.row.id; - obj.row.product_code = callbackobj.row.md_code; - obj.row.product_name = callbackobj.row.md_description; - obj.row.spec = callbackobj.row.pack_specification; - obj.row.pack = callbackobj.row.unit; - - if (callback) { - callback(); - } - } - }); - }, stepClick(index) { console.log(index) }, onNodeClick(data) { console.log(data) }, - openDetail(activity) { + openDetail(row) { + + this.$nextTick(() => { + this.activities.map(e => { + if (e.id == row.id) { + document.getElementById(e.content).classList.add("card-body") + document.getElementById(e.content).getElementsByClassName("el-descriptions__body")[0].classList.add("card-body") + } + else { + document.getElementById(e.content).classList.remove("card-body") + document.getElementById(e.content).getElementsByClassName("el-descriptions__body")[0].classList.remove("card-body") + } + + if (e.id == row.id) { + document.getElementById(e.id).getElementsByClassName("el-timeline-item__node--normal")[0].classList.add("timeline-node") + } + else { + document.getElementById(e.id).getElementsByClassName("el-timeline-item__node--normal")[0].classList.remove("timeline-node") + } + }) + }) + var me = this; var data_ = {}; - var text_ = activity.content+"璇︽儏" + var text_ = row.content+"璇︽儏" var config = { totab: false, //true: 浠ab瀵艰埅鐨勬柟寮忔墦寮� width: "500px", @@ -658,7 +613,7 @@ icon: "icon-product", text: text_, id: uuid_short(),//totab: true鏃堕渶璁剧疆锛岀敤浜庡垽鏂槸鍚﹀凡鎵撳紑姝ら〉闈� - url: "module/approval/page/my_approval_list.html", + url: "module/md/page/customer/page/404.html", data: data_, delta: {}, // filter: "org_id='"+ me.selectedrow.org_id + "' and bu_id='" + me.selectedrow.bu_id + "'", @@ -683,7 +638,7 @@ icon: "icon-product", text: "閬撮�変俊鎭�" + (row.customer_code ? ("-" + row.customer_code) : ""), id: "evaluation_management_edit", - url: "module/md/page/customer/page/evaluation_management_404.html", + url: "module/md/page/customer/page/404.html", data: row, delta: {}, sceneCode: 'browse',//"refuseedit",//"approval", //"add"//"browse", @@ -714,108 +669,85 @@ //淇濆瓨 saveRowTable() { var me = this; - var operator_ = "save";//淇濆瓨 - - var entity_ = clone(this.formData); - var entity = {}; - for (var r in entity_) { - // if (entity_[r] || entity_[r] == "" || entity_[r] == false || entity_[r] == 0) { - entity[r] = entity_[r]; - // } - } - if(me.iscommit) { - operator_ = "commit";//鎻愪氦 - entity.state_code = "Open" - entity.state_name = "宸茬敓鏁�" - } + var operator_ = "saveEntity";//淇濆瓨 + //鏁版嵁妫�楠� + var formData_criteria_ = [] + var formData_criteria_new = [] + var criteria_ = {} + + me.formdata_rule_group.map(g=>{ + formData_criteria_ = formData_criteria_.concat(g.children) + }) //缂栬緫椤甸潰鐨勮瘎鍒嗘暟鎹拰棰樼洰 + // 姣旇緝 formData_criteria_涓庡師鏁版嵁 + me.formData_criteria.map(fo=>{ + formData_criteria_.map(fn=>{ + if (fo.criteria_id == fn.criteria_id) { //fo涓柊澧炵殑棰樼洰涓嶅弬涓庢瘮杈� + var str1 = fo.criteria_id + fo.criteria_value + var str2 = fn.criteria_id + fn.criteria_value + if (str1 === str2){} + else { + formData_criteria_new.push(fn) + } + } + }) + }) + let formData_criteria_history = clone(me.formData_criteria) + formData_criteria_history.map(e =>{ + e['data_id'] = e.id + delete e.id + }) + // me.formdata_rule_group.map(g=>{ + + // }) + + // var entity_ = clone(this.formData); + // var entity = {}; + // for (var r in entity_) { + // // if (entity_[r] || entity_[r] == "" || entity_[r] == false || entity_[r] == 0) { + // entity[r] = entity_[r]; + // // } + // } + // if(me.iscommit) { + // operator_ = "commit";//鎻愪氦 + // entity.state_code = "Open" + // entity.state_name = "宸茬敓鏁�" + // } let param = { - dataname: this.dataname, - // dataname: "md_org_customer", - // operator: operator_, + dataname: 'md_org_account_criteria', data: {}, } - param.data[this.dataname] = entity; - - Server.call("root/data/uniqueSaveEntity", param, function(result) { - console.log(result); - if (result.success) { - if(me.iscommit){ - me.iscommit = false; - Root.message({ - type: 'success', - message: '鎻愪氦鎴愬姛' - }); - me.saveAfter(); - } - else { - Root.message({ - type: 'success', - message: '淇濆瓨鎴愬姛' - }); - me.saveAfter(); - } + if (formData_criteria_new.length > 0) { + let param = { + dataname: "md_org_account_criteria", + data: {}, } - }, function(errorresult) { - console.log("閿欒淇℃伅", errorresult); - if (errorresult.messages && errorresult.messages.count && errorresult.messages.count.error) { - if (errorresult.messages.list) { - me.iscommit = false; - var config = { - totab: false, - // width: "1200px", - // height: 800, - icon: "icon-product", - text: "閿欒淇℃伅", - url: "module/tool/page/popup_error_messages.html", + param.data['md_org_account_criteria'] = formData_criteria_; + Server.call("root/data/saveEntity", param, function (result) { + console.log(result); + if (result.success) { + let formData_criteria_history = clone(me.formData_criteria) + formData_criteria_history.map(e =>{ + e['data_id'] = e.id + delete e.id + }) + let param_ = { + dataname: 'md_org_account_criteria_history', data: {}, - delta: errorresult.messages.list, - callback: function(obj, callback) { - if (callback) { - callback(); - } + } + param_.data['md_org_account_criteria_history'] = formData_criteria_history; + Server.call("root/data/saveEntity", param_, function (result2) { + if (result2.success) { + Root.message({ + type: 'success', + message: '淇濆瓨鎴愬姛' + }); + me.saveAfter(); } - }; - 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 - } - 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 { - me.iscommit = false; - Root.message({ - type: 'error', - message: '鎻愪氦澶辫触' - }); - } - }); + }) + } }, } @@ -883,6 +815,17 @@ div .el-card__header { padding: 10px 20px; } + .el-card { + cursor: pointer; + } + .card-body { + background: #f0f7ff !important; + /* line-height: 32px; */ + color: rgba(78, 151, 255, 1) !important; + } + .timeline-node { + background: rgba(78, 151, 255, 1) !important; + } </style> </head> @@ -906,12 +849,12 @@ <div style=" border: 1px solid #C0C4CC ;padding: 5px"> <div > <el-row style="display: flex;flex-direction: row;justify-content:space-between;padding-left: 91px;" > - <el-col :span="6"><div class="itemgroup_field"><span>璇勫垎椤�</span></div></el-col> - <el-col :span="18"><div class="itemgroup_field"><span>璇勫垎</span></div></el-col> + <el-col :span="6"><div class="itemgroup_field" style="font-size: 14px;font-weight: bold;margin-right: 10px;"><span>璇勫垎椤�</span></div></el-col> + <el-col :span="18"><div class="itemgroup_field" style="font-size: 14px;font-weight: bold;"><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_obj"> + <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;"> @@ -987,16 +930,26 @@ </div> <el-row> <el-col :span="12" style="padding-right: 10px;" > - <el-card class="box-card" style="min-height: 408px;"> + <el-card class="box-card" style="height: 408px;overflow: auto;"> <div slot="header" class="clearfix"> <span style="font-size: 14px;font-weight: bold;">鎺ㄥ箍杩囩▼</span> </div> <el-timeline :reverse="false" style="padding-top: 10px;"> - <el-timeline-item @click.native="openDetail(activity)" + <!-- <el-timeline-item @click.native="openDetail(activity)" v-for="(activity, index) in activities" :key="index" :timestamp="activity.timestamp"> {{activity.content}} + </el-timeline-item> --> + <el-timeline-item :reverse="false" :id="row.id" v-for="(row, k) in activities" :key="k" :timestamp="row.timestamp" placement="top"> + <div @click="openDetail(row)"> + <el-card :id="row.content" shadow="hover"> + <el-descriptions :title="row.content" :column="1" size="mini"> + </el-descriptions-item> + <el-descriptions-item label="澶囨敞">{{row.remark}}</el-descriptions-item> + </el-descriptions> + </el-card> + </div> </el-timeline-item> </el-timeline> </el-card> -- Gitblit v1.8.0