From feeff00e9c28cbf82639295759d5f507187d356f Mon Sep 17 00:00:00 2001 From: cyy <cuiqian2004@163.com> Date: 星期日, 16 六月 2024 22:19:53 +0800 Subject: [PATCH] 5600 input——param --- pages/modal/5602.vue | 508 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 437 insertions(+), 71 deletions(-) diff --git a/pages/modal/5602.vue b/pages/modal/5602.vue index 1090b40..4e0267d 100644 --- a/pages/modal/5602.vue +++ b/pages/modal/5602.vue @@ -1,4 +1,7 @@ <style> +.v-headStyle:first-child{ + margin-top: 15rpx; +} .v-headStyle .txt_title{ font-size: 34rpx; text-align: right; @@ -62,13 +65,16 @@ background-color:#efefef; padding: 20rpx 20rpx 4rpx 0px; border-radius: 12rpx; - margin-bottom: 20rpx; + margin: 10rpx 0 20rpx 0; text-align: right; } .dv-panel-input{ width: 100%; display: inline-block; text-align: left; +} +.dv-panel-input .dv-input{ + margin-bottom: 2rpx; } .dv-panel .txt_title{ font-size: 34rpx; @@ -233,20 +239,30 @@ <!-- 琛ㄥご鏍峰紡 --> <view class="v-headStyle" v-for="(item,index) in head_styledef.form.items" > <text class="txt_title" :style="{'width':item.labelWidth+'px'}">{{item.label}}锛�/text> - <view class="input-wrapper"> + <!-- 涓嬫媺妗�鍗曢� item.useDict?item.dict:item.selections--> + <uni-data-select id="dv_select" v-if="item.name=='Select'" + :class="item.disabled?'input-disabled':''" + v-model="item.value" + :localdata="item.dict" + @change="onEnterChange(item)" + :disabled="item.disabled" + :clear="false" + ></uni-data-select> + <view class="input-wrapper" v-if="item.name=='Input' || item.name=='InputNumber'"> <text v-if="item.setting.prefix" class="uni-icon" :class="[item.setting.prefix]" @click="onEnterChange(item)"></text> <input class="uni-input" - :type="item.name=='Input'?'text':'text'" + :class="item.disabled?'input-disabled':''" + :type="item.name=='Input'?'text':'number'" v-model="item.value" :disabled="item.disabled" :placeholder="item.placeholder" :style="{'width':item.setting.prefix && item.setting.suffix?'78%':item.setting.prefix || item.setting.suffix?'87%':'96%'}" - :focus="focusMateria" - @focus="ontap(item)" + :focus="focusFieldId == item.fieldId" + @focus="ontap(index,item)" @keyup.enter="onEnterChange(item)" @blur="onEnterChange(item)" /> @@ -283,9 +299,9 @@ :id="'tabpanel'+style.form.htmlobjId" :class="style.form.htmlobjId==active_id?'bk-active':activelist[ii].active==true?'bk-active':''"> <div class="dv-panel-input"> - <div v-for="(item,index) in style.form.items"> + <div class="dv-input" v-for="(item,index) in style.form.items"> <!-- 鏅�甯冨眬 --> - <view v-if="item.name=='Input'"> + <view v-if="item.name!='Layout'"> <text class="txt_title" :style="{'width':item.labelWidth+'px'}">{{item.label}}锛�/text> <span class="form-item-span" v-if="item.disabled">{{item.value}}</span> <input @@ -393,7 +409,7 @@ ClsID: "Sorting_Detail", ClsID2: "Sorting_Result", param: {}, - focusMateria:false, + focusFieldId:"", head_styledef:{ form:{ items:[] @@ -402,7 +418,9 @@ detail1_styledef:{}, detail1StyleDefList:[], detail2_styledef:{}, - detail2StyleDefList:[], + detail2StyleDefList:[],//鍒嗛〉鏁版嵁 + detail1ExtData: {}, + detail2ExtData: {}, //鍒嗛〉鎵╁睍鏁版嵁 // 鍒嗘鍣ㄦ暟鎹� current: 0, Before_OK_Event:{}, @@ -415,6 +433,7 @@ onLoad(options) { // console.log(options); uni.setNavigationBarTitle({ title: options.titlename}); //璁剧疆椤堕儴鏍囬 + this.$data.title = options.titlename; this.$data.param = JSON.parse(options.param); // console.log(this.$data.param); //鑾峰彇鏁版嵁绫荤殑鑷畾涔夎〃鍗曞弬鏁�@@ -433,10 +452,30 @@ this.Detail2_UIstyleGetInfo(this.ClsID2,this.$data.param.Sub_Page[1].UI_Style.ID); console.log(this.$data.param); - //椤甸潰鍒濆鍖栬幏鍙栫劍鐐�- // this.focusMateria=true; }, methods: { + setData: function(obj) { + let that = this; + let keys = []; + let val, data; + + Object.keys(obj).forEach(function(key) { + keys = key.split("."); + val = obj[key]; + data = that.$data; + keys.forEach(function(key2, index) { + if (index + 1 == keys.length) { + that.$set(data, key2, val); + } else { + if (!data[key2]) { + that.$set(data, key2, {}); + } + } + data = data[key2]; + }); + }); + }, + async Head_UIStyleGetInfo(class_id,style_id){ //鑾峰彇鑷畾涔夎〃鍗曟牱寮� var $this = this; var dataInfo={ @@ -456,11 +495,18 @@ $this.$data.head_styledef = ret.result.style_def? JSON.parse(styledef): {}; // this.form = this.head_styledef.form.model; // console.log($this.$data.head_styledef); - // $this.head_styledef.form.items.forEach(async (ele,index) => { - // if(ele.useDict==true){ //鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀 - // await this.DictGetInfo(ele.bind.dict,index,'mast'); - // } - // }); + $this.head_styledef.form.items.forEach(async (ele,index) => { + if(ele.useDict==true){ //鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀 + await this.DictGetInfo(ele.bind.dict,index,'mast'); + } + if($this.focusFieldId == "") + { + if(ele.name=='Input' || ele.name=='InputNumber') + { + $this.setData({focusFieldId:ele.fieldId}) + } + } + }); }else{ uni.showModal({title:"閿欒1",content:ret.err_msg,showCancel:false,confirmText:"鍙栨秷"}); } @@ -493,11 +539,11 @@ // var aa = JSON.stringify(this.detail1_styledef); // $this.$data.detail1StyleDefList.push(JSON.parse(aa)); // console.log($this.$data.detail1StyleDefList); - // $this.detail1_styledef.form.items.forEach(async (ele,index) => { - // if(ele.useDict==true){ //鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀 - // await this.DictGetInfo(ele.bind.dict,index,'sub'); - // } - // }); + $this.detail1_styledef.form.items.forEach(async (ele,index) => { + if(ele.useDict==true){ //鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀 + await this.DictGetInfo(ele.bind.dict,index,'sub'); + } + }); }else{ uni.showModal({title:"閿欒2",content:ret.err_msg,showCancel:false,confirmText:"鍙栨秷"}); } @@ -565,6 +611,9 @@ $this.head_styledef.form.model[attr] = itemName; } $this.head_styledef.form.items[index].dict=list; + var head_styledef = JSON.parse(JSON.stringify($this.head_styledef)); + $this.head_styledef=[]; + $this.head_styledef = head_styledef; // console.log($this.$data.detail1StyleDefList); } else{ @@ -574,25 +623,27 @@ $this.detail1_styledef.form.model[attr] = itemName; } $this.detail1_styledef.form.items[index].dict=list; - console.log($this.$data.detail1_styledef); + var detail1_styledef = JSON.parse(JSON.stringify($this.detail1_styledef)); + $this.detail1_styledef=[]; + $this.detail1_styledef = detail1_styledef; + // console.log($this.$data.detail1_styledef); } }else{ - uni.showModal({title:"閿欒1.2",content:success.err_msg,showCancel:false,confirmText:"鍙栨秷"}); + uni.showModal({title:"閿欒9.1",content:success.err_msg,showCancel:false,confirmText:"鍙栨秷"}); } }).catch(ex=>{ // console.log(ex); - uni.showModal({title:"閿欒1.3",content:ex.errMsg,showCancel:false,confirmText:"鍙栨秷"}); + uni.showModal({title:"閿欒9",content:ex.errMsg,showCancel:false,confirmText:"鍙栨秷"}); }); }, - ontap(item){ //鎵爜鍔熻兘 + ontap(index,item){ //鎵爜鍔熻兘 // var $ele = e; - //console.log(e.target) getApp().onScan((result)=>{ console.log(result.decodedata); item.value = result.decodedata; - uni.hideKeyboard(); + //uni.hideKeyboard(); var $this = this; console.log(item); @@ -604,18 +655,21 @@ var onSuffixClickCallbackEvent = item.bind.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠� var onSuffixClickEvent = item.bind.onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋� var isflag = false; - + if(onChangeEvent.id){ //鍐呭鍙樺寲鍚庝簨浠� $this.onChange(onChangeEvent); } - if(item.value){ //绗竴涓緭鍏ユ涓嶄负绌�- $this.focusMateria = true; //鍒濆鍖栵紝绗簩涓緭鍏ユfocus灞炴� - // setTimeout(function(){ - // $this.focusMateria=true; //绗簩涓緭鍏ユ鑾峰彇鐒︾偣 - setTimeout(function(){ - uni.hideKeyboard(); - },100); - // },500); + if(item.value){ //杈撳叆妗嗕笉涓虹┖ + //鍒濆鍖栵紝涓嬩釜杈撳叆妗唂ocus灞炴� + const curIndex = $this.head_styledef.form.items.findIndex((ele, index2, arr) => { + return (ele.name=='Input' || ele.name=='InputNumber') && index2 > index; + }) + if(curIndex > -1){ + $this.setData({focusFieldId: $this.head_styledef.form.items[curIndex].fieldId}) + } + // setTimeout(function(){ + // uni.hideKeyboard(); + // },1000); } // if(onSuffixClickCallbackEvent.id){ //鍚庡浘鏍囩偣鍑讳簨浠� // this.onSuffixClick(onSuffixClickCallbackEvent); @@ -648,21 +702,89 @@ // } } }, + getDetailAttrList(list,selectButton) + { + const detailAttrList = []; + list.forEach(style=>{ + var detail_attr={}; + style.form.items.forEach(item => { + if(item.name == "Layout"){ //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�+ item.setting.colList.forEach(cols => { + if(cols!=null) detail_attr[cols.fieldId] = cols.value; + }); + }else + detail_attr[item.fieldId] = item.value; + }); + + detail_attr['id'] = style.form.objId; + if(selectButton==true){ //鍒ゆ柇閫夋嫨鎸夐挳鏄惁涓簍rue + if(style.SelBut_Checked==true) + detailAttrList.push(detail_attr); + } else + detailAttrList.push(detail_attr); + }); + // console.log(detailAttrList); + list.forEach(style=>{ + style.form.attrs.forEach(attr => { + for(var key in detailAttrList){ + if(style.form.objId == detailAttrList[key]['id']){ + var keys = Object.keys(detailAttrList[key]); + var isflag = true; + keys.forEach((ele) => { + if(ele == attr.attr) isflag = false; + }); + if(isflag) { + detailAttrList[attr.attr] = attr.value; + } + } + } + }); + }); + + const jsonlist=[]; + detailAttrList.forEach(attr=>{ + jsonlist.push({ + id:attr["id"]|| "", + attrs: Object.keys(attr).map((a) => ({ + attr: a, + value: attr[a] || "", + })).filter((a)=>{return a.attr != "id"}) + }); + }); + return jsonlist; + }, + // 鍐呭鍙樺寲鍚庝簨浠� async onChange(event) { try { if (event.id) { + + //鑾峰彇琛ㄥご灞炴� + var head_attr = {}; + this.head_styledef.form.items.forEach(item => { + head_attr[item.fieldId] = item.value; + }); var obj_attr = this.head_styledef.form.model; // console.log(obj_attr); var input_param = Base64.encode( JSON.stringify( - Object.keys(obj_attr).map((a) => ({ + Object.keys(head_attr).map((a) => ({ attr: a, - value: obj_attr[a] || "", + value: head_attr[a] || "", })) ) ); var $this = this; + const jsonList = [] + const itemlist1= $this.getDetailAttrList($this.detail1StyleDefList,$this.param.Sub_Page[0].Select_Button) + const itemlist2= $this.getDetailAttrList($this.detail2StyleDefList,$this.param.Sub_Page[1].Select_Button) + + jsonList.push({page_name:$this.param.Sub_Page[0].Name,item_list:itemlist1,ext_data:$this.detail1ExtData}) + jsonList.push({page_name:$this.param.Sub_Page[1].Name,item_list:itemlist2,ext_data:$this.detail2ExtData}) + + const data_json = Base64.encode( + JSON.stringify(jsonList) + ); var dataInfo={ ed_type: 0, start_transaction: '', @@ -676,9 +798,9 @@ ref_cls_id: '', rel_obj_id: '', user_login: '', - data_json: '', + data_json: data_json, compose_info: '', - ext_info: '', + ext_info: "", global_attr: '', input_param: input_param, }; @@ -690,7 +812,7 @@ var tip = result.err_info ? typeof result.err_info == 'string' ? result.err_info : result.err_info.join('<br/>') : ''; if (result.ret == 801) uni.showModal({title:'鎻愮ず',content:tip,showCancel:false,confirmText:"鍙栨秷"}); else uni.showModal({title:'鎻愮ず',content:tip+',鎻愮ず:'+result.ret,showCancel:false,confirmText:"鍙栨秷"}); - return false + return false; }else{ var tip = result.info ? typeof result.info == 'string' ? result.info : result.info.join('<br/>') : ''; if (tip) uni.showModal({title:'鎻愮ず',content:tip,showCancel:false,confirmText:"鍙栨秷"}); @@ -705,21 +827,16 @@ else if(item.action_type == "set_subtable_page_content"){ //宸插垎鎷� $this.$data.param.Show_Welcom_Page=false; var value = item.value; - if(value.clear == true && $this.$data.detail1StyleDefList.length>0){ //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鍒嗘嫞鏄惁鏈夋暟鎹�+ if(value.clear == true && $this.$data.detail1StyleDefList.length>0 && value.page_name == $this.$data.param.Sub_Page[0].Name){ //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鍒嗘嫞鏄惁鏈夋暟鎹� uni.showModal({ title: '鎻愮ず', - content: '绯荤粺妫�祴鍒版湁寰呭垎鎷d腑鐨勮揣鍝侊紝缁х画鎿嶄綔浼氭竻绌猴紝鏄惁缁х画锛�, + content: '绯荤粺妫�祴鍒版湁寰呭垎鎷d腑鐨勬暟鎹紝缁х画鎿嶄綔浼氭竻绌猴紝鏄惁缁х画锛�, success: function (res) { if (res.confirm) { $this.$data.detail1StyleDefList=[]; - $this.$data.detail2StyleDefList=[]; $this.viewAceionContent(value); } else if (res.cancel) { - if(value.page_name == $this.$data.param.Sub_Page[0].Name){ //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞 - $this.$data.detail1StyleDefList=[]; - }else{ - $this.$data.detail2StyleDefList=[]; - } + $this.$data.detail1StyleDefList=[]; $this.viewAceionContent(value); } } @@ -758,6 +875,30 @@ } }); } + else if (item.action_type == "set_subtable_page_row") { + $this.viewActionSetRow( item.value) + + } else if (item.action_type == "set_subtable_page_ext_data") { + var value = item.value; + if (value.page_name == $this.$data.param.Sub_Page[0].Name) { //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞 + $this.setData({detail1ExtData:value.ext_data}) + } else if (value.page_name == $this.$data.param.Sub_Page[1].Name) { + $this.setData({detail2ExtData:value.ext_data}) + } + } + else if (item.action_type == "clear_subpage_rows") { + var value = item.value; + if (value.page_name == $this.$data.param.Sub_Page[0].Name) { //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞 + $this.setData({detail1StyleDefList:[],detail1ExtData:{}}) + } else if (value.page_name == $this.$data.param.Sub_Page[1].Name) { + $this.setData({detail2StyleDefList:[],detail2ExtData:{}}) + } + } + else if (item.action_type == "set_dlg_current_edit_attr") { + if($this.focusFieldId == item.value) + $this.setData({focusFieldId: ""}) + $this.setData({focusFieldId:item.value}) + } else if(item.action_type == "set_dlg_attr"){ // value = {"attr":"xxx", "value":"xxx"} var data = item.value; @@ -792,9 +933,89 @@ } }, + operationNumber(value1, value2,operation){ + var number1 = 0 + var number2 =0 + if(value1) + number1 = parseInt(value1) + if(value2) + number2 = parseInt(value2) + if(operation == "+") + { + return number1 + number2 + } + else if(operation == "-") + { + return number1 - number2 + } + else if(operation == "*") + { + return number1 * number2 + } + else if(operation == "/") + { + if(number2) + return number1 / number2 + else + return number1 + } + else return number2 + }, + //鏇存柊鍒嗛〉绛句腑鐨勫垪琛ㄩ」鍐呭 + viewActionSetRow(value) { + const $this = this + var detailStyleDefList = [] + if(value.page_name == $this.$data.param.Sub_Page[1].Name) + { + detailStyleDefList = $this.$data.detail2StyleDefList + } + else if(value.page_name == $this.$data.param.Sub_Page[0].Name) + { + detailStyleDefList =$this.$data.detail1StyleDefList + } + detailStyleDefList.forEach(ele=>{ + value.row.forEach((rowData) => { + if(ele.form.objId == rowData.id){ + rowData.attrs.forEach(attr=>{ + ele.form.items.forEach(ele2=>{ + if(ele2.name!='Layout'){ + if(ele2.fieldId == attr.attr){ + ele2.value =$this.operationNumber(ele2.value,attr.value,attr.operation) + } + } else if(ele2.name=='Layout'){ + ele2.setting.colList.forEach(col=>{ + if(col) + { + if(col.fieldId == attr.attr) + { + col.value =$this.operationNumber(col.value,attr.value,attr.operation) + } + } + }) + } + }); + }); + } + }) + }); + if(value.page_name == $this.$data.param.Sub_Page[1].Name) + { + $this.setData({detail2StyleDefList:detailStyleDefList}) + } + else if(value.page_name == $this.$data.param.Sub_Page[0].Name) + { + $this.setData({detail1StyleDefList:detailStyleDefList}) + } + + }, + //鍔犺浇姝e湪鍒嗘嫞鍐呭 viewAceionRow(data,type){ // console.log(data); + if(JSON.stringify(data.row) =='{}'){ + return; + } + data.row.forEach(row=>{ var styleStr = JSON.stringify(this.$data.detail1_styledef); if(type){ //纭畾鍚庤剼鏈繘鍏ュ姞杞藉凡鍒嗘嫞鏁版嵁 styleStr = JSON.stringify(this.$data.detail2_styledef); @@ -804,7 +1025,10 @@ } } var detailStyle = JSON.parse(styleStr); - data.row.attrs.forEach(attr=>{ + detailStyle.form.objId = row.id; + detailStyle.form.htmlobjId = row.id?row.id.replace(/-/g,'').replace('{','').replace('}',''):'null'; + detailStyle.form.attrs = row.attrs; + row.attrs.forEach(attr=>{ detailStyle.form.items.forEach(ele=>{ if(ele.name!='Layout'){ if(ele.fieldId == attr.attr) ele.value = attr.value; @@ -817,27 +1041,35 @@ } }); }); + if(type){ //纭畾鍚庤剼鏈繘鍏ュ姞杞藉凡鍒嗘嫞鏁版嵁 - detailStyle.form.objId = data.row.id; this.$data.detail2StyleDefList.push(detailStyle); // console.log(this.$data.detail2StyleDefList); }else{ if(data.page_name == this.$data.param.Sub_Page[1].Name){ //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄凡鍒嗘嫞 - detailStyle.form.objId = data.row.id; this.$data.detail2StyleDefList.push(detailStyle); // console.log(this.$data.detail2StyleDefList); }else{ - detailStyle.form.objId = data.row.id?data.row.id.replace(/-/g,'').replace('{','').replace('}',''):'null'; - detailStyle.form.attrs = data.row.attrs; this.$data.detail1StyleDefList.push(detailStyle); this.activelist.push({active:false}); // console.log(this.$data.detail1StyleDefList); } } + }); }, //鍔犺浇宸插垎鎷e唴瀹� viewAceionContent(data){ var $this = this; + + if (data.page_name == $this.$data.param.Sub_Page[0].Name) { + $this.detail1ExtData = data.ext_data || {} + } + else if (data.page_name == $this.$data.param.Sub_Page[1].Name) { + $this.detail2ExtData = data.ext_data || {} + } + if(JSON.stringify(data.content) =='{}'){ + return; + } data.content.forEach(cont=>{ var styleStr = JSON.stringify($this.$data.detail2_styledef); //宸插垎鎷� if(data.page_name == $this.$data.param.Sub_Page[0].Name){ //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞 @@ -847,6 +1079,7 @@ detailStyle.SelBut_Checked = data.checkbox??true; detailStyle.form.objId = cont.id; detailStyle.form.htmlobjId = cont.id?cont.id.replace(/-/g,'').replace('{','').replace('}',''):'null'; + detailStyle.form.attrs = cont.attrs; cont.attrs.forEach(attr=>{ detailStyle.form.items.forEach(ele=>{ if(ele.name!='Layout'){ @@ -860,13 +1093,61 @@ } }); }); - detailStyle.form.attrs = cont.attrs; + if(data.page_name == $this.$data.param.Sub_Page[0].Name){ //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞 - $this.$data.detail1StyleDefList.push(detailStyle); //寰呭垎鎷�+ //濡傛灉 clear = false 鍒欎笉闇�娓呴櫎锛屾牴鎹甶d鍒ゆ柇鏄惁瀛樺湪锛屼笉瀛樺湪鎻掑叆鍒伴〉闈紝濡傛灉瀛樺湪鐢ㄦ柊鐨勫睘鎬ц鐩�+ if(data.clear == false){ + var isflag = true; + $this.detail1StyleDefList.forEach((style,index)=>{ + if(style.form.objId == detailStyle.form.objId){ + cont.attrs.forEach(attr=>{ + style.form.items.forEach(ele=>{ + if(ele.name!='Layout'){ + if(ele.fieldId == attr.attr) ele.value = attr.value; + } else if(ele.name=='Layout'){ + ele.setting.colList.forEach(col=>{ + if(col){ + if(col.fieldId == attr.attr) col.value = attr.value; + } + }); + } + }); + }); + isflag = false; + } + }); + if(isflag) $this.detail1StyleDefList.push(detailStyle); //寰呭垎鎷�+ }else{ + $this.detail1StyleDefList.push(detailStyle); //寰呭垎鎷�+ } $this.activelist.push({active:false}); // console.log($this.$data.detail1StyleDefList); }else{ - $this.$data.detail2StyleDefList.push(detailStyle); //宸插垎鎷�+ if(data.clear == false){ + //濡傛灉 clear = false 鍒欎笉闇�娓呴櫎锛屾牴鎹甶d鍒ゆ柇鏄惁瀛樺湪锛屼笉瀛樺湪鎻掑叆鍒伴〉闈紝濡傛灉瀛樺湪鐢ㄦ柊鐨勫睘鎬ц鐩�+ var isflag = true; + $this.detail2StyleDefList.forEach((style,index)=>{ + if(style.form.objId == detailStyle.form.objId){ + cont.attrs.forEach(attr=>{ + style.form.items.forEach(ele=>{ + if(ele.name!='Layout'){ + if(ele.fieldId == attr.attr) ele.value = attr.value; + } else if(ele.name=='Layout'){ + ele.setting.colList.forEach(col=>{ + if(col){ + if(col.fieldId == attr.attr) col.value = attr.value; + } + }); + } + }); + }); + isflag = false; + } + }); + if(isflag) $this.detail2StyleDefList.push(detailStyle); //宸插垎鎷�+ }else{ + $this.detail2StyleDefList.push(detailStyle); //宸插垎鎷�+ } // console.log($this.$data.detail2StyleDefList); } }); @@ -1002,15 +1283,17 @@ var jsonlist=[]; detailAttrList.forEach(attr=>{ jsonlist.push({ - id:'', + id:attr["id"]|| "", attrs: Object.keys(attr).map((a) => ({ attr: a, value: attr[a] || "", - })) + })).filter((a)=>{return a.attr != "id"}) }); }); // console.log(jsonlist); - $this.runCustomEvent(event,input_param,jsonlist,'1'); + const list = [] + list.push({page_name:$this.param.Sub_Page[0].Name,item_list:jsonlist,ext_data:$this.detail1ExtData}) + $this.runCustomEvent(event,input_param,list,'1'); // jsonlist.forEach(async (json,key)=>{ // await $this.runCustomEvent(event,input_param,json,'1'); // }); @@ -1089,15 +1372,18 @@ var jsonlist=[]; detailAttrList.forEach(attr=>{ jsonlist.push({ - id:'', + id:attr["id"]|| "", attrs: Object.keys(attr).map((a) => ({ attr: a, value: attr[a] || "", - })) + })).filter((a)=>{return a.attr != "id"}) }); }); + const list = [] + list.push({page_name:$this.param.Sub_Page[1].Name,item_list:jsonlist,ext_data:$this.detail2ExtData}) + // console.log(jsonlist); - $this.runCustomEvent(event,input_param,jsonlist,'2'); + $this.runCustomEvent(event,input_param,list,'2'); // jsonlist.forEach(async (json,key)=>{ // await $this.runCustomEvent(event,input_param,json,'2'); // }); @@ -1136,7 +1422,7 @@ var tip = result.err_info ? typeof result.err_info == 'string' ? result.err_info : result.err_info.join('<br/>') : ''; if (result.ret == 801) uni.showModal({title:'鎻愮ず',content:tip,showCancel:false,confirmText:"鍙栨秷"}); else uni.showModal({title:'鎻愮ず',content:tip+',鎻愮ず:'+result.ret,showCancel:false,confirmText:"鍙栨秷"}); - return false + return false; }else{ var tip = result.info ? typeof result.info == 'string' ? result.info : result.info.join('<br/>') : ''; if (tip) uni.showModal({title:'鎻愮ず',content:tip,showCancel:false,confirmText:"鍙栨秷"}); @@ -1147,7 +1433,8 @@ if(item.action_type == "insert_subtable_page_row"){ //鍒嗘嫞涓� var value = item.value; //鍔犺浇寰呭垎鎷f暟鎹�- $this.viewAceionRow(value,'add'); + $this.viewAceionRow(value,''); + // $this.viewAceionRow(value,'add'); //娓呯┖鏉$爜鍐呭 $this.$data.head_styledef.form.items.forEach((item,index) => { if(item.fieldId != "S_CNTR_CODE"){ @@ -1157,14 +1444,93 @@ } }); //娓呴櫎寰呭垎鎷d腑鎴愬姛鐨勬暟鎹�- $this.$data.detail1StyleDefList.forEach((style,index)=>{ - if(style.form.items[0].fieldId == json.attrs[0].attr && style.form.items[0].value == json.attrs[0].value){ - $this.$data.detail1StyleDefList.splice(index,1); - return; - } - }); + // $this.$data.detail1StyleDefList.forEach((style,index)=>{ + // if(style.form.items[0].fieldId == json.attrs[0].attr && style.form.items[0].value == json.attrs[0].value){ + // $this.$data.detail1StyleDefList.splice(index,1); + // return; + // } + // }); // this.detail2StyleDefList=[]; uni.showModal({title:"鎻愮ず",content:"鍒嗘嫞鎴愬姛",showCancel:false,confirmText:"鍙栨秷"}); + } else if(item.action_type == "set_subtable_page_content"){ //鍔犺浇澶氭潯鏁版嵁 + $this.param.Show_Welcom_Page=false; + var value = item.value; + if(value.clear == true && $this.detail1StyleDefList.length>0){ //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,寰呭垎鎷f槸鍚︽湁鏁版嵁 + uni.showModal({ + title: '鎻愮ず', + content: '绯荤粺妫�祴鍒版湁寰呭垎鎷d腑鐨勬暟鎹紝缁х画鎿嶄綔浼氭竻绌猴紝鏄惁缁х画锛�, + success: function (res) { + if (res.confirm) { + $this.$data.detail1StyleDefList=[]; + $this.$data.detail2StyleDefList=[]; + $this.viewAceionContent(value); + } else if (res.cancel) { + $this.viewAceionContent(value); + } + } + }); + } else { + $this.viewAceionContent(value); + } + } else if(item.action_type == "remove_subtable_page_row"){ //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+ var value = item.value; + if(value.page_name == $this.page.Sub_Page[0].Name){ //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞 + //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+ value.row.forEach(row=>{ + $this.detail1StyleDefList.forEach((ele,index)=>{ + if(ele.form.objId == row.id){ + $this.detail1StyleDefList.splice(index,1); + } + }); + }); + } + } + else if (item.action_type == "set_subtable_page_row") { + $this.viewActionSetRow( item.value) + + } else if (item.action_type == "set_subtable_page_ext_data") { + var value = item.value; + if (value.page_name == $this.$data.param.Sub_Page[0].Name) { //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞 + $this.setData({detail1ExtData:value.ext_data}) + } else if (value.page_name == $this.$data.param.Sub_Page[1].Name) { + $this.setData({detail2ExtData:value.ext_data}) + } + } + else if (item.action_type == "clear_subpage_rows") { + var value = item.value; + if (value.page_name == $this.$data.param.Sub_Page[0].Name) { //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞 + $this.setData({detail1StyleDefList:[],detail1ExtData:{}}) + } else if (value.page_name == $this.$data.param.Sub_Page[1].Name) { + $this.setData({detail2StyleDefList:[],detail2ExtData:{}}) + } + } + else if (item.action_type == "set_dlg_current_edit_attr") { + if($this.focusFieldId == item.value) + $this.setData({focusFieldId: ""}) + $this.setData({focusFieldId:item.value}) + } + else if(item.action_type == "refresh"){ //鍒锋柊 + var value = item.value; + //娓呴櫎寰呭垎鎷f垚鍔熺殑鏁版嵁 + // value.forEach((val_id,key)=>{ + // this.detail1StyleDefList.forEach((style,index)=>{ + // if(style.form.objId == val_id){ + // this.detail1StyleDefList.splice(index,1); + // return; + // } + // }); + // }); + //鍒锋柊褰撳墠椤甸潰 + uni.redirectTo({ + url:'../modal/5602?param='+JSON.stringify(this.$data.param)+"&titlename="+this.$data.title + }); + } else if(item.action_type == "prompt"){ //鎵撳紑绯荤粺鎻愮ず寮规 + var value = ''; + item.value.forEach(ele=>{ + if(value) value+='\n'; + value+=ele; + }); + uni.showModal({title:"绯荤粺鎻愮ず",content:value,showCancel:false,confirmText:"鍏抽棴"}); } }); }else{ -- Gitblit v1.9.1