From 3ddb7987b031a152309c58dabd949e23d3419a72 Mon Sep 17 00:00:00 2001 From: cuiqian2004 <cuiqian2004@163.com> Date: 星期五, 01 八月 2025 15:33:50 +0800 Subject: [PATCH] test --- pages/modal/3018_2.vue | 983 +++++++++++++++++++++++++++++---------------------------- 1 files changed, 501 insertions(+), 482 deletions(-) diff --git a/pages/modal/3018_2.vue b/pages/modal/3018_2.vue index 462bf79..0895112 100644 --- a/pages/modal/3018_2.vue +++ b/pages/modal/3018_2.vue @@ -1,17 +1,18 @@ <template> - <view class="uni-page-modal-3018-2"> + <view class="uni-page-modal-3018-2" :class="largeMode?'large-mode':''"> <view class="view-content"> <!-- 琛ㄥご鏍峰紡 --> - <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" :focusId="focusFieldId" - @click="onClick" @focus="ontap" @change="onEnterChange" @click-prefix="classAttr_extButton" - @click-suffix="classAttr_extButton"></OIForm> + <OIForm ref="refBaseForm" class="v-headStyle" :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> <view class="view-bottom"> <view class="uni-padding-wrap" v-if="dropdownBtns.length>0"> <view class="uni-btn-v"> <a @tap="clickDropdownBtns"> - <Icon class="mobox-normal-more" /> + <text class="mobox-normal-more" /> </a> </view> </view> @@ -51,7 +52,9 @@ </template> <script> - import Base64 from '../../components/js-base64/base64.js' + import { + Base64 + } from '@/js/Base64.js'; import utils from "@/js/utils.js" import dayjs from "dayjs"; import OIForm from '@/components/oi-form/index.vue' @@ -64,16 +67,16 @@ runCustomEvent, dataObjCreate } from "@/api/data.js" + import buttonClickMixin from '@/mixins/button-click.js'; export default { - modules: { - Base64, - }, + mixins: [buttonClickMixin], components: { OIForm, }, data() { return { + largeMode: getApp().globalData.largeMode || false, title: this.translateSys('add2'), btnName: "", param: {}, @@ -82,7 +85,6 @@ edit_select_compose_event: "", //閫夋嫨缁勬垚瀵硅薄鏃惰皟鐢� edit_compose_cls_id: "", global_attr: [], - refdatastore: [], //寮曠敤鏁版嵁瀛樺偍鍖�/ {attr:'G_PRJ_' + bindattr + '_ID', value:info.id} scanCodeVal: "", popupType: "center", check_list: {}, @@ -106,7 +108,7 @@ if (e.index == 0) { const $this = this uni.scanCode({ - scanType: ["qrCode"], + scanType: ["qrCode", 'barCode'], success: function(res) { if ($this.focusFieldId) { @@ -149,7 +151,6 @@ edit_select_compose_event: "", //閫夋嫨缁勬垚瀵硅薄鏃惰皟鐢� edit_compose_cls_id: "", global_attr: [], - refdatastore: [], //寮曠敤鏁版嵁瀛樺偍鍖�/ {attr:'G_PRJ_' + bindattr + '_ID', value:info.id} scanCodeVal: "", popupType: "center", check_list: {}, @@ -175,10 +176,10 @@ uni.setNavigationBarTitle({ title: options.titlename }); //璁剧疆椤堕儴鏍囬 - this.$data.param = JSON.parse(options.param); - this.$data.title = this.$data.param.Add_BtnName ? this.$data.param.Add_BtnName : options + this.param = JSON.parse(options.param); + this.title = this.param.Add_BtnName ? this.param.Add_BtnName : options .titlename; //璁剧疆鎸夐挳鏂囧瓧 - this.$data.btnName = this.$data.param.Add_BtnName || "" + this.btnName = this.param.Add_BtnName || "" this.loadData(options.paramValue) }, computed: { @@ -218,7 +219,7 @@ //浼犲叆鍙傛暟鍊� if (paramValue) { const attrs = paramValue.attrs || []; - (this.$data.head_styledef?.form?.items || []).forEach(async (ele, index) => { + (this.head_styledef?.form?.items || []).forEach(async (ele, index) => { if (ele.name != "Layout") { attrs.forEach(async (ele2, index2) => { if (ele.fieldId == ele2.name) { @@ -276,7 +277,7 @@ if (itemName) { styledefHead.form.model[ele.fieldId] = itemName; } - ele.dict = selections.map((a) => { + ele.selections = selections.map((a) => { return { value: a.value, text: a.label @@ -312,7 +313,7 @@ styledefHead.form .model[col.fieldId] = itemName; } - col.dict = selections.map((a) => { + col.selections = selections.map((a) => { return { value: a.value, text: a.label @@ -333,6 +334,25 @@ } } } + } + const app = getApp() + if (app.globalData.bindClasses) { + styledefHead.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", + }) + styledefHead.form.model["S_CLASSES"] = app.globalData.classes } } @@ -445,68 +465,91 @@ }); return false } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data - .info - .join( - '<br/>') : ''; + var tip = data.info ? typeof data.info == 'string' ? data.info : + data.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)) { - 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; - $this.hideFormItems(result) - // console.log($this.$data.head_styledef); - } else if (action.action_type == - "set_dlg_current_edit_attr" - ) { - if ($this - .focusOldFieldId == - action.value) { - $this.setData({ - focusFieldId: "" - }) - } else { - $this.setData({ - focusFieldId: $this - .focusOldFieldId - }) - } - $this.$nextTick(() => { - $this.setData({ - focusFieldId: action - .value - }) - }); - } else { + if (data.result_type == 2) { + + } else if (typeof data.result == 'string') { + if (data.result) { uni.showModal({ - title: this.translateSys("tip"), - content: this.translate( - 'execute_init_event_failed') + - this.translateSys("full_stop") + - this.translate('reason') + this - .translateSys( - "colon") + - 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.hideFormItems(result) + // console.log($this.head_styledef); + } else if (action.action_type == + "set_dlg_current_edit_attr" + ) { + if ($this.focusOldFieldId == action.value) { + $this.setData({ + focusFieldId: "" + }) + } else { + $this.setData({ + focusFieldId: $this + .focusOldFieldId + }) + } + $this.$nextTick(() => { + $this.setData({ + focusFieldId: action + .value + }) + }); + } else { + uni.showModal({ + title: this.translateSys("tip"), + content: this.translate( + 'execute_init_event_failed') + + this.translateSys("full_stop") + + this.translate('reason') + this + .translateSys( + "colon") + + 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 } } } @@ -529,63 +572,23 @@ ontap(item) { //鎵爜鍔熻兘 - // console.log("ontap",item); - // 鎵撳紑钃濈墮閫傞厤鍣�- // uni.openBluetoothAdapter({ - // success: function() { - // // 寮�鎼滅储钃濈墮璁惧 - // uni.startBluetoothDevicesDiscovery({ - // success: function() { - // // 鐩戝惉鎵惧埌鏂拌澶囩殑浜嬩欢 - // uni.onBluetoothDeviceFound(function(devices) { - // // 杩欓噷鍙互杩囨护鍑篟FID鑺墖锛岃繛鎺ュ苟璇诲彇鏁版嵁 - // console.log(devices[0].deviceId); - // }) - // } - // }) - // } - // }); - // 鐩戝惉NFC鍔熻兘鏄惁鍙敤 - // uni.getNFCAdapterState({ - // success: function(res) { - // console.log(res); - // if (res.errCode === 0) { - // // NFC鍔熻兘鍙敤锛屽紑濮嬬洃鍚�- // uni.onNFCStart((res) => { - // if (res.errCode === 0) { - // // 寮�NFC鏍囩妫�祴 - // uni.makeNFCReaderStart({ - // success: function() { - // // 鐩戝惉NFC鏍囩 - // uni.onNFCTagDiscovered(function(res) { - // console.log(res); - // // 杩欓噷鍙互澶勭悊NFC鏍囩鏁版嵁 - // }) - // } - // }) - // } - // }) - // } - // } - // }) + this.focusOldFieldId = item.fieldId getApp().onScan((result) => { console.log(result); // uni.hideKeyboard(); - this.onScanValue(item, result.decodedata) + this.onScanValue(item, result) }) }, onScanValue(item, value) { const $this = this; //console.log("onScanValue", item); item.value = value - let newVal = item.value + let newVal = item.value if (typeof item.value == "string") { newVal = item.value.trim() - if (!newVal) - return } - if (item.oldvalue != newVal) { + if (newVal) { item.oldvalue = newVal; var attr = item.fieldId; $this.head_styledef.form.model[attr] = newVal; @@ -605,7 +608,7 @@ rclsid: '', robjid: '', userlogin: '', - clsid: this.$data.param.DataCls.id, + clsid: this.param.DataCls.id, objid: "", attr: req, dataJson: [], @@ -679,14 +682,19 @@ let newVal = item.value if (typeof item.value == "string") { newVal = item.value.trim() - if (!newVal) + if (!newVal) { + item.oldvalue = newVal; + var attr = item.fieldId; + this.head_styledef.form.model[attr] = newVal; return + } } if (item.oldvalue != newVal) { item.oldvalue = newVal; var attr = item.fieldId; this.head_styledef.form.model[attr] = newVal; var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�+ // this.onScanValue(this.head_styledef.form.items[2].setting.colList[0], "test") if (onChangeEvent?.id) { //鍐呭鍙樺寲鍚庝簨浠� this.onChange(onChangeEvent); } @@ -711,7 +719,7 @@ rclsid: '', robjid: '', userlogin: '', - clsid: this.$data.param.DataCls.id, + clsid: this.param.DataCls.id, objid: "", attr: req, dataJson: [] @@ -743,11 +751,12 @@ }); return; } - this.$data.popupType = 'right' + this.popupType = 'right' // open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦�uni-popup 缁勪欢涓婄粦瀹�type灞炴� this.$refs.popup.open(this.popupType); - this.dataObjRunCustomEvent_Return(onSuffixClickEvent.id, '', onSuffixClickCallbackEvent.id, + this.dataObjRunCustomEvent_Return(onSuffixClickEvent.id, '', onSuffixClickCallbackEvent + .id, item); }, popupChange(e) { @@ -757,15 +766,15 @@ // console.log(e.target.dataset); var index = e.target.dataset.index; var ischeck = e.target.dataset.ischeck; - var data = this.$data.check_list.items; - // this.$data.check_list.items=[]; - if (this.$data.check_list.multiple_choice == "0") { //鍒ゆ柇鏃跺崟閫夎繕鏄閫�+ var data = this.check_list.items; + // this.check_list.items=[]; + if (this.check_list.multiple_choice == "0") { //鍒ゆ柇鏃跺崟閫夎繕鏄閫� for (var i in data) { data[i].check = false; } } data[index].check = ischeck ? false : true; - this.$data.check_list.items = data; + this.check_list.items = data; }, popup_cancel(e) { //寮规鍙栨秷 @@ -773,7 +782,7 @@ }, popup_sava(e) { //寮规纭畾 var $this = this; - var items = $this.$data.check_list.items; + var items = $this.check_list.items; var data = []; var name = ""; for (var i = 0; i < items.length; i++) { @@ -787,7 +796,7 @@ }); } } - if (!$this.$data.popupParam) { + if (!$this.popupParam) { uni.showModal({ title: this.translateSys("tip"), content: "popupParam涓虹┖锛�, @@ -805,7 +814,7 @@ }); return; } - var callback_eventid = $this.$data.popupParam.button_callback.trim(); + var callback_eventid = $this.popupParam.button_callback.trim(); var info = { eventid: callback_eventid, edtype: "0", @@ -813,12 +822,12 @@ rclsid: '', robjid: '', userlogin: '', - clsid: $this.$data.param.DataCls.id, + clsid: $this.param.DataCls.id, objid: "", - attr: $this.$data.popupParam.req, + attr: $this.popupParam.req, dataJson: data } - $this.DataObjRunCustomEvent(info, $this.$data.popupParam.data_attr); + $this.DataObjRunCustomEvent(info, $this.popupParam.data_attr); this.$refs.popup.close(); }, @@ -826,18 +835,18 @@ var $this = this; var enviroment = { 'function': '3000', // 鍔熻兘鐐圭紪鍙�- cls_id: this.$data.param.DataCls.id, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇�+ cls_id: this.param.DataCls.id, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇� 'button': 'top', // top/bottom button_name: this.translateSys('add2'), master: { - cls_id: this.$data.param.DataCls.id, // button=bottom鏃�master鐨刢ls_id + cls_id: this.param.DataCls.id, // button=bottom鏃�master鐨刢ls_id //obj_id: '' // button=bottom鏃�master鐨刼bj_id } }; if (data_attr) { enviroment.edit_dlg = { type: 'small', //灏忕獥鍙�- class_id: this.$data.param.DataCls.id, //褰撳墠鏁版嵁绫籭d + class_id: this.param.DataCls.id, //褰撳墠鏁版嵁绫籭d } if (data_attr) { enviroment.edit_dlg.form_control = { //鎵�睘鐨勮〃鍗曟帶浠�@@ -856,11 +865,12 @@ // edtype: info.edtype, eventid: info.eventid, projectid: info.projectid.replace('{','').replace('}',''), // rclsid: info.rclsid, robjid: info.robjid, userlogin: info.userlogin, clsid: info.clsid, objid: info.objid, // attr: JSON.stringify(info.attr), extinfo: JSON.stringify(enviroment), inputparameter: "", - // global_attr: JSON.stringify(this.$data.global_attr), dataJson:JSON.stringify(info.dataJson) + // global_attr: JSON.stringify(this.global_attr), dataJson:JSON.stringify(info.dataJson) // } enviroment = Base64.encode(JSON.stringify(enviroment)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 var input_param = Base64.encode(JSON.stringify(info.attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var global_attr = Base64.encode(JSON.stringify(this.$data.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 + var global_attr = Base64.encode(JSON.stringify(this + .global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 if (info.dataJson) info.dataJson = Base64.encode(JSON.stringify(info.dataJson)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 var obj_attr = {}; @@ -908,134 +918,99 @@ }); } else uni.showModal({ title: this.translateSys("tip"), - content: tip + ',' + this.translateSys('tip') + ':' + data + content: tip + ',' + this.translateSys('tip') + ':' + + data .ret, showCancel: false, confirmText: this.translateSys('close') }); return false } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data + var tip = data.info ? typeof data.info == 'string' ? data.info : + data .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; - $this.hideFormItems(result) - // console.log($this.$data.head_styledef); - } else if (action.action_type == 'set_global_attr') { - $this.$data.global_attr = action.value || []; - } else if (action.action_type == - "set_dlg_current_edit_attr" - ) { - if ($this.focusOldFieldId == action.value) { - $this.setData({ - focusFieldId: "" - }) - } else { - $this.setData({ - focusFieldId: $this.focusOldFieldId - }) - } - $this.$nextTick(() => { - $this.setData({ - focusFieldId: 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') }); } } - } - // var head_styledef = JSON.parse(JSON.stringify($this.head_styledef)); - // $this.head_styledef=[]; - // $this.head_styledef = head_styledef; - console.log($this.head_styledef); - - if (data.result) { - var result = data.result; - for (var i = 0; i < result.length; i++) { - for (var c = 0; c < $this.$data.head_styledef.form.items - .length; c++) { - var attr = $this.$data.head_styledef.form.items[c]; - //鍒ゆ柇琛ㄥ崟閲屾槸鍚︽湁杩斿洖瀛楁锛屾病鏈夊氨瑁呰浇鍒癿odel閲岋紝鐐瑰嚮纭畾鎻愪氦鐨勬椂鍊欏甫涓婅繖浜涙暟鎹�- if ($this.head_styledef.form.model[result[i].attr] == - undefined) { - $this.head_styledef.form.model[result[i].attr] = - result[i] - .value; - } - //鍒ゆ柇鏄惁鏄爡鏍艰〃鍗�- if (attr.name != 'Layout') { - if (attr.fieldId == result[i].attr) { - attr.value = ''; - attr.oldvalue = ''; - attr.value = result[i].value; - attr.oldvalue = result[i].value; - $this.head_styledef.form.model[attr.fieldId] = - result[i] - .value; + 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.hideFormItems(result) + // console.log($this.head_styledef); + } else if (action.action_type == 'set_global_attr') { + $this.global_attr = action.value || []; + } else if (action.action_type == + "set_dlg_current_edit_attr" + ) { + if ($this.focusOldFieldId == action.value) { + $this.setData({ + focusFieldId: "" + }) + } else { + $this.setData({ + focusFieldId: $this.focusOldFieldId + }) } - } else if (attr.name == 'Layout') { - attr.setting.colList.forEach(col => { - if (col) { - if (col.fieldId == result[i].attr) { - col.value = ''; - col.oldvalue = ''; - col.value = result[i].value; - col.oldvalue = result[i].value; - $this.head_styledef.form.model[col - .fieldId] = - result[i].value; - } - } + $this.$nextTick(() => { + $this.setData({ + focusFieldId: 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') }); } } - var length = 0; - if (!$this.$data.refdatastore.filter(function(s) { - return result[i].attr == s.attr - }).length) { - length = 1; - $this.$data.refdatastore.push(result[i]); - } - if (length == 0) { - for (var j = 0; j < $this.$data.refdatastore.length; j++) { - if ($this.$data.refdatastore[j].attr == result[i] - .attr) { - $this.$data.refdatastore[j].value = result[i] - .value; - } - } - } + } 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 } + } } @@ -1071,18 +1046,6 @@ attr: a, value: obj_attr[a] || "", })); - if ($this.refdatastore.length > 0) { - for (var i = 0; i < $this.refdatastore.length; i++) { - if (!req.filter(function(s) { - return $this.refdatastore[i].attr == s.name - }).length) { - req.push({ - 'attr': $this.refdatastore[i].attr, - 'value': $this.refdatastore[i].value - }); - } - } - } var extinfo = enviroment; extinfo.edit_dlg = { @@ -1090,7 +1053,8 @@ class_id: $this.param.DataCls.id, //褰撳墠鏁版嵁绫籭d } extinfo = Base64.encode(JSON.stringify(extinfo)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - var global_attr = Base64.encode(JSON.stringify($this.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 + var global_attr = Base64.encode(JSON.stringify($this + .global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 var obj_attr = {}; req.forEach(item2 => { obj_attr[item2.attr] = item2.value; @@ -1145,27 +1109,41 @@ }); } else uni.showModal({ title: $this.translateSys("tip"), - content: tip + ',' + $this.translateSys('tip') + ':' + data + content: tip + ',' + $this.translateSys('tip') + ':' + + data .ret, showCancel: false, confirmText: $this.translateSys('close') }); return false } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data + var tip = data.info ? typeof data.info == 'string' ? data.info : + data .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) @@ -1176,13 +1154,17 @@ var d = dialog({ title: '<i class="ace-icon fa fa-info-circle"></i> ' + $this.translateSys("tip"), - content: $this.translateSys("quotation_mark_left") + - action.action_type + $this.translateSys( + content: $this.translateSys( + "quotation_mark_left") + + action.action_type + $this + .translateSys( "quotation_mark_right") + - $this.translate("tip_action_unprocessed") + $this.translate( + "tip_action_unprocessed") }); d.show(); - } else if (action.action_type == 'open_select_userdlg') { + } else if (action.action_type == + 'open_select_userdlg') { var style = val.style; // style == 'user' ? '閫夋嫨浜哄憳' : style == 'department' ? '閫夋嫨閮ㄩ棬' : style == 'role' ? '閫夋嫨瑙掕壊' : '' var param = { @@ -1210,7 +1192,7 @@ rclsid: '', robjid: '', userlogin: '', - clsid: $this.$data.param + clsid: $this.param .DataCls .id, objid: "", @@ -1218,13 +1200,15 @@ inputparameter: data, dataJson: [], } - $this.DataObjRunCustomEvent(info, + $this.DataObjRunCustomEvent( + info, param .data_attr); } } }); - } else if (action.action_type == 'open_data_query_dlg') { + } else if (action.action_type == + 'open_data_query_dlg') { var d = dialog({ title: '<i class="ace-icon fa fa-info-circle"></i> ' + $this.translateSys("tip"), @@ -1244,7 +1228,8 @@ $this.setData({ check_list: val.config }) - if (val.config.appear_style == 'sideslip') //鍒ゆ柇鏄惁鏄晶婊�+ if (val.config.appear_style == + 'sideslip') //鍒ゆ柇鏄惁鏄晶婊� $this.setData({ popupType: "right" }) @@ -1264,7 +1249,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'; @@ -1274,7 +1260,8 @@ priRel = '1'; else if (action.value.select_range == '鎴戝垱寤虹殑') priRel = '2'; - else if (action.value.select_range == '鎴戝弬涓庣殑' || action + else if (action.value.select_range == '鎴戝弬涓庣殑' || + action .value .select_range == '鎴戝弬鍔犵殑') priRel = '3'; @@ -1288,7 +1275,8 @@ req: req } uni.navigateTo({ - url: '../selPrj/index?relation=' + priRel + + url: '../selPrj/index?relation=' + + priRel + '¶m=' + JSON.stringify(param_), events: { @@ -1299,8 +1287,8 @@ data[0].ID + ';' + data[0].Name; - // $this.$data.classAttrList[param.index].Attr[param.iindex].Value=data[0].Name; - // $this.$data.classAttrList[param.index].Attr[param.iindex].ValID=data[0].ID+';'+data[0].Name; + // $this.classAttrList[param.index].Attr[param.iindex].Value=data[0].Name; + // $this.classAttrList[param.index].Attr[param.iindex].ValID=data[0].ID+';'+data[0].Name; var callback_eventid = param .button_callback .trim(); @@ -1308,7 +1296,8 @@ var info = { eventid: callback_eventid, edtype: "2", - projectid: data[0].ID, + projectid: data[0] + .ID, rclsid: "", robjid: "", userlogin: "", @@ -1320,8 +1309,9 @@ dataJson: [], } - $this.DataObjRunCustomEvent( - info); + $this + .DataObjRunCustomEvent( + info); } } } @@ -1331,26 +1321,31 @@ 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"), showCancel: false, - confirmText: $this.translateSys('close') + 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 } - } 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') - }); } } @@ -1394,24 +1389,18 @@ var enviroment = { 'function': '3000', // 鍔熻兘鐐圭紪鍙�- cls_id: this.$data.param.DataCls.id, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇�+ cls_id: this.param.DataCls.id, // 鍔熻兘鐐逛富鏁版嵁绫绘爣璇� 'button': 'top', // top/bottom button_name: this.translateSys('add2'), master: { - cls_id: this.$data.param.DataCls.id, + cls_id: this.param.DataCls.id, } }; enviroment = Base64.encode(JSON.stringify(enviroment)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜 - // console.log(obj_attr); - // var dataInfo={ - // class_id: this.$data.param.DataCls.id, data_obj_id: '', masterclsid: '', - // req: JSON.stringify(req), upfile: JSON.stringify([]), post_data: JSON.stringify({}), - // compose: JSON.stringify([]), refdatastore: JSON.stringify([]), extinfo: JSON.stringify(enviroment), - // not_trigger_sys_event: '' - // }; + var dataInfo = { - class_id: this.$data.param.DataCls.id, + class_id: this.param.DataCls.id, class_name: '', master_cls_id: '', master_obj_id: '', @@ -1446,7 +1435,8 @@ }); } else uni.showModal({ title: this.translateSys("tip"), - content: tip + ',' + this.translateSys('tip') + ':' + data + content: tip + ',' + this.translateSys('tip') + ':' + + data .ret, showCancel: false, confirmText: this.translateSys('close') @@ -1454,7 +1444,8 @@ this.saving = false return false } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data + var tip = data.info ? typeof data.info == 'string' ? data.info : + data .info .join( '<br/>') : ''; @@ -1474,12 +1465,13 @@ } - if (!this.$data.param.After_Btn_Not_Refresh) { + if (!this.param.After_Btn_Not_Refresh) { //鍒锋柊 uni.redirectTo({ - url: '../modal/3018_2?param=' + JSON.stringify(this.$data + url: '../modal/3018_2?param=' + JSON.stringify(this + .$data .param) + - "&titlename=" + this.$data.title + "&titlename=" + this.title }); } else { var actionlist = data.action; @@ -1540,16 +1532,17 @@ }, setFormValues(data) { const $this = this + const head_styledef = this.head_styledef for (var i = 0; i < data.length; i++) { - if (data[i].choice_list) { - for (var c = 0; c < $this.head_styledef.form.items - .length; c++) { - var attr = $this.head_styledef.form.items[c]; - if (attr.name != 'Layout') { - if (attr.fieldId == data[i].attr) { + const attr = data[i] + if (attr.choice_list) { + for (var c = 0; c < head_styledef.form.items.length; c++) { + const item = head_styledef.form.items[c]; + if (item.name != 'Layout') { + if (item.fieldId == attr.attr) { var dictItemList = []; - for (var d in data[i].choice_list) { - var val = data[i].choice_list[d]; + for (var d in attr.choice_list) { + var val = attr.choice_list[d]; dictItemList.push({ "CN_S_NAME": val, "CN_S_VALUE": val, @@ -1557,20 +1550,19 @@ "value": val }); } - attr.dict = dictItemList; + if (item.useDict) { + item.dict = dictItemList; + } else { + item.selections = dictItemList; + } } - } else if (attr.name == 'Layout') { - attr.setting.colList.forEach(col => { + } else if (item.name == 'Layout') { + item.setting.colList.forEach(col => { if (col) { - if (col.fieldId == data[ - i] - .attr) { + if (col.fieldId == attr.attr) { var dictItemList = []; - for (var d in data[i] - .choice_list) { - var val = data[i] - .choice_list[ - d]; + for (var d in attr.choice_list) { + var val = attr.choice_list[d]; dictItemList.push({ "CN_S_NAME": val, "CN_S_VALUE": val, @@ -1578,8 +1570,11 @@ "value": val }); } - col.dict = - dictItemList; + if (col.useDict) { + col.dict = dictItemList; + } else { + col.selections = dictItemList; + } } } }); @@ -1587,115 +1582,74 @@ } } - for (var c = 0; c < $this.$data.head_styledef.form - .items - .length; c++) { - var attr = $this.$data.head_styledef.form.items[c]; - // console.log(attr[j].Name+'=='+data[i].attr); + for (var c = 0; c < head_styledef.form.items.length; c++) { + const item = head_styledef.form.items[c]; + // console.log(attr[j].Name+'=='+attr.attr); //鍒ゆ柇琛ㄥ崟閲屾槸鍚︽湁杩斿洖瀛楁锛屾病鏈夊氨瑁呰浇鍒癿odel閲岋紝鐐瑰嚮纭畾鎻愪氦鐨勬椂鍊欏甫涓婅繖浜涙暟鎹�- if ($this.head_styledef.form.model[data[i] - .attr] == - undefined) { - $this.head_styledef.form.model[data[i] - .attr] = - data[i] - .value; + if (head_styledef.form.model[attr.attr] == undefined) { + head_styledef.form.model[attr.attr] = attr.value; } //鍒ゆ柇鏄惁鏄爡鏍艰〃鍗�- if (attr.name != 'Layout') { - if (attr.fieldId == data[i].attr) { - attr.value = ''; - attr.oldvalue = ''; - attr.value = data[i].value; - attr.oldvalue = data[i].value; - $this.head_styledef.form.model[attr - .fieldId] = - data[ - i].value; + if (item.name != 'Layout') { + if (item.fieldId == attr.attr) { + item.value = ''; + item.oldvalue = ''; + item.value = attr.value; + item.oldvalue = attr.value; + head_styledef.form.model[item.fieldId] = attr.value; + if (item.name == "Input") { + if (attr.prompt) item.placeholder = attr.prompt; + } + if (attr.enable !== undefined) { + if (attr.enable) item.disabled = false; + else item.disabled = true; + } } - } else if (attr.name == 'Layout') { - attr.setting.colList.forEach(col => { + } else if (item.name == 'Layout') { + item.setting.colList.forEach(col => { if (col) { - if (col.fieldId == data[i] - .attr) { + if (col.fieldId == attr.attr) { col.value = ''; col.oldvalue = ''; - col.value = data[i] - .value; - col.oldvalue = data[i] - .value; - $this.head_styledef.form - .model[ - col - .fieldId] = data[ - i] - .value; + 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; + } } } }); - } - } - var length = 0; - if (!$this.$data.refdatastore.filter(function(s) { - return data[i].attr == s.attr - }).length) { - length = 1; - $this.$data.refdatastore.push(data[i]); - } - if (length == 0) { - for (var j = 0; j < $this.$data.refdatastore - .length; j++) { - if ($this.$data.refdatastore[j].attr == data[ - i] - .attr) { - $this.$data.refdatastore[j].value = data[ - i] - .value; - } } } } }, - hideFormItems(data) { - const $this = this - data.forEach(async (attr, key) => { - $this.$data.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; - } - } - }); - } - }); + hideFormItems(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); + } }); - var head_styledef = JSON.parse(JSON.stringify($this.$data - .head_styledef)); - $this.$data.head_styledef = []; - $this.$data.head_styledef = head_styledef; + + this.setData({ + head_styledef: head_styledef + }) }, + afterOK() { this.saving = true const $this = this @@ -1708,11 +1662,12 @@ value: obj_attr[a], })), }; - if (!this.after_ok.id.includes('{')) this.after_ok.id = '{' + this.after_ok.id + '}'; + if (!this.after_ok.id.includes('{')) this.after_ok.id = '{' + this.after_ok.id + + '}'; var dataInfo = { ed_type: "0", start_transaction: true, - class_id: this.$data.param.DataCls.id, + class_id: this.param.DataCls.id, class_name: '', event_id: this.after_ok.id, event_name: '', @@ -1748,7 +1703,8 @@ }); } else uni.showModal({ title: this.translateSys("tip"), - content: tip + ',' + this.translateSys('tip') + ':' + data + content: tip + ',' + this.translateSys('tip') + ':' + + data .ret, showCancel: false, confirmText: this.translateSys('close') @@ -1756,59 +1712,89 @@ this.saving = false return false } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data + var tip = data.info ? typeof data.info == 'string' ? data.info : + data .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 (!this.$data.param.After_Btn_Not_Refresh) { + if (!this.param.After_Btn_Not_Refresh) { //鍒锋柊 uni.redirectTo({ - url: '../modal/3018_2?param=' + JSON.stringify(this.$data + url: '../modal/3018_2?param=' + JSON.stringify(this + .$data .param) + - "&titlename=" + this.$data.title + "&titlename=" + this.title }); } else { - 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') { - $this.setFormValues(action.value) - } else if (action.action_type == 'set_dlg_attr_show') { - var result = action.value; - $this.hideFormItems(result) - } else if (action.action_type == - "set_dlg_current_edit_attr" - ) { - if ($this - .focusOldFieldId == - action.value) { - $this.setData({ - focusFieldId: "" - }) - } else { - $this.setData({ - focusFieldId: $this - .focusOldFieldId - }) - } - $this.$nextTick(() => { - $this.setData({ - focusFieldId: action - .value - }) + if ([0, 2, 3, 4, -1].includes(data.result_type)) { + if (data.result_type == 2) { + + } 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 actionlist = data.action || [] + for (var i = 0; i < actionlist.length; i++) { + var action = actionlist[i]; + if (action.action_type == 'set_dlg_attr') { + $this.setFormValues(action.value) + } else if (action.action_type == 'set_dlg_attr_show') { + var result = action.value; + $this.hideFormItems(result) + } else if (action.action_type == + "set_dlg_current_edit_attr" + ) { + if ($this + .focusOldFieldId == + action.value) { + $this.setData({ + focusFieldId: "" + }) + } else { + $this.setData({ + focusFieldId: $this + .focusOldFieldId + }) + } + $this.$nextTick(() => { + $this.setData({ + focusFieldId: action + .value + }) + }); + } + } + + } 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 } } + } } @@ -1921,64 +1907,95 @@ }); } else uni.showModal({ title: this.translateSys("tip"), - content: tip + ',' + this.translateSys('tip') + ':' + data + content: tip + ',' + this.translateSys('tip') + ':' + + data .ret, showCancel: false, confirmText: this.translateSys('close') }); return false } else { - var tip = data.info ? typeof data.info == 'string' ? data.info : data + var tip = data.info ? typeof data.info == 'string' ? data.info : + data .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 (!this.$data.param.After_Btn_Not_Refresh) { + if (!this.param.After_Btn_Not_Refresh) { //鍒锋柊 uni.redirectTo({ - url: '../modal/3018_2?param=' + JSON.stringify(this.$data + url: '../modal/3018_2?param=' + JSON.stringify(this + .$data .param) + - "&titlename=" + this.$data.title + "&titlename=" + this.title }); } else { - 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') { - $this.setFormValues(action.value) - } else if (action.action_type == 'set_dlg_attr_show') { - var result = action.value; - $this.hideFormItems(result) - } else if (action.action_type == - "set_dlg_current_edit_attr" - ) { - if ($this - .focusOldFieldId == - action.value) { - $this.setData({ - focusFieldId: "" - }) - } else { - $this.setData({ - focusFieldId: $this - .focusOldFieldId - }) - } - $this.$nextTick(() => { - $this.setData({ - focusFieldId: action - .value - }) + if ([0, 2, 3, 4, -1].includes(data.result_type)) { + if (data.result_type == 2) { + + } 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 actionlist = data.action || [] + for (var i = 0; i < actionlist.length; i++) { + var action = actionlist[i]; + if (action.action_type == 'set_dlg_attr') { + $this.setFormValues(action.value) + } else if (action.action_type == 'set_dlg_attr_show') { + var result = action.value; + $this.hideFormItems(result) + } else if (action.action_type == + "set_dlg_current_edit_attr" + ) { + if ($this + .focusOldFieldId == + action.value) { + $this.setData({ + focusFieldId: "" + }) + } else { + $this.setData({ + focusFieldId: $this + .focusOldFieldId + }) + } + $this.$nextTick(() => { + $this.setData({ + focusFieldId: action + .value + }) + }); + } + } + + + } 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 } } } @@ -2008,7 +2025,8 @@ cls_name: btn.Cls_Name, Edit_dlg: btn.Edit_dlg }; - const url = '../modal/3018?param=' + JSON.stringify(data) + "&titlename=" + btn.Edit_dlg + const url = '../modal/3018?param=' + JSON.stringify(data) + "&titlename=" + btn + .Edit_dlg .Name + "&type=addDataObj" var $this = this; @@ -2020,9 +2038,10 @@ console.log(resData); //鍒锋柊 uni.redirectTo({ - url: '../modal/3018_2?param=' + JSON.stringify(this + url: '../modal/3018_2?param=' + JSON.stringify( + this .$data.param) + - "&titlename=" + this.$data.title + "&titlename=" + this.title }); }, -- Gitblit v1.9.1