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/form/index.vue | 449 +++++++++++++++++++++++++++++++++---------------------- 1 files changed, 268 insertions(+), 181 deletions(-) diff --git a/pages/modal/form/index.vue b/pages/modal/form/index.vue index 2d008d7..18eb702 100644 --- a/pages/modal/form/index.vue +++ b/pages/modal/form/index.vue @@ -2,7 +2,8 @@ <view class="uni-page-modal-form" :class="largeMode?'large-mode':''"> <view class="view-content"> <!-- 琛ㄥご鏍峰紡 --> - <OIForm ref="refBaseForm" class="v-head-style" :form="head_styledef.form" :focusId="focusFieldId" + <OIForm ref="refBaseForm" class="v-head-style" :form="head_styledef.form" + :hiddenIds="head_styledef.hiddenIds ?head_styledef.hiddenIds :[] " :focusId="focusFieldId" @on-click="onClick" @on-focus="ontap" @on-change="onEnterChange" @on-click-prefix="classAttr_extButton" @on-click-suffix="classAttr_extButton"></OIForm> </view> @@ -64,7 +65,7 @@ }, data() { return { - largeMode: getApp().globalData.largeMode || false, + largeMode: getApp().globalData.largeMode || false, okLoading: false, title: this.translateSys('add2'), type: '', @@ -471,6 +472,7 @@ 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, @@ -478,53 +480,71 @@ 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_current_edit_attr" - ) { - - if ($this - .focusOldFieldId == - item.value) { - $this.setData({ - focusFieldId: "" - }) - } else { - $this.setData({ - focusFieldId: $this - .focusOldFieldId - }) - } - $this.$nextTick(() => { - $this.setData({ - focusFieldId: item - .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 (item.action_type == - "set_dlg_attr") { - // value = {"attr":"xxx", "value":"xxx"} - var data = item.value; - $this.setFormValues(data) } - }); - } else { + } + try { + var actionList = result.action || [] + actionList.forEach(item => { - if (result.info) { - uni.showModal({ - title: this.translateSys( - "error") + "4.3", - content: result.info, - showCancel: false, - confirmText: this - .translateSys('close') + if (item.action_type == + "set_dlg_current_edit_attr" + ) { + + if ($this + .focusOldFieldId == + item.value) { + $this.setData({ + focusFieldId: "" + }) + } else { + $this.setData({ + focusFieldId: $this + .focusOldFieldId + }) + } + $this.$nextTick(() => { + $this.setData({ + focusFieldId: item + .value + }) + }); + } else if (item.action_type == + "set_dlg_attr") { + // value = {"attr":"xxx", "value":"xxx"} + var data = item.value; + $this.setFormValues(data) + } else if (action.action_type == 'set_dlg_attr_show') { + var data = action.value; + + $this.setFormItemVisible(data) + } }); + + } 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 } } - } } @@ -549,8 +569,8 @@ //console.log(e.target) this.focusOldFieldId = item.fieldId getApp().onScan((result) => { - console.log(result.decodedata); - item.value = result.decodedata; + console.log(result); + item.value = result; var $this = this; let newVal = item.value.trim() if (newVal) { @@ -776,6 +796,7 @@ 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, @@ -783,50 +804,71 @@ 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_current_edit_attr" - ) { - - if ($this - .focusOldFieldId == - item.value) { - $this.setData({ - focusFieldId: "" - }) - } else { - $this.setData({ - focusFieldId: $this - .focusOldFieldId - }) - } - $this.$nextTick(() => { - $this.setData({ - focusFieldId: item - .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 (item.action_type == - "set_dlg_attr") { - // value = {"attr":"xxx", "value":"xxx"} - var data = item.value; - $this.setFormValues(data) } - }); - } else { + } + try { + var actionList = result.action || [] + actionList.forEach(item => { - if (result.info) { - uni.showModal({ - title: this.translateSys( - "error") + "4.3", - content: result.info, - showCancel: false, - confirmText: this - .translateSys('close') + if (item.action_type == + "set_dlg_current_edit_attr" + ) { + + if ($this + .focusOldFieldId == + item.value) { + $this.setData({ + focusFieldId: "" + }) + } else { + $this.setData({ + focusFieldId: $this + .focusOldFieldId + }) + } + $this.$nextTick(() => { + $this.setData({ + focusFieldId: item + .value + }) + }); + } else if (item.action_type == + "set_dlg_attr") { + // value = {"attr":"xxx", "value":"xxx"} + var data = item.value; + $this.setFormValues(data) + } else if (action.action_type == + 'set_dlg_attr_show') { + var data = action.value; + + $this.setFormItemVisible(data) + } }); + + } 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 } } @@ -890,7 +932,8 @@ if (col.useDict) { col.dict = dictItemList; } else { - col.selections = dictItemList; + col.selections = + dictItemList; } } } @@ -924,6 +967,28 @@ head_styledef: head_styledef }) }, + setFormItemVisible(attrs) { + if (!Array.isArray(attrs)) { + return + } + const head_styledef = this.head_styledef + if (!head_styledef.hiddenIds) { + head_styledef.hiddenIds = [] + } + attrs.forEach((attr) => { + let index = head_styledef.hiddenIds.findIndex((id) => id == attr.attr); + if (attr.show) { + if (index > -1) head_styledef.hiddenIds.splice(index, 1); + } else { + if (index == -1) head_styledef.hiddenIds.push(attr.attr); + } + }); + this.setData({ + head_styledef: head_styledef + }) + + }, + popupChange(e) { console.log('褰撳墠妯″紡锛� + e.type + ',鐘舵�锛� + e.show); }, @@ -1089,82 +1154,71 @@ .info .join( '<br/>') : ''; + tip = tip || data.err_info if (tip) uni.showModal({ title: this.translateSys("tip"), content: tip, showCancel: false, confirmText: this.translateSys('close') }); - - var actionlist = data.action; - if (actionlist) { - console.log(actionlist); - for (var i = 0; i < actionlist.length; i++) { - var action = actionlist[i]; - if (action.action_type == 'set_dlg_attr') { - var result = action.value; - $this.setFormValues(result) - } else if (action.action_type == 'set_dlg_attr_show') { - var result = action.value; - result.forEach(async (attr, key) => { - $this.head_styledef.form.items - .forEach( - async (ele, - index) => { - //鍒ゆ柇鏄惁鏄爡鏍艰〃鍗�- if (ele.name != 'Layout') { - if (ele.fieldId == attr - .attr) { - ele.show = attr - .show; - } - } else if (ele.name == - 'Layout') { - ele.setting.colList - .forEach( - col => { - if (col) { - if (col - .fieldId == - attr - .attr - ) { - col.show = - attr - .show; - } - } - }); - } - }); - }); - var head_styledef = JSON.parse(JSON.stringify($this.$data - .head_styledef)); - $this.head_styledef = []; - $this.head_styledef = head_styledef; - // console.log($this.head_styledef); - } else if (action.action_type == 'set_global_attr') { - $this.global_attr = action.value || []; - } else { + if ([0, 2, 3, 4, -1].includes(data.result_type)) { + if (data.result_type == 2) { + $this.setFormValues(data.result || []) + } else if (typeof data.result == 'string') { + if (data.result) { uni.showModal({ - title: this.translateSys("tip"), - content: this.translateSys( - "quotation_mark_left") + - action - .action_type + this.translateSys( - "quotation_mark_right") + this - .translate( - "tip_action_unprocessed"), + title: this.translateSys('tip'), + content: data.result, showCancel: false, confirmText: this.translateSys('close') }); } } + try { + var actionlist = data.action || [] + for (var i = 0; i < actionlist.length; i++) { + var action = actionlist[i]; + if (action.action_type == 'set_dlg_attr') { + var result = action.value; + $this.setFormValues(result) + } else if (action.action_type == 'set_dlg_attr_show') { + var result = action.value; + + $this.setFormItemVisible(result) + } else if (action.action_type == 'set_global_attr') { + $this.global_attr = action.value || []; + } else { + uni.showModal({ + title: this.translateSys("tip"), + content: this.translateSys( + "quotation_mark_left") + + action + .action_type + this.translateSys( + "quotation_mark_right") + this + .translate( + "tip_action_unprocessed"), + showCancel: false, + confirmText: this.translateSys('close') + }); + } + } + + } catch (ex) { + let actionList = (data.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 + } } - console.log($this.head_styledef); - if (data.result) { - $this.setFormValues(data.result) - } + + } }).catch(ex => { @@ -1268,16 +1322,28 @@ .info .join( '<br/>') : ''; + tip = tip || data.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(data.result_type)) { + if (data.result_type == 2) { - if (data != "") { - var actions = data.action; - if (actions) { + } else if (typeof data.result == 'string') { + if (data.result) { + uni.showModal({ + title: this.translateSys('tip'), + content: data.result, + showCancel: false, + confirmText: this.translateSys('close') + }); + } + } + try { + var actions = data.action || [] for (var i = 0; i < actions.length; i++) { var action = actions[i]; console.log(action) @@ -1356,7 +1422,8 @@ $this.setData({ check_list: val.config }) - if (val.config.appear_style == 'sideslip') //鍒ゆ柇鏄惁鏄晶婊�+ if (val.config.appear_style == + 'sideslip') //鍒ゆ柇鏄惁鏄晶婊� $this.setData({ popupType: "right" }) @@ -1376,7 +1443,8 @@ popupParam: popupParam }) } - } else if (action.action_type == 'open_project_query_dlg') { + } else if (action.action_type == + 'open_project_query_dlg') { //console.log(action.value.select_range); //console.log(action.value.mulit_select); var priRel = '-1'; @@ -1441,7 +1509,8 @@ title: $this.translateSys("tip"), content: $this.translateSys( "quotation_mark_left") + - action.action_type + $this.translateSys( + action.action_type + $this + .translateSys( "quotation_mark_right") + $this .translate( "tip_action_unprocessed"), @@ -1450,17 +1519,20 @@ }); } } + + } catch (ex) { + let actionList = (data.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 } - } else { - uni.showModal({ - title: $this.translateSys('tip') + "5.2", - content: $this.translateSys("quotation_mark_left") + - "before_click_button" + $this.translateSys( - "quotation_mark_right") + $this.translateSys( - "comma") + 'event_id' + eventid, - showCancel: false, - confirmText: $this.translateSys('close') - }); } } @@ -1665,8 +1737,10 @@ value: obj_attr[a], })), }; - let global_attr = Base64.encode(JSON.stringify(this.global_attr)) - let data_json = Base64.encode(JSON.stringify(this.data_json)) + let global_attr = Base64.encode(JSON.stringify(this + .global_attr)) + let data_json = Base64.encode(JSON.stringify(this + .data_json)) let ext_info = Base64.encode(JSON.stringify(this.ext_info)) var dataInfo = { ed_type: "0", @@ -1685,7 +1759,8 @@ data_json, ext_info, compose_info: '', - input_param: Base64.encode(JSON.stringify(input_param)), + input_param: Base64.encode(JSON.stringify( + input_param)), }; await runCustomEvent(dataInfo) return true @@ -1743,7 +1818,8 @@ .global_attr)) let data_json = Base64.encode(JSON.stringify(this .data_json)) - let ext_info = Base64.encode(JSON.stringify(this.ext_info)) + let ext_info = Base64.encode(JSON.stringify(this + .ext_info)) await runCustomEvent({ ed_type: 0, @@ -1762,9 +1838,11 @@ let exStr = JSON.stringify(ex) if (exStr == "{}") exStr = ex - let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr + let tip = typeof ex.errMsg == "string" ? ex + .errMsg : exStr uni.showModal({ - title: this.translateSys("tip") + "8.1", + title: this.translateSys("tip") + + "8.1", content: tip, showCancel: false, confirmText: this.translateSys('close') @@ -1778,18 +1856,22 @@ var obj_attr = this.head_styledef.form.model; let inputParam = { id: "", - attrs: Object.keys(obj_attr).map((a) => ({ - attr: a, - value: obj_attr[a], - })), + attrs: Object.keys(obj_attr).map((a) => + ({ + attr: a, + value: obj_attr[a], + })), }; let input_param = Base64.encode(JSON.stringify( inputParam)); - let global_attr = Base64.encode(JSON.stringify(this + let global_attr = Base64.encode(JSON.stringify( + this .global_attr)) - let data_json = Base64.encode(JSON.stringify(this + let data_json = Base64.encode(JSON.stringify( + this .data_json)) - let ext_info = Base64.encode(JSON.stringify(this + let ext_info = Base64.encode(JSON.stringify( + this .ext_info)) await runCustomEvent({ @@ -1809,13 +1891,16 @@ let exStr = JSON.stringify(ex) if (exStr == "{}") exStr = ex - let tip = typeof ex.errMsg == "string" ? ex.errMsg : + let tip = typeof ex.errMsg == "string" ? ex + .errMsg : exStr uni.showModal({ - title: this.translateSys("tip") + "8.2", + title: this.translateSys("tip") + + "8.2", content: tip, showCancel: false, - confirmText: this.translateSys('close') + confirmText: this.translateSys( + 'close') }); return false } @@ -1823,9 +1908,11 @@ showError(ex) { uni.showModal({ title: this.translateSys('error'), - content: typeof ex == "string" ? ex : typeof ex.errMsg == "string" ? ex.errMsg : "", + content: typeof ex == "string" ? ex : typeof ex.errMsg == "string" ? ex + .errMsg : "", showCancel: false, - confirmText: this.translateSys('cancel') + confirmText: this.translateSys( + 'cancel') }) }, translate(t) { -- Gitblit v1.9.1