From fa73abee6209cd6f7c62c61c271826f7d413035d Mon Sep 17 00:00:00 2001 From: cuiqian2004 <cuiqian2004@163.com> Date: 星期五, 01 八月 2025 11:32:17 +0800 Subject: [PATCH] event result_type --- pages/modal/3200.vue | 517 +++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 372 insertions(+), 145 deletions(-) diff --git a/pages/modal/3200.vue b/pages/modal/3200.vue index f07e6d6..49a8ae3 100644 --- a/pages/modal/3200.vue +++ b/pages/modal/3200.vue @@ -1,5 +1,5 @@ <template> - <view class="uni-page-modal-3200"> + <view class="uni-page-modal-3200" :class="largeMode?'large-mode':''"> <view class="v-content"> <!-- 琛ㄥご鏍峰紡 --> <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" @on-focus="ontap" @@ -108,6 +108,7 @@ }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys('add2'), isFilter: true, param: {}, @@ -341,7 +342,8 @@ $this.head_styledef.form .model[ele.fieldId] = itemName; } - $this.head_styledef.form.items[index].selections = selections.map((a) => { + $this.head_styledef.form.items[index].selections = selections.map(( + a) => { return { value: a.value, text: a.label @@ -352,6 +354,25 @@ } }); + const app = getApp() + if (app.globalData.bindClasses) { + $this.head_styledef.form.items.push({ + name: "Input", + label: this.translate("classes"), + labelWidth: 100, + disabled: true, + value: app.globalData.classes, + setting: { + width: 100, + height: 50, + }, + bind: { + attr: "", + }, + fieldId: "S_CLASSES", + }) + $this.head_styledef.form.model["S_CLASSES"] = app.globalData.classes + } } } catch (ex) { @@ -512,35 +533,53 @@ } else { var tip = result.info ? typeof result.info == 'string' ? result.info : result.info.join('<br/>') : ''; + tip = tip || result.err_info if (tip) uni.showModal({ title: this.translateSys("tip"), content: tip, showCancel: false, confirmText: this.translateSys('close') }); + if ([0, 2, 3, 4, -1].includes(result.result_type)) { + if (result.result_type == 2) { - if (result.result_type == 0 && result.action) { - result.action.forEach(item => { - if (item.action_type == "set_query_condition") { - var value = item.value; - $this.wheres = value.condition; - $this.orderby = value.order ? value.order : $this - .orderby; - $this.pageindex = 1; - $this.query_id = ""; - $this.detail1StyleDefList = []; - $this.loadDataGetList(); + } else if (typeof result.result == 'string') { + if (result.result) { + uni.showModal({ + title: this.translateSys('tip'), + content: result.result, + showCancel: false, + confirmText: this.translateSys('close') + }); } + } + try { + var actionList = result.action || [] + actionList.forEach(item => { + if (item.action_type == "set_query_condition") { + var value = item.value; + $this.wheres = value.condition; + $this.orderby = value.order ? value.order : $this + .orderby; + $this.pageindex = 1; + $this.query_id = ""; + $this.detail1StyleDefList = []; + $this.loadDataGetList(); + } - }); - } else { - if (result.info) { + }); + } catch (ex) { + let actionList = (result.action || []).map(a => a.action_type).join(';') + let tip = typeof ex == 'string' ? ex : ex.message + tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}` uni.showModal({ - title: this.translateSys("tip"), - content: result.info, + title: this.translateSys('tip'), + content: tip, showCancel: false, confirmText: this.translateSys('close') }); + console.log(ex) + return } } } @@ -1055,6 +1094,7 @@ result .info : result.info.join('<br/>') : ''; + tip = tip || result.err_info if (tip) uni.showModal({ title: this.translateSys("tip"), content: tip, @@ -1198,8 +1238,8 @@ // var $ele = e; //console.log(e.target) getApp().onScan((result) => { - console.log(result.decodedata); - item.value = result.decodedata; + console.log(result); + item.value = result; uni.hideKeyboard(); var $this = this; console.log(item); @@ -1352,6 +1392,7 @@ .info == 'string' ? result .info : result.info.join('<br/>') : ''; + tip = tip || result.err_info if (tip) uni.showModal({ title: this.translateSys( "tip"), @@ -1360,51 +1401,69 @@ confirmText: this.translateSys( 'close') }); + if ([0, 2, 3, 4, -1].includes(result.result_type)) { + if (result.result_type == 2) { - if (result.result_type == 0 && result - .action) { - result.action.forEach(item => { - if (item.action_type == - "set_dlg_attr") { - // value = {"attr":"xxx", "value":"xxx"} - var data = item.value; - $this.$data - .head_styledef.form - .items - .forEach( - async ( - ele, - index - ) => { - data.forEach( - async (ele2, - index - ) => { - if (ele - .fieldId == - ele2 - .attr - ) { - ele.value = - ele2 - .value; - } - }); - }); + } else if (typeof result.result == 'string') { + if (result.result) { + uni.showModal({ + title: this.translateSys('tip'), + content: result.result, + showCancel: false, + confirmText: this.translateSys('close') + }); } - }); - } else { - if (result.info) { + } + try { + var actionlist = result.action || [] + for (var j = 0; j < actionlist.length; j++) { + var action = actionlist[j]; + var action_type = action.action_type; + var value = action.value; + if (action_type == "set_dlg_attr") { + if (value) { + this.setFormValues(value) + } + } else if (action_type == "set_subtable_page_content") { + if (value.clear_confirm != false && value.clear == true && + $this.detail1StyleDefList.length > 0 + ) { //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鐮佺洏鏄惁鏈夋暟鎹�+ uni.showModal({ + title: this.translateSys('tip'), + content: this.translate( + "are_you_sure_clear_data"), + cancelText: $this.translateSys('ok'), + confirmText: $this.translateSys('cancel'), + success: function(res) { + if (res.cancel) { + $this.detail1StyleDefList = []; + $this.viewAceionContent(value); + } else if (res.confirm) { + $this.detail1StyleDefList = []; + $this.viewAceionContent(value); + } + } + }); + } else { + $this.detail1StyleDefList = []; + $this.viewAceionContent(value); + } + } + } + + } catch (ex) { + let actionList = (result.action || []).map(a => a.action_type).join( + ';') + let tip = typeof ex == 'string' ? ex : ex.message + tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}` uni.showModal({ - title: this - .translateSys( - "tip"), - content: result.info, + title: this.translateSys('tip'), + content: tip, showCancel: false, - confirmText: this - .translateSys( - 'close') + confirmText: this.translateSys('close') }); + console.log(ex) + return } } } @@ -1438,6 +1497,159 @@ } }, + setFormValues(attrs) { + const head_styledef = this.head_styledef + if (JSON.stringify(attrs) == '{}') { + return; + } + attrs.forEach(async (attr, key) => { + if (attr.choice_list) { + var dictItemList = []; + attr.choice_list.forEach(async (val, index) => { + dictItemList.push({ + text: val, + value: val + }); + }); + head_styledef.form.items.forEach(async (attr_item, index) => { + if (attr_item.name != "Layout") { + if (attr_item.fieldId == attr.attr) { + if (attr_item.useDict) { + attr_item.dict = dictItemList; + } else { + attr_item.selections = dictItemList; + } + } + } else if (attr_item.name == "Layout") { + attr_item.setting.colList.forEach((col) => { + if (col) { + if (col.fieldId == attr.attr) { + if (col.useDict) { + col.dict = dictItemList; + } else { + col.selections = dictItemList; + } + } + } + }); + } + }); + } + if (!head_styledef.form.model[attr.attr]) { + head_styledef.form.model[attr.attr] = attr.value; + } + head_styledef.form.items.forEach(async (ele) => { + if (ele.name != "Layout") { + if (ele.fieldId == attr.attr) { + ele.value = attr.value; + ele.oldvalue = attr.value; + if (ele.name == "Input") { + if (attr.prompt) ele.placeholder = attr.prompt; + } + if (attr.enable !== undefined) { + if (attr.enable) ele.disabled = false; + else ele.disabled = true; + } + } + } else if (ele.name == "Layout") { + ele.setting.colList.forEach((col) => { + if (col) { + if (col.fieldId == attr.attr) { + col.value = attr.value; + col.oldvalue = attr.value; + if (col.name == "Input") { + if (attr.prompt) col.placeholder = attr.prompt; + } + if (attr.enable !== undefined) { + if (attr.enable) col.disabled = false; + else col.disabled = true; + } + } + } + }); + } + + }) + //鍒ゆ柇琛ㄥ崟閲屾槸鍚︽湁杩斿洖瀛楁锛屾病鏈夊氨瑁呰浇鍒癿odel閲岋紝鐐瑰嚮纭畾鎻愪氦鐨勬椂鍊欏甫涓婅繖浜涙暟鎹�+ }) + console.log(head_styledef) + this.setData({ + head_styledef: head_styledef + }) + }, + //鍔犺浇宸茬爜鐩樺唴瀹�+ viewAceionContent(data) { + var $this = this; + if (JSON.stringify(data.content) == '{}') { + return; + } + var styleStr = JSON.stringify($this.detail1_styledef); + data.content.forEach(cont => { + let detailStyle = JSON.parse(styleStr); + if (detailStyle.form) { + + + 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') { + 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; + } + }); + } + }); + }); + //濡傛灉 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); //寰呭垎鎷�+ } + } + }); + + }, + onDetail1EnterChange() {}, //鐐逛腑琛ㄥ崟 onPanelClick(value) { //鐐瑰嚮闈㈡澘楂樹寒鏄剧ず @@ -1496,6 +1708,7 @@ .info == 'string' ? result .info : result .info.join('<br/>') : ''; + tip = tip || result.err_info if (tip) uni.showModal({ title: this.translateSys( "tip"), @@ -1504,99 +1717,113 @@ confirmText: this.translateSys( 'close') }); + if ([0, 2, 3, 4, -1].includes(result.result_type)) { + if (result.result_type == 2) { - if (result.result_type == 0 && result - .action) { - result.action.forEach(item => { - if (item.action_type == - "goback_to_pre_page" - ) { //杩斿洖涓婁竴椤�- var value = item.value; - uni.navigateBack({ - delta: 1, //杩斿洖灞傛暟锛�鍒欎笂涓婇〉 - }); - } else if (item - .action_type == - "hidden_button" - ) { //闅愯棌鎸夐挳 - var value = item.value; - value.forEach(btn => { - var index = - $this - .param - .ListPage - .Page_Button - .findIndex( - button => - button - .ShowName == - btn - ) - if (index > - -1) - $this - .param - .ListPage - .Page_Button - .splice( - index, - 1) - }) - // } else if(item.action_type == "refresh_cur_row"){ // - // var value = item.value; - } else if (item - .action_type == - "set_panel_html" - ) { //鏄剧ずHtml椤甸潰 - // var value = item.value; - $this.ListHtml_Panel = - item.value; - // $this.detail1StyleDefList.forEach((ele,index)=>{ - // ele.ListHtml_Panel = item.value[index]; - // }); - - } else { + } else if (typeof result.result == 'string') { + if (result.result) { uni.showModal({ - title: this - .translateSys( - "tip" - ), - content: this - .translateSys( - "quotation_mark_left" - ) + - item - .action_type + - this - .translateSys( - "quotation_mark_right" - ) + - this - .translate( - "tip_action_unprocessed" - ), + title: this.translateSys('tip'), + content: result.result, showCancel: false, - confirmText: this - .translateSys( - 'close' - ) + confirmText: this.translateSys('close') }); } - }); - } else { - if (result.info) { - uni.showModal({ - title: this - .translateSys( - "tip"), - content: result.info, - showCancel: false, - confirmText: this - .translateSys( - 'close') + } + try { + var actionList = result.action || [] + actionList.forEach(item => { + if (item.action_type == + "goback_to_pre_page" + ) { //杩斿洖涓婁竴椤�+ var value = item.value; + uni.navigateBack({ + delta: 1, //杩斿洖灞傛暟锛�鍒欎笂涓婇〉 + }); + } else if (item + .action_type == + "hidden_button" + ) { //闅愯棌鎸夐挳 + var value = item.value; + value.forEach(btn => { + var index = + $this + .param + .ListPage + .Page_Button + .findIndex( + button => + button + .ShowName == + btn + ) + if (index > + -1) + $this + .param + .ListPage + .Page_Button + .splice( + index, + 1) + }) + // } else if(item.action_type == "refresh_cur_row"){ // + // var value = item.value; + } else if (item + .action_type == + "set_panel_html" + ) { //鏄剧ずHtml椤甸潰 + // var value = item.value; + $this.ListHtml_Panel = + item.value; + // $this.detail1StyleDefList.forEach((ele,index)=>{ + // ele.ListHtml_Panel = item.value[index]; + // }); + + } else { + uni.showModal({ + title: this + .translateSys( + "tip" + ), + content: this + .translateSys( + "quotation_mark_left" + ) + + item + .action_type + + this + .translateSys( + "quotation_mark_right" + ) + + this + .translate( + "tip_action_unprocessed" + ), + showCancel: false, + confirmText: this + .translateSys( + 'close' + ) + }); + } }); + + } catch (ex) { + let actionList = (result.action || []).map(a => a.action_type).join(';') + let tip = typeof ex == 'string' ? ex : ex.message + tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}` + uni.showModal({ + title: this.translateSys('tip'), + content: tip, + showCancel: false, + confirmText: this.translateSys('close') + }); + console.log(ex) + return } } + } -- Gitblit v1.9.1