From f9aa1010e164e21a3c8147e0f2e13b828676800a Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期五, 29 八月 2025 18:38:55 +0800
Subject: [PATCH] initialEvent 输入参数格式和web端保持一致

---
 pages/modal/5601.vue | 2912 ++++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 1,890 insertions(+), 1,022 deletions(-)

diff --git a/pages/modal/5601.vue b/pages/modal/5601.vue
index 4a71e24..b429726 100644
--- a/pages/modal/5601.vue
+++ b/pages/modal/5601.vue
@@ -11,8 +11,7 @@
 			<view v-if="param.Show_Welcom_Page==false" class="uni-panel-content">
 				<!-- 椤电 -->
 				<view class="dv-tab">
-					<uni-segmented-control :current="current" :values="tabs" @clickItem="onClickItem"
-						styleType="button">
+					<uni-segmented-control :current="current" :values="tabs" @clickItem="onClickItem" styleType="text">
 					</uni-segmented-control>
 				</view>
 				<swiper class="view-tabpage" :current="current" @change="changeSwiper">
@@ -109,6 +108,7 @@
 				</view>
 			</uni-popup>
 		</view>
+
 	</view>
 </template>
 
@@ -116,6 +116,10 @@
 	import {
 		Base64
 	} from '@/js/Base64.js';
+	import {
+		showInfo,
+		showError
+	} from "@/js/Page.js"
 	import {
 		dictGetInfo,
 		appGetInfo,
@@ -176,6 +180,13 @@
 
 
 			},
+			initialEvent() {
+				let event = (this.head_styledef.event || []).find((e) => e.event_id == "initial");
+				return {
+					id: event?.scrip_id || "",
+					name: event?.scrip_name || "",
+				};
+			},
 		},
 		onLoad(options) {
 			uni.setNavigationBarTitle({
@@ -189,13 +200,14 @@
 				const paramValue = options.paramValue ? JSON.parse(options.paramValue) : undefined
 				this.loadData(paramValue)
 			} else {
-				uni.showModal({
-					title: this.translateSys("error"),
-					content: this.translate("tip_no_master_class"),
-					showCancel: false,
-					confirmText: this.translateSys('close')
-				});
+				showInfo(this.translate('tip_no_master_class'))
 			}
+			const $this = this
+			const eventChannel = this.getOpenerEventChannel();
+			eventChannel.on('nextRow', function(data) {
+				console.log("nextRow", data)
+				$this.setFormValues(data)
+			})
 		},
 		//椤甸潰鍒濆鍖栬幏鍙栫劍鐐� 		methods: {
@@ -278,9 +290,317 @@
 				this.setData({
 					pageDetail: pageList
 				})
-
+				await this.loadInitialEvent();
 				console.log(this.pageDetail);
 			},
+			async loadInitialEvent() {
+				try {
+					const event = this.initialEvent
+					if (event.id) {
+						//鑾峰彇琛ㄥご灞炴�
+						var head_attr = {};
+						this.head_styledef.form.items.forEach(item => {
+							if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�+								item.setting.colList.forEach(col => {
+									if (col != null) head_attr[col
+										.fieldId] = col.value;
+								});
+							} else
+								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({
+								id: "",
+								attrs: Object.keys(head_attr).map((a) => ({
+									attr: a,
+									value: head_attr[a] || "",
+								}))
+							})
+						);
+						var $this = this;
+						const jsonList = []
+						this.pageDetail.forEach((page) => {
+
+							jsonList.push({
+								page_name: page.Name,
+								item_list: $this.getDetailAttrList(
+									page),
+								ext_data: page.ExtData || {}
+							})
+
+						})
+						const data_json = Base64.encode(
+							JSON.stringify(jsonList)
+						);
+						console.log(jsonList)
+						var dataInfo = {
+							ed_type: 0,
+							start_transaction: true,
+							class_id: this.head_styledef.form.clsId,
+							class_name: '',
+							event_id: event.id,
+							event_name: '',
+							data_obj_id: '',
+							obj_attr: obj_attr,
+							prj_id: '',
+							ref_cls_id: '',
+							rel_obj_id: '',
+							user_login: '',
+							data_json: data_json,
+							compose_info: '',
+							ext_info: '',
+							global_attr: '',
+							input_param: input_param,
+						};
+						const result = await runCustomEvent(dataInfo)
+						console.log(result);
+						if (result.ret != 0 && result.ret != 1) {
+							let cls_name = result.event_info?.cls_name
+							let event_name = result.event_info?.event_name
+							tip = result.err_info ? typeof result.err_info == 'string' ? result.err_info : result
+								.err_info
+								.join('\n') : ''
+							if (result.ret == 801) {
+								if (this.param.Only_Script_Error) {
+									let pos = tip.indexOf("锛�);
+									if (pos > -1) tip = tip.substring(pos + 1);
+								}
+							}
+							if (cls_name && event_name) tip = `鎵ц鈥�{cls_name}鈥濇暟鎹被鐨勨�${event_name}鈥濊剼鏈椂杩斿洖閿欒锛�{tip}`
+							if (result.ret == 801) showInfo(tip)
+							else showError(`${tip}锛屾彁绀猴細${result.ret}`, this.translateSys('tip'))
+							this.saving = false
+							return false
+						} else {
+							var tip = result.info ? typeof result.info == 'string' ? result.info :
+								result.info.join('\n') : '';
+							tip = tip || result.err_info
+							let time = result.info_time || 0
+							if (time)
+								showError(tip, this.translateSys('tip'))
+							else
+								showInfo(tip)
+							if ([0, 2, 3, 4, -1].includes(result.result_type)) {
+								if (result.result_type == 2) {
+
+								} else if (typeof result.result == 'string') {
+									showInfo(result.result)
+
+								}
+								try {
+									let actionList = result.action || []
+									actionList.forEach(item => {
+										if (item.action_type ==
+											"insert_subtable_page_row"
+										) { //鐮佺洏涓�+											$this.param.Show_Welcom_Page =
+												false;
+											var value = item.value;
+											$this.viewAceionRow(value);
+										} else if (item.action_type ==
+											"set_subtable_page_content"
+										) { //宸茬爜鐩�+											$this.param.Show_Welcom_Page =
+												false;
+											var value = item.value;
+											const pageData = $this
+												.pageDetail.find((
+													page) => {
+													return value
+														.page_name ==
+														page.Name;
+												});
+											if (value.clear_confirm !=
+												false && value.clear ==
+												true &&
+												pageData && pageData
+												.DefList.length > 0
+											) { //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鐮佺洏鏄惁鏈夋暟鎹�+												uni.showModal({
+													title: this
+														.translateSys(
+															'tip'),
+													content: this
+														.translate(
+															"are_you_sure_clear_first"
+														) +
+														this
+														.translateSys(
+															"quotation_mark_left"
+														) +
+														value
+														.page_name +
+														this
+														.translateSys(
+															"quotation_mark_right"
+														) +
+														this
+														.translate(
+															"are_you_sure_clear_last"
+														),
+													cancelText: $this
+														.translateSys(
+															'ok'),
+													confirmText: $this
+														.translateSys(
+															'cancel'
+														),
+													success: function(
+														res) {
+														if (res
+															.cancel
+														) {
+															if (
+																pageData)
+																pageData
+																.DefList = [];
+															$this
+																.viewAceionContent(
+																	value
+																);
+														} else if (
+															res
+															.confirm
+														) {
+															if (
+																pageData)
+																pageData
+																.DefList = [];
+															$this
+																.viewAceionContent(
+																	value
+																);
+														}
+													}
+												});
+											} else {
+												if (pageData)
+													pageData.DefList = [];
+												$this.viewAceionContent(
+													value);
+											}
+										} else if (item.action_type ==
+											"select_subtable_page") {
+											var value = item.value;
+											const pageIndex = $this
+												.pageDetail.findIndex((
+													page) => {
+													return value
+														.page_name ==
+														page.Name;
+												});
+											if (pageIndex > -1) {
+												$this.setData({
+													current: pageIndex
+												})
+											}
+										} else if (item.action_type ==
+											"select_subtable_page_row") {
+											// value = {"page_name":"鐮佺洏涓�, "row":{"id":"xx"}}
+											var value = item.value;
+											$this.viewActionSelectRow(
+												value)
+										} else if (item.action_type ==
+											"remove_subtable_page_row"
+										) { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+											var value = item.value;
+											$this.viewActionRemoveRow(
+												value)
+										} 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;
+											const pageData = $this
+												.pageDetail.find((
+													page) => {
+													return value
+														.page_name ==
+														page.Name;
+												});
+											if (pageData)
+												pageData.ExtData = value
+												.ext_data
+
+										} else if (item.action_type ==
+											"clear_subpage_rows") {
+											var value = item.value;
+											const pageIndex = $this
+												.pageDetail.findIndex((
+													page) => {
+													return value
+														.page_name ==
+														page.Name;
+												});
+											if (pageIndex > -1) {
+												const pageData = $this
+													.pageDetail[pageIndex]
+												pageData.DefList = []
+												pageData.ExtData = {}
+
+												$this.$set(this.pageDetail,
+													pageIndex, pageData
+												)
+											}
+
+										} else 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 (item.action_type ==
+											'set_dlg_attr_show') {
+											var data = item.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}`
+									showError(tip, this.translateSys('tip'))
+									return
+								}
+							}
+
+						}
+
+					}
+				} catch (ex) {
+					console.log(ex);
+					showError(ex, this.translateSys('error') + "4.2")
+				}
+			},
+
 			changeSwiper(evt) {
 				let index = evt.target.current || evt.detail.current;
 				this.setData({
@@ -432,8 +752,8 @@
 								}
 
 								if ($this.focusFieldId == "") {
-									if (ele.name == 'Input' || ele.name ==
-										'InputNumber') {
+									if (!ele.disabled && (ele.name == 'Input' ||
+											ele.name == 'InputNumber' || ele.name == 'Textarea')) {
 										$this.setData({
 											focusFieldId: ele.fieldId
 										})
@@ -505,16 +825,7 @@
 
 				} catch (ex) {
 					// console.log(ex);
-					let exStr = JSON.stringify(ex)
-					if (exStr == "{}")
-						exStr = ex
-					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
-					uni.showModal({
-						title: this.translateSys("error") + "1",
-						content: tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('error') + "1")
 					return {}
 				}
 
@@ -578,16 +889,7 @@
 					return detailstyledef
 				} catch (ex) {
 					console.log(ex);
-					let exStr = JSON.stringify(ex)
-					if (exStr == "{}")
-						exStr = ex
-					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
-					uni.showModal({
-						title: this.translateSys("error") + "2",
-						content: tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('error') + "2")
 					return {}
 				}
 
@@ -620,17 +922,7 @@
 					}
 					formItem.dict = list;
 				} catch (ex) {
-					console.log(ex);
-					let exStr = JSON.stringify(ex)
-					if (exStr == "{}")
-						exStr = ex
-					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
-					uni.showModal({
-						title: this.translateSys("error") + "3",
-						content: tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('error') + "3")
 				}
 
 			},
@@ -756,32 +1048,26 @@
 
 
 			classAttr_extButton(item) {
-				var onSuffixClickCallbackEvent = item.bind.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠�+				var onSuffixClickCallbackEvent = item.bind
+					.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠� 				var onSuffixClickEvent = item.bind.onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋� 
 				if (!onSuffixClickCallbackEvent.id) {
-					uni.showModal({
-						title: this.translateSys("tip"),
-						content: this.translate('icon_click_callback_empty'),
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+
+					showInfo(this.translate('icon_click_callback_empty'))
 					return;
 				}
 				if (!onSuffixClickEvent.id) {
-					uni.showModal({
-						title: this.translateSys("tip"),
-						content: this.translate('icon_click_event_empty'),
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showInfo(this.translate('icon_click_event_empty'))
+
 					return;
 				}
 				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);
 			},
 			onDetailEnterChange(item, style, pageIndex) {
@@ -849,58 +1135,36 @@
 					const result = await runCustomEvent(dataInfo)
 					console.log(result)
 					if (result.ret != 0 && result.ret != 1) {
-						var tip = result.err_info ? typeof result
-							.err_info == 'string' ? result
-							.err_info : result.err_info.join('<br/>') :
-							'';
+						let cls_name = result.event_info?.cls_name
+						let event_name = result.event_info?.event_name
+						tip = result.err_info ? typeof result.err_info == 'string' ? result.err_info : result.err_info
+							.join('\n') : ''
 						if (result.ret == 801) {
 							if (this.param.Only_Script_Error) {
 								let pos = tip.indexOf("锛�);
-								if (pos > -1) tip = tip.substring(pos +
-									1);
+								if (pos > -1) tip = tip.substring(pos + 1);
 							}
-							uni.showModal({
-								title: this.translateSys(
-									"tip"),
-								content: tip,
-								showCancel: false,
-								confirmText: this.translateSys(
-									'close')
-							});
-						} else uni.showModal({
-							title: this.translateSys('tip'),
-							content: tip + ',' + this
-								.translateSys('tip') + ':' +
-								result
-								.ret,
-							showCancel: false,
-							confirmText: this.translateSys(
-								'close')
-						});
-						return false;
+						}
+						if (cls_name && event_name) tip = `鎵ц鈥�{cls_name}鈥濇暟鎹被鐨勨�${event_name}鈥濊剼鏈椂杩斿洖閿欒锛�{tip}`
+						if (result.ret == 801) showInfo(tip)
+						else showError(`${tip}锛屾彁绀猴細${result.ret}`, this.translateSys('tip'))
+						this.saving = false
+						return false
 					} else {
-						var tip = result.info ? typeof result.info ==
-							'string' ? result.info :
-							result.info.join('<br/>') : '';
+						var tip = result.info ? typeof result.info == 'string' ? result.info :
+							result.info.join('\n') : '';
 						tip = tip || result.err_info
-						if (tip) uni.showModal({
-							title: this.translateSys('tip'),
-							content: tip,
-							showCancel: false,
-							confirmText: this.translateSys('close')
-						});
+						let time = result.info_time || 0
+						if (time)
+							showError(tip, this.translateSys('tip'))
+						else
+							showInfo(tip)
 						if ([0, 2, 3, 4, -1].includes(result.result_type)) {
 							if (result.result_type == 2) {
 
 							} else if (typeof result.result == 'string') {
-								if (result.result) {
-									uni.showModal({
-										title: this.translateSys('tip'),
-										content: result.result,
-										showCancel: false,
-										confirmText: this.translateSys('close')
-									});
-								}
+								showInfo(result.result)
+
 							}
 							try {
 								var actionList = result.action || []
@@ -908,23 +1172,21 @@
 									if (item.action_type == "set_dlg_attr") {
 										// value = {"attr":"xxx", "value":"xxx"}
 										var data = item.value;
-										this.setDetailFormValues(data, style, pageIndex)
-									} else if (item.action_type == 'set_dlg_attr_show') {
+										this.setDetailFormValues(data, style,
+											pageIndex)
+									} else if (item.action_type ==
+										'set_dlg_attr_show') {
 										var data = item.value;
-										this.setDetailFormItemVisible(data, style, pageIndex)
+										this.setDetailFormItemVisible(data,
+											style, pageIndex)
 									}
 								});
 							} catch (ex) {
-								let actionList = (result.action || []).map(a => a.action_type).join(';')
+								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)
+								showError(tip, this.translateSys('tip'))
 								return
 							}
 						}
@@ -933,21 +1195,7 @@
 
 				} catch (ex) {
 					console.log(ex)
-					let exStr = JSON.stringify(ex)
-					if (exStr == "{}")
-						exStr = ex
-					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
-					uni.showModal({
-						title: this.translateSys("error") + "6.1",
-						content: this.translate(
-								'execute_after_change_event_failed') + this
-							.translateSys(
-								"comma") +
-							this.translate('reason') + this.translateSys("colon") +
-							tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('error') + "6.1")
 				}
 
 			},
@@ -960,8 +1208,10 @@
 						style.form.items.forEach(item => {
 							if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 								item.setting.colList.forEach(col => {
-									if (col != null) detail_attr[col
-										.fieldId] = col.value;
+									if (col != null)
+										detail_attr[col
+											.fieldId] = col
+										.value;
 								});
 							} else
 								detail_attr[item.fieldId] = item.value;
@@ -979,17 +1229,21 @@
 					pageData.DefList.forEach(style => {
 						style.form.attrs.forEach(attr => {
 							for (var key in detailAttrList) {
-								if (style.form.objId == detailAttrList[key][
+								if (style.form.objId == detailAttrList[
+										key][
 										'id'
 									]) {
-									var keys = Object.keys(detailAttrList[key]);
+									var keys = Object.keys(
+										detailAttrList[key]);
 									var isflag = true;
 									keys.forEach((ele) => {
-										if (ele == attr.attr) isflag =
+										if (ele == attr.attr)
+											isflag =
 											false;
 									});
 									if (isflag) {
-										detailAttrList[attr.attr] = attr.value;
+										detailAttrList[attr.attr] =
+											attr.value;
 									}
 								}
 							}
@@ -1043,7 +1297,8 @@
 
 							jsonList.push({
 								page_name: page.Name,
-								item_list: $this.getDetailAttrList(page),
+								item_list: $this.getDetailAttrList(
+									page),
 								ext_data: page.ExtData || {}
 							})
 
@@ -1074,186 +1329,236 @@
 						const result = await runCustomEvent(dataInfo)
 						console.log(result);
 						if (result.ret != 0 && result.ret != 1) {
-							var tip = result.err_info ? typeof result
-								.err_info == 'string' ? result
-								.err_info : result.err_info.join('<br/>') :
-								'';
+							let cls_name = result.event_info?.cls_name
+							let event_name = result.event_info?.event_name
+							tip = result.err_info ? typeof result.err_info == 'string' ? result.err_info : result
+								.err_info
+								.join('\n') : ''
 							if (result.ret == 801) {
 								if (this.param.Only_Script_Error) {
 									let pos = tip.indexOf("锛�);
-									if (pos > -1) tip = tip.substring(pos +
-										1);
+									if (pos > -1) tip = tip.substring(pos + 1);
 								}
-								uni.showModal({
-									title: this.translateSys(
-										"tip"),
-									content: tip,
-									showCancel: false,
-									confirmText: this.translateSys(
-										'close')
-								});
-							} else uni.showModal({
-								title: this.translateSys('tip'),
-								content: tip + ',' + this
-									.translateSys('tip') + ':' +
-									result
-									.ret,
-								showCancel: false,
-								confirmText: this.translateSys(
-									'close')
-							});
-							return false;
+							}
+							if (cls_name && event_name) tip = `鎵ц鈥�{cls_name}鈥濇暟鎹被鐨勨�${event_name}鈥濊剼鏈椂杩斿洖閿欒锛�{tip}`
+							if (result.ret == 801) showInfo(tip)
+							else showError(`${tip}锛屾彁绀猴細${result.ret}`, this.translateSys('tip'))
+							this.saving = false
+							return false
 						} else {
-							var tip = result.info ? typeof result.info ==
-								'string' ? result.info :
-								result.info.join('<br/>') : '';
+							var tip = result.info ? typeof result.info == 'string' ? result.info :
+								result.info.join('\n') : '';
 							tip = tip || result.err_info
-							if (tip) uni.showModal({
-								title: this.translateSys('tip'),
-								content: tip,
-								showCancel: false,
-								confirmText: this.translateSys(
-									'close')
-							});
+							let time = result.info_time || 0
+							if (time)
+								showError(tip, this.translateSys('tip'))
+							else
+								showInfo(tip)
 							if ([0, 2, 3, 4, -1].includes(result.result_type)) {
 								if (result.result_type == 2) {
 
 								} else if (typeof result.result == 'string') {
-									if (result.result) {
-										uni.showModal({
-											title: this.translateSys('tip'),
-											content: result.result,
-											showCancel: false,
-											confirmText: this.translateSys('close')
-										});
-									}
+									showInfo(result.result)
+
 								}
 								try {
 									let actionList = result.action || []
 									actionList.forEach(item => {
-										if (item.action_type == "insert_subtable_page_row") { //鐮佺洏涓�-											$this.param.Show_Welcom_Page = false;
+										if (item.action_type ==
+											"insert_subtable_page_row"
+										) { //鐮佺洏涓�+											$this.param.Show_Welcom_Page =
+												false;
 											var value = item.value;
 											$this.viewAceionRow(value);
 										} else if (item.action_type ==
-											"set_subtable_page_content") { //宸茬爜鐩�-											$this.param.Show_Welcom_Page = false;
+											"set_subtable_page_content"
+										) { //宸茬爜鐩�+											$this.param.Show_Welcom_Page =
+												false;
 											var value = item.value;
-											const pageData = $this.pageDetail.find((page) => {
-												return value.page_name == page.Name;
-											});
-											if (value.clear_confirm != false && value.clear == true &&
-												pageData && pageData.DefList.length > 0
+											const pageData = $this
+												.pageDetail.find((
+													page) => {
+													return value
+														.page_name ==
+														page.Name;
+												});
+											if (value.clear_confirm !=
+												false && value.clear ==
+												true &&
+												pageData && pageData
+												.DefList.length > 0
 											) { //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鐮佺洏鏄惁鏈夋暟鎹� 												uni.showModal({
-													title: this.translateSys('tip'),
-													content: this.translate(
-															"are_you_sure_clear_first") +
-														this.translateSys(
-															"quotation_mark_left") +
-														value.page_name +
-														this.translateSys(
-															"quotation_mark_right") +
-														this.translate(
-															"are_you_sure_clear_last"),
-													cancelText: $this.translateSys('ok'),
-													confirmText: $this.translateSys('cancel'),
-													success: function(res) {
-														if (res.cancel) {
-															if (pageData)
-																pageData.DefList = [];
-															$this.viewAceionContent(value);
-														} else if (res.confirm) {
-															if (pageData)
-																pageData.DefList = [];
-															$this.viewAceionContent(value);
+													title: this
+														.translateSys(
+															'tip'),
+													content: this
+														.translate(
+															"are_you_sure_clear_first"
+														) +
+														this
+														.translateSys(
+															"quotation_mark_left"
+														) +
+														value
+														.page_name +
+														this
+														.translateSys(
+															"quotation_mark_right"
+														) +
+														this
+														.translate(
+															"are_you_sure_clear_last"
+														),
+													cancelText: $this
+														.translateSys(
+															'ok'),
+													confirmText: $this
+														.translateSys(
+															'cancel'
+														),
+													success: function(
+														res) {
+														if (res
+															.cancel
+														) {
+															if (
+																pageData)
+																pageData
+																.DefList = [];
+															$this
+																.viewAceionContent(
+																	value
+																);
+														} else if (
+															res
+															.confirm
+														) {
+															if (
+																pageData)
+																pageData
+																.DefList = [];
+															$this
+																.viewAceionContent(
+																	value
+																);
 														}
 													}
 												});
 											} else {
 												if (pageData)
 													pageData.DefList = [];
-												$this.viewAceionContent(value);
+												$this.viewAceionContent(
+													value);
 											}
-										} else if (item.action_type == "select_subtable_page") {
+										} else if (item.action_type ==
+											"select_subtable_page") {
 											var value = item.value;
-											const pageIndex = $this.pageDetail.findIndex((page) => {
-												return value.page_name == page.Name;
-											});
+											const pageIndex = $this
+												.pageDetail.findIndex((
+													page) => {
+													return value
+														.page_name ==
+														page.Name;
+												});
 											if (pageIndex > -1) {
 												$this.setData({
 													current: pageIndex
 												})
 											}
-										} else if (item.action_type == "select_subtable_page_row") {
+										} else if (item.action_type ==
+											"select_subtable_page_row") {
 											// value = {"page_name":"鐮佺洏涓�, "row":{"id":"xx"}}
 											var value = item.value;
-											$this.viewActionSelectRow(value)
+											$this.viewActionSelectRow(
+												value)
 										} else if (item.action_type ==
-											"remove_subtable_page_row") { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+											"remove_subtable_page_row"
+										) { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹� 											var value = item.value;
-											$this.viewActionRemoveRow(value)
-										} else if (item.action_type == "set_subtable_page_row") {
-											$this.viewActionSetRow(item.value)
+											$this.viewActionRemoveRow(
+												value)
+										} else if (item.action_type ==
+											"set_subtable_page_row") {
+											$this.viewActionSetRow(item
+												.value)
 
-										} else if (item.action_type == "set_subtable_page_ext_data") {
+										} else if (item.action_type ==
+											"set_subtable_page_ext_data") {
 											var value = item.value;
-											const pageData = $this.pageDetail.find((page) => {
-												return value.page_name == page.Name;
-											});
+											const pageData = $this
+												.pageDetail.find((
+													page) => {
+													return value
+														.page_name ==
+														page.Name;
+												});
 											if (pageData)
-												pageData.ExtData = value.ext_data
+												pageData.ExtData = value
+												.ext_data
 
-										} else if (item.action_type == "clear_subpage_rows") {
+										} else if (item.action_type ==
+											"clear_subpage_rows") {
 											var value = item.value;
-											const pageIndex = $this.pageDetail.findIndex((page) => {
-												return value.page_name == page.Name;
-											});
+											const pageIndex = $this
+												.pageDetail.findIndex((
+													page) => {
+													return value
+														.page_name ==
+														page.Name;
+												});
 											if (pageIndex > -1) {
-												const pageData = $this.pageDetail[pageIndex]
+												const pageData = $this
+													.pageDetail[pageIndex]
 												pageData.DefList = []
 												pageData.ExtData = {}
 
-												$this.$set(this.pageDetail, pageIndex, pageData)
+												$this.$set(this.pageDetail,
+													pageIndex, pageData
+												)
 											}
 
-										} else if (item.action_type == "set_dlg_current_edit_attr") {
+										} else if (item.action_type ==
+											"set_dlg_current_edit_attr") {
 
-											if ($this.focusOldFieldId == item.value) {
+											if ($this.focusOldFieldId ==
+												item.value) {
 												$this.setData({
 													focusFieldId: ""
 												})
 											} else {
 												$this.setData({
-													focusFieldId: $this.focusOldFieldId
+													focusFieldId: $this
+														.focusOldFieldId
 												})
 											}
 											$this.$nextTick(() => {
 												$this.setData({
-													focusFieldId: item.value
+													focusFieldId: item
+														.value
 												})
 											});
-										} else if (item.action_type == "set_dlg_attr") {
+										} else if (item.action_type ==
+											"set_dlg_attr") {
 											// value = {"attr":"xxx", "value":"xxx"}
 											var data = item.value;
 											$this.setFormValues(data)
-										} else if (item.action_type == 'set_dlg_attr_show') {
+										} else if (item.action_type ==
+											'set_dlg_attr_show') {
 											var data = item.value;
 											$this.setFormItemVisible(data)
 										}
 									});
 
 								} catch (ex) {
-									let actionList = (result.action || []).map(a => a.action_type).join(';')
-									let tip = typeof ex == 'string' ? ex : ex.message
+									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)
+									showError(tip, this.translateSys('tip'))
 									return
 								}
 							}
@@ -1263,21 +1568,7 @@
 					}
 				} catch (ex) {
 					console.log(ex);
-					let exStr = JSON.stringify(ex)
-					if (exStr == "{}")
-						exStr = ex
-					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
-					uni.showModal({
-						title: this.translateSys("error") + "4.2",
-						content: this.translate(
-								'execute_after_change_event_failed') + this
-							.translateSys(
-								"comma") +
-							this.translate('reason') + this.translateSys("colon") +
-							tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('error') + "4.2")
 				}
 			},
 			operationNumber(value1, value2, operation) {
@@ -1299,13 +1590,16 @@
 				} else if (operation == "/") {
 					if (number2) return number1 / number2;
 					else {
-						throw new Error(`${this.translate("illegal_dividend")}'${value2}'`);
+						throw new Error(
+							`${this.translate("illegal_dividend")}'${value2}'`);
 						return 0;
 					}
 				} else if (operation == "=") {
 					return value2;
 				} else {
-					throw new Error(`${this.translate("unrecognized_operator")}'${operation}'`);
+					throw new Error(
+						`${this.translate("unrecognized_operator")}'${operation}'`
+					);
 					return 0;
 				}
 			},
@@ -1317,7 +1611,8 @@
 				if (pageData?.DefList) {
 					const detailStyleDefList = pageData.DefList || []
 					let bFindRow = false;
-					for (let index = 0; index < detailStyleDefList.length; index++) {
+					for (let index = 0; index < detailStyleDefList
+						.length; index++) {
 						const ele = detailStyleDefList[index]
 
 						if (value.row.id) {
@@ -1327,7 +1622,8 @@
 						} else {
 							const conditions = row.condition || [];
 							if (conditions.length > 0) {
-								for (let index = 0; index < detailStyleDefList.length; index++) {
+								for (let index = 0; index < detailStyleDefList
+									.length; index++) {
 									const ele = detailStyleDefList[index]
 									let bFindCondition = true;
 									for (let i in conditions) {
@@ -1336,18 +1632,23 @@
 										for (let i2 in ele.form.items) {
 											const ele2 = ele.form.items[i2];
 											if (ele2.name != "Layout") {
-												if (ele2.fieldId == condition.attr) {
-													if (condition.value == ele2.value) {
+												if (ele2.fieldId == condition
+													.attr) {
+													if (condition.value == ele2
+														.value) {
 														bFind = true;
 													}
 													break;
 												}
 											} else {
-												const colList = ele2.setting.colList || [];
+												const colList = ele2.setting
+													.colList || [];
 												for (let i3 in colList) {
 													const col = colList[i3];
-													if (col.fieldId == condition.attr) {
-														if (condition.value == col.value) {
+													if (col.fieldId == condition
+														.attr) {
+														if (condition.value == col
+															.value) {
 															bFind = true;
 														}
 														break;
@@ -1371,13 +1672,17 @@
 							ele.SelBut_Checked = true;
 							this.active_id = ele.form.htmlobjId;
 							//鑷姩婊氬姩鍒版寚瀹氬厓绱�-							uni.createSelectorQuery().select("#tabpanel" + value.page_name) //瀵瑰簲澶栧眰鑺傜偣
+							uni.createSelectorQuery().select("#tabpanel" + value
+									.page_name) //瀵瑰簲澶栧眰鑺傜偣
 								.boundingClientRect((container) => {
 									uni.createSelectorQuery()
-										.select("#dvpanel" + ele.form.htmlobjId) //鐩爣鑺傜偣
+										.select("#dvpanel" + ele.form
+											.htmlobjId) //鐩爣鑺傜偣
 										.boundingClientRect((target) => {
 											uni.pageScrollTo({
-												scrollTop: target.top - container
+												scrollTop: target
+													.top -
+													container
 													.top, //婊氬姩鍒板疄闄呰窛绂绘槸鍏冪礌璺濈椤堕儴鐨勮窛绂诲噺鍘绘渶澶栧眰鐩掑瓙鐨勬粴鍔ㄨ窛绂� 											});
 										}).exec();
@@ -1393,7 +1698,8 @@
 				if (JSON.stringify(value.row) == '{}') {
 					return;
 				}
-				const pageIndex = this.pageDetail.findIndex((page, index2, arr) => {
+				const pageIndex = this.pageDetail.findIndex((page, index2,
+					arr) => {
 					return value.page_name == page.Name;
 				})
 				if (pageIndex < 0)
@@ -1404,7 +1710,8 @@
 					const detailStyleDefList = pageData.DefList || []
 					value.row.forEach((row) => {
 						if (row.id) {
-							for (let index = 0; index < detailStyleDefList.length; index++) {
+							for (let index = 0; index < detailStyleDefList
+								.length; index++) {
 								const ele = detailStyleDefList[index]
 								if (ele.form.objId == row.id) {
 									detailStyleDefList.splice(index, 1);
@@ -1415,27 +1722,36 @@
 						} else {
 							const conditions = row.condition || [];
 							if (conditions.length > 0) {
-								for (let index = 0; index < detailStyleDefList.length; index++) {
+								for (let index = 0; index <
+									detailStyleDefList.length; index++) {
 									const ele = detailStyleDefList[index]
 									let bFindCondition = true;
 									for (let i in conditions) {
 										const condition = conditions[i];
 										let bFind = false;
 										for (let i2 in ele.form.items) {
-											const ele2 = ele.form.items[i2];
+											const ele2 = ele.form.items[
+												i2];
 											if (ele2.name != "Layout") {
-												if (ele2.fieldId == condition.attr) {
-													if (condition.value == ele2.value) {
+												if (ele2.fieldId ==
+													condition.attr) {
+													if (condition.value ==
+														ele2.value) {
 														bFind = true;
 													}
 													break;
 												}
 											} else {
-												const colList = ele2.setting.colList || [];
+												const colList = ele2
+													.setting.colList || [];
 												for (let i3 in colList) {
-													const col = colList[i3];
-													if (col.fieldId == condition.attr) {
-														if (condition.value == col.value) {
+													const col = colList[
+														i3];
+													if (col.fieldId ==
+														condition.attr) {
+														if (condition
+															.value == col
+															.value) {
 															bFind = true;
 														}
 														break;
@@ -1450,7 +1766,8 @@
 										}
 									}
 									if (bFindCondition) {
-										detailStyleDefList.splice(index, 1);
+										detailStyleDefList.splice(index,
+											1);
 
 									}
 								}
@@ -1464,7 +1781,8 @@
 			//鏇存柊鍒嗛〉绛句腑鐨勫垪琛ㄩ」鍐呭
 			viewActionSetRow(value) {
 				const $this = this
-				const pageIndex = $this.pageDetail.findIndex((page, index2, arr) => {
+				const pageIndex = $this.pageDetail.findIndex((page, index2,
+					arr) => {
 					return value.page_name == page.Name;
 				})
 				if (pageIndex < 0)
@@ -1476,30 +1794,60 @@
 						if (rowData.id) {
 							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
-															)
-													}
+									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
+																		)
+																}
+															}
+														}
+													)
+											}
+										});
 								});
 							}
 						} else if (rowData.condition) {
@@ -1509,20 +1857,28 @@
 								const condition = conditions[i];
 								let bFind = false;
 								for (let i2 in ele.form.items) {
-									const ele2 = ele.form.items[i2];
+									const ele2 = ele.form.items[
+										i2];
 									if (ele2.name != "Layout") {
-										if (ele2.fieldId == condition.attr) {
-											if (condition.value == ele2.value) {
+										if (ele2.fieldId ==
+											condition.attr) {
+											if (condition.value ==
+												ele2.value) {
 												bFind = true;
 											}
 											break;
 										}
 									} else {
-										const colList = ele2.setting.colList || [];
+										const colList = ele2
+											.setting.colList || [];
 										for (let i3 in colList) {
-											const col = colList[i3];
-											if (col.fieldId == condition.attr) {
-												if (condition.value == col.value) {
+											const col = colList[
+												i3];
+											if (col.fieldId ==
+												condition.attr) {
+												if (condition
+													.value == col
+													.value) {
 													bFind = true;
 												}
 												break;
@@ -1538,30 +1894,60 @@
 							}
 							if (bFindCondition) {
 								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
+									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
+																		)
+																}
+															}
+														}
 													)
 											}
-										} 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)
-													}
-												}
-											})
-										}
-									});
+										});
 								});
 
 							}
@@ -1592,22 +1978,34 @@
 					data.row.forEach(row => {
 						detailStyle = JSON.parse(styleStr);
 						detailStyle.form.objId = row.id;
-						detailStyle.form.htmlobjId = row.id ? row.id.replace(/-/g, '').replace('{', '')
+						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;
-								} else if (ele.name == 'Layout') {
-									ele.setting.colList.forEach(col => {
-										if (col) {
-											if (col.fieldId == attr.attr)
-												col.value = attr.value;
-										}
-									});
+									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;
+											}
+										});
 								}
 							});
 						});
@@ -1642,7 +2040,8 @@
 						//	detailStyle.SelBut_Checked = data.checkbox ?? true;
 
 						detailStyle.form.objId = cont.id;
-						detailStyle.form.htmlobjId = cont.id ? cont.id.replace(/-/g,
+						detailStyle.form.htmlobjId = cont.id ? cont.id
+							.replace(/-/g,
 								'')
 							.replace('{', '').replace('}',
 								'') : 'null';
@@ -1650,17 +2049,27 @@
 						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;
-											}
-										});
+									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;
+												}
+											});
 								}
 							});
 						});
@@ -1668,30 +2077,56 @@
 						if (data.clear == false) {
 							var isflag = true;
 							pageData.DefList.forEach((style, index) => {
-								if (style.form.objId == detailStyle.form.objId) {
+								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;
-														}
-													});
-											}
-										});
+										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) pageData.DefList.push(detailStyle); //寰呭垎鎷�+							if (isflag) pageData.DefList.push(
+								detailStyle); //寰呭垎鎷� 						} else {
 							pageData.DefList.push(detailStyle); //寰呭垎鎷� 						}
@@ -1711,11 +2146,14 @@
 					head_styledef.hiddenIds = []
 				}
 				attrs.forEach((attr) => {
-					let index = head_styledef.hiddenIds.findIndex((id) => id == attr.attr);
+					let index = head_styledef.hiddenIds.findIndex((id) =>
+						id == attr.attr);
 					if (attr.show) {
-						if (index > -1) head_styledef.hiddenIds.splice(index, 1);
+						if (index > -1) head_styledef.hiddenIds.splice(
+							index, 1);
 					} else {
-						if (index == -1) head_styledef.hiddenIds.push(attr.attr);
+						if (index == -1) head_styledef.hiddenIds.push(attr
+							.attr);
 					}
 				});
 
@@ -1732,39 +2170,58 @@
 				attrs.forEach(async (attr, key) => {
 					if (attr.choice_list) {
 						var dictItemList = [];
-						attr.choice_list.forEach(async (val, index) => {
+						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;
+						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;
+										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;
+							} 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.model[attr.attr] = attr
+							.value;
 					}
 					head_styledef.form.items.forEach(async (ele) => {
 						if (ele.name != "Layout") {
@@ -1772,25 +2229,57 @@
 								ele.value = attr.value;
 								ele.oldvalue = attr.value;
 								if (ele.name == "Input") {
-									if (attr.prompt) ele.placeholder = attr.prompt;
+									if (attr.prompt) ele
+										.placeholder = attr
+										.prompt;
 								}
-								if (attr.enable !== undefined) {
-									if (attr.enable) ele.disabled = false;
-									else ele.disabled = true;
+								if (attr.enable !==
+									undefined) {
+									if (attr.enable) ele
+										.disabled = false;
+									else ele.disabled =
+										true;
 								}
 							}
 						} else if (ele.name == "Layout") {
-							ele.setting.colList.forEach((col) => {
+							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 (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;
+										if (attr
+											.enable !==
+											undefined
+										) {
+											if (attr
+												.enable
+											)
+												col
+												.disabled =
+												false;
+											else col
+												.disabled =
+												true;
 										}
 									}
 								}
@@ -1816,7 +2305,8 @@
 					style.hiddenIds = []
 				}
 				attrs.forEach((attr) => {
-					let index = style.hiddenIds.findIndex((id) => id == attr.attr);
+					let index = style.hiddenIds.findIndex((id) => id ==
+						attr.attr);
 					if (attr.show) {
 						if (index > -1) style.hiddenIds.splice(index, 1);
 					} else {
@@ -1836,34 +2326,52 @@
 				attrs.forEach(async (attr, key) => {
 					if (attr.choice_list) {
 						var dictItemList = [];
-						attr.choice_list.forEach(async (val, index) => {
+						attr.choice_list.forEach(async (val,
+							index) => {
 							dictItemList.push({
 								text: val,
 								value: val
 							});
 						});
 
-						style.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;
+						style.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;
+										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;
+							} 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;
+												}
 											}
 										}
-									}
-								});
+									});
 							}
 						});
 					}
@@ -1876,25 +2384,57 @@
 								ele.value = attr.value;
 								ele.oldvalue = attr.value;
 								if (ele.name == "Input") {
-									if (attr.prompt) ele.placeholder = attr.prompt;
+									if (attr.prompt) ele
+										.placeholder = attr
+										.prompt;
 								}
-								if (attr.enable !== undefined) {
-									if (attr.enable) ele.disabled = false;
-									else ele.disabled = true;
+								if (attr.enable !==
+									undefined) {
+									if (attr.enable) ele
+										.disabled = false;
+									else ele.disabled =
+										true;
 								}
 							}
 						} else if (ele.name == "Layout") {
-							ele.setting.colList.forEach((col) => {
+							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 (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;
+										if (attr
+											.enable !==
+											undefined
+										) {
+											if (attr
+												.enable
+											)
+												col
+												.disabled =
+												false;
+											else col
+												.disabled =
+												true;
 										}
 									}
 								}
@@ -1918,7 +2458,8 @@
 				this.head_styledef.form.items.forEach(item => {
 					if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 						item.setting.colList.forEach(col => {
-							if (col != null) head_attr[col.fieldId] =
+							if (col != null) head_attr[col
+									.fieldId] =
 								col.value;
 						});
 					} else
@@ -1950,11 +2491,15 @@
 				//鑾峰彇姝e湪鍒嗘嫞閲屾病鏈夋樉绀虹殑瀛楁
 				style.form.attrs.forEach(attr => {
 					for (var key in detailAttrList) {
-						if (style.form.objId == detailAttrList[key]['id']) {
-							var keys = Object.keys(detailAttrList[key]);
+						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 (ele == attr.attr) isflag =
+									false;
 							});
 							if (isflag) {
 								detailAttrList[attr.attr] = attr.value;
@@ -1983,12 +2528,8 @@
 					});
 				});
 				if (jsonlist.length == 0) {
-					uni.showModal({
-						title: this.translateSys("tip"),
-						content: this.translate("tip_no_select_data"),
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showInfo(this.translate("tip_no_select_data"))
+
 					return;
 				}
 				// console.log(jsonlist);
@@ -2039,21 +2580,13 @@
 					}
 				}
 				if (!$this.popupParam) {
-					uni.showModal({
-						title: this.translateSys("tip"),
-						content: "popupParam涓虹┖锛�,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showInfo("popupParam涓虹┖锛�)
+
 					return;
 				}
 				if (data.length == 0) {
-					uni.showModal({
-						title: this.translateSys("tip"),
-						content: this.translate("tip_no_select_data"),
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showInfo(this.translate("tip_no_select_data"))
+
 					return;
 				}
 				var callback_eventid = $this.popupParam.button_callback.trim();
@@ -2081,7 +2614,8 @@
 					'button': 'top', // top/bottom
 					button_name: this.translateSys('add2'),
 					master: {
-						cls_id: this.ClsID, // button=bottom鏃�master鐨刢ls_id
+						cls_id: this
+							.ClsID, // button=bottom鏃�master鐨刢ls_id
 						//obj_id: ''  // button=bottom鏃�master鐨刼bj_id
 					}
 				};
@@ -2098,20 +2632,26 @@
 							type: data_attr.Type, //瀛楁绫诲瀷
 							readonly: data_attr.ReadOnly, //鏄惁鍙
 							button_img: data_attr.button_img, //寮曠敤鎸夐挳鐨勫浘鏍�-							button_tooltip: data_attr.button_tooltip //寮曠敤鎸夐挳鐨則ooltip
+							button_tooltip: data_attr
+								.button_tooltip //寮曠敤鎸夐挳鐨則ooltip
 						}
 					}
 				}
-				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.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜
+				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
+					.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜
 				if (info.dataJson)
-					info.dataJson = Base64.encode(JSON.stringify(info.dataJson)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜
+					info.dataJson = Base64.encode(JSON.stringify(info
+						.dataJson)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜
 				var obj_attr = {};
 				info.attr.forEach(item => {
 					obj_attr[item.attr] = item.value;
 				});
-				if (!info.eventid.includes('{')) info.eventid = '{' + info.eventid + '}';
+				if (!info.eventid.includes('{')) info.eventid = '{' + info
+					.eventid + '}';
 				var dataInfo = {
 					ed_type: info.edtype,
 					start_transaction: true,
@@ -2135,96 +2675,87 @@
 				// return;
 				runCustomEvent(dataInfo).then(data => {
 					if (data.ret != 0 && data.ret != 1) {
-						var tip = data.err_info ? typeof data.err_info == 'string' ? data
-							.err_info :
-							data
-							.err_info.join('<br/>') : '';
+						let cls_name = data.event_info?.cls_name
+						let event_name = data.event_info?.event_name
+						tip = data.err_info ? typeof data.err_info == 'string' ? data.err_info : data.err_info
+							.join('\n') : ''
 						if (data.ret == 801) {
 							if (this.param.Only_Script_Error) {
 								let pos = tip.indexOf("锛�);
 								if (pos > -1) tip = tip.substring(pos + 1);
 							}
-							uni.showModal({
-								title: this.translateSys("tip"),
-								content: tip,
-								showCancel: false,
-								confirmText: this.translateSys('close')
-							});
-						} else uni.showModal({
-							title: this.translateSys("tip"),
-							content: tip + ',' + this.translateSys('tip') + ':' + data
-								.ret,
-							showCancel: false,
-							confirmText: this.translateSys('close')
-						});
+						}
+						if (cls_name && event_name) tip = `鎵ц鈥�{cls_name}鈥濇暟鎹被鐨勨�${event_name}鈥濊剼鏈椂杩斿洖閿欒锛�{tip}`
+						if (data.ret == 801) showInfo(tip)
+						else showError(`${tip}锛屾彁绀猴細${data.ret}`, this.translateSys('tip'))
+						this.saving = false
 						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('\n') : '';
 						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)) {
+						let time = data.info_time || 0
+						if (time)
+							showError(tip, this.translateSys('tip'))
+						else
+							showInfo(tip)
+						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: data.result,
-										showCancel: false,
-										confirmText: this.translateSys('close')
-									});
-								}
+							} else if (typeof data.result ==
+								'string') {
+								showInfo(data.result)
 							}
 							try {
 								var actionlist = data.action || []
-								for (var i = 0; i < actionlist.length; i++) {
+								for (var i = 0; i < actionlist
+									.length; i++) {
 									var action = actionlist[i];
-									if (action.action_type == 'set_dlg_attr') {
+									if (action.action_type ==
+										'set_dlg_attr') {
 										var result = action.value;
 										$this.setFormValues(result)
-									} else if (action.action_type == 'set_dlg_attr_show') {
+									} else if (action
+										.action_type ==
+										'set_dlg_attr_show') {
 										var result = action.value;
-										$this.setFormItemVisible(result)
+										$this.setFormItemVisible(
+											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_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')
-										});
+										showInfo(this
+											.translateSys(
+												"quotation_mark_left"
+											) +
+											action
+											.action_type +
+											this
+											.translateSys(
+												"quotation_mark_right"
+											) +
+											this
+											.translate(
+												"tip_action_unprocessed"
+											))
+
 									}
 								}
 
 
 							} catch (ex) {
-								let actionList = (data.action || []).map(a => a.action_type).join(';')
-								let tip = typeof ex == 'string' ? ex : ex.message
+								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)
+								showError(tip, this.translateSys('tip'))
 								return
 							}
 						}
@@ -2232,20 +2763,13 @@
 
 				}).catch(ex => {
 					// console.log(ex);
-					let exStr = JSON.stringify(ex)
-					if (exStr == "{}")
-						exStr = ex
-					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
-					uni.showModal({
-						title: this.translateSys("error") + "3.1",
-						content: exStr,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys("error") + "3.1")
 				});
 			},
-			dataObjRunCustomEvent_Return(eventid, data_attr, button_callback, item) {
-				console.log("dataObjRunCustomEvent_Return", eventid, data_attr, button_callback)
+			dataObjRunCustomEvent_Return(eventid, data_attr,
+				button_callback, item) {
+				console.log("dataObjRunCustomEvent_Return", eventid,
+					data_attr, button_callback)
 				const $this = this
 				var enviroment = {
 					'function': '3000', // 鍔熻兘鐐圭紪鍙�@@ -2253,7 +2777,8 @@
 					'button': 'top', // top/bottom
 					button_name: $this.translateSys('add2'),
 					master: {
-						cls_id: $this.ClsID, // button=bottom鏃�master鐨刢ls_id
+						cls_id: $this
+							.ClsID, // button=bottom鏃�master鐨刢ls_id
 						//obj_id: ''  // button=bottom鏃�master鐨刼bj_id
 					}
 				};
@@ -2269,8 +2794,10 @@
 					type: 'small', //灏忕獥鍙� 					class_id: $this.ClsID, //褰撳墠鏁版嵁绫籭d
 				}
-				extinfo = Base64.encode(JSON.stringify(extinfo)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜
-				var global_attr = Base64.encode(JSON.stringify($this.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜
+				extinfo = Base64.encode(JSON.stringify(
+					extinfo)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜
+				var global_attr = Base64.encode(JSON.stringify($this
+					.global_attr)); //灏嗗瓧绗︿覆杞崲涓篵ase64缂栫爜
 				var obj_attr = {};
 				req.forEach(item2 => {
 					obj_attr[item2.attr] = item2.value;
@@ -2308,76 +2835,74 @@
 				// return;
 				runCustomEvent(dataInfo).then(data => {
 					if (data.ret != 0 && data.ret != 1) {
-						var tip = data.err_info ? typeof data.err_info == 'string' ? data
-							.err_info :
-							data
-							.err_info.join('<br/>') : '';
+						let cls_name = data.event_info?.cls_name
+						let event_name = data.event_info?.event_name
+						tip = data.err_info ? typeof data.err_info == 'string' ? data.err_info : data.err_info
+							.join('\n') : ''
 						if (data.ret == 801) {
-							if ($this.param.Only_Script_Error) {
+							if (this.param.Only_Script_Error) {
 								let pos = tip.indexOf("锛�);
 								if (pos > -1) tip = tip.substring(pos + 1);
 							}
-							uni.showModal({
-								title: $this.translateSys("tip"),
-								content: tip,
-								showCancel: false,
-								confirmText: $this.translateSys('close')
-							});
-						} else uni.showModal({
-							title: $this.translateSys("tip"),
-							content: tip + ',' + $this.translateSys('tip') + ':' + data
-								.ret,
-							showCancel: false,
-							confirmText: $this.translateSys('close')
-						});
+						}
+						if (cls_name && event_name) tip = `鎵ц鈥�{cls_name}鈥濇暟鎹被鐨勨�${event_name}鈥濊剼鏈椂杩斿洖閿欒锛�{tip}`
+						if (data.ret == 801) showInfo(tip)
+						else showError(`${tip}锛屾彁绀猴細${data.ret}`, this.translateSys('tip'))
+						this.saving = false
 						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('\n') : '';
 						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)) {
+						let time = data.info_time || 0
+						if (time)
+							showError(tip, this.translateSys('tip'))
+						else
+							showInfo(tip)
+						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')
-									});
-								}
+							} else if (typeof data.result ==
+								'string') {
+								showInfo(data.result)
 							}
 							try {
 								var actions = data.action || []
-								for (var i = 0; i < actions.length; i++) {
+								for (var i = 0; i < actions
+									.length; i++) {
 									var action = actions[i];
 									console.log(action)
 									var val = action.value;
-									var enviroment = JSON.stringify(enviroment);
+									var enviroment = JSON
+										.stringify(enviroment);
 
-									if (action.action_type == 'open_panel') {
+									if (action.action_type ==
+										'open_panel') {
 										var d = dialog({
 											title: '<i class="ace-icon fa fa-info-circle"></i> ' +
-												$this.translateSys("tip"),
-											content: $this.translateSys(
-													"quotation_mark_left") +
+												$this
+												.translateSys(
+													"tip"),
+											content: $this
+												.translateSys(
+													"quotation_mark_left"
+												) +
 												action
-												.action_type + $this.translateSys(
-													"quotation_mark_right") + $this
+												.action_type +
+												$this
+												.translateSys(
+													"quotation_mark_right"
+												) +
+												$this
 												.translate(
-													"tip_action_unprocessed")
+													"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 = {
@@ -2392,10 +2917,17 @@
 												.stringify(
 													param),
 											events: {
-												AddPer(data, param) {
+												AddPer(
+													data,
+													param
+												) {
 													// console.log(param);
-													console.log(data);
-													var callback_eventid = param
+													console
+														.log(
+															data
+														);
+													var callback_eventid =
+														param
 														.button_callback
 														.trim();
 													var info = {
@@ -2405,41 +2937,65 @@
 														rclsid: '',
 														robjid: '',
 														userlogin: '',
-														clsid: $this.param
+														clsid: $this
+															.param
 															.DataCls
 															.id,
 														objid: "",
-														attr: param.req,
+														attr: param
+															.req,
 														inputparameter: data,
 														dataJson: [],
 													}
-													$this.DataObjRunCustomEvent(info,
-														param
-														.data_attr);
+													$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"),
-											content: $this.translateSys(
-													"quotation_mark_left") +
+												$this
+												.translateSys(
+													"tip"),
+											content: $this
+												.translateSys(
+													"quotation_mark_left"
+												) +
 												action
-												.action_type + $this.translateSys(
-													"quotation_mark_right") + $this
+												.action_type +
+												$this
+												.translateSys(
+													"quotation_mark_right"
+												) +
+												$this
 												.translate(
-													"tip_action_unprocessed")
+													"tip_action_unprocessed"
+												)
 										});
 										d.show();
-									} else if (action.action_type == 'open_common_dlg') {
+									} else if (action
+										.action_type ==
+										'open_common_dlg') {
 
-										if (val.common_dlg_id == 'check_list') {
+										if (val.common_dlg_id ==
+											'check_list') {
 											$this.setData({
-												check_list: val.config
+												check_list: val
+													.config
 											})
-											console.log($this.check_list)
-											if (val.config.appear_style == 'sideslip') //鍒ゆ柇鏄惁鏄晶婊�+											console.log($this
+												.check_list)
+											if (val.config
+												.appear_style ==
+												'sideslip'
+											) //鍒ゆ柇鏄惁鏄晶婊� 												$this.setData({
 													popupType: "right"
 												})
@@ -2448,7 +3004,9 @@
 													popupType: "center"
 												})
 											// open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦�uni-popup 缁勪欢涓婄粦瀹�type灞炴�
-											$this.$refs.popup.open($this.popupType);
+											$this.$refs.popup.open(
+												$this.popupType
+											);
 											var popupParam = {
 												item: item,
 												button_callback: button_callback,
@@ -2459,23 +3017,38 @@
 												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';
-										if (action.value.select_range == '鍏ㄩ儴鐩稿叧')
+										if (action.value
+											.select_range == '鍏ㄩ儴鐩稿叧'
+										)
 											priRel = '0';
-										else if (action.value.select_range == '鎴戣礋璐g殑椤圭洰')
+										else if (action.value
+											.select_range ==
+											'鎴戣礋璐g殑椤圭洰')
 											priRel = '1';
-										else if (action.value.select_range == '鎴戝垱寤虹殑')
+										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 == '鎴戝弬鍔犵殑')
+											.select_range == '鎴戝弬鍔犵殑'
+										)
 											priRel = '3';
-										else if (action.value.select_range == '鎴戝叧娉ㄧ殑')
+										else if (action.value
+											.select_range == '鎴戝叧娉ㄧ殑'
+										)
 											priRel = '4';
-										else if (action.value.select_range == '鎴戜笅灞炵殑椤圭洰')
+										else if (action.value
+											.select_range ==
+											'鎴戜笅灞炵殑椤圭洰')
 											priRel = '5';
 										var param_ = {
 											item: item,
@@ -2483,70 +3056,100 @@
 											req: req
 										}
 										uni.navigateTo({
-											url: '../selPrj/index?relation=' + priRel +
+											url: '../selPrj/index?relation=' +
+												priRel +
 												'&param=' +
-												JSON.stringify(param_),
+												JSON
+												.stringify(
+													param_
+												),
 											events: {
-												AddPer(data, param) {
-													var attr = param.item.fieldId;
-													$this.head_styledef.form.model[
-															attr] =
-														data[0].ID +
-														';' + data[0].Name;
+												AddPer(
+													data,
+													param
+												) {
+													var attr =
+														param
+														.item
+														.fieldId;
+													$this
+														.head_styledef
+														.form
+														.model[
+															attr
+														] =
+														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
+													var callback_eventid =
+														param
 														.button_callback
 														.trim();
-													if (callback_eventid) {
+													if (
+														callback_eventid) {
 														var info = {
 															eventid: callback_eventid,
 															edtype: "2",
-															projectid: data[0].ID,
+															projectid: data[
+																	0
+																]
+																.ID,
 															rclsid: "",
 															robjid: "",
 															userlogin: "",
-															clsid: $this.$data
+															clsid: $this
+																.$data
 																.param
-																.DataCls.id,
+																.DataCls
+																.id,
 															objid: "",
-															attr: param.req,
+															attr: param
+																.req,
 															dataJson: [],
 														}
 
-														$this.DataObjRunCustomEvent(
-															info);
+														$this
+															.DataObjRunCustomEvent(
+																info
+															);
 													}
 												}
 											}
 										});
 									} 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')
-										});
+										showInfo($this
+											.translateSys(
+												"quotation_mark_left"
+											) +
+											action
+											.action_type +
+											$this
+											.translateSys(
+												"quotation_mark_right"
+											) +
+											$this
+											.translate(
+												"tip_action_unprocessed"
+											))
+
 									}
 								}
 
 							} catch (ex) {
-								let actionList = (data.action || []).map(a => a.action_type).join(';')
+								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)
+								showError(tip, this.translateSys('tip'))
 								return
 							}
 						}
@@ -2554,17 +3157,7 @@
 					}
 
 				}).catch(ex => {
-					// console.log(ex);
-					let exStr = JSON.stringify(ex)
-					if (exStr == "{}")
-						exStr = ex
-					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
-					uni.showModal({
-						title: $this.translateSys('tip') + "5.1",
-						content: exStr,
-						showCancel: false,
-						confirmText: $this.translateSys('close')
-					});
+					showError(ex, this.translateSys("error") + "5.1")
 				});
 			},
 
@@ -2595,16 +3188,19 @@
 			onBtnClick(btn, pageData) {
 				const $this = this
 				if (btn.Prompt) {
-					const sContent = btn.PromptContent || this.translate("confirm")
+					const sContent = btn.PromptContent || this.translate(
+						"confirm")
 
 					uni.showModal({
 						title: this.translateSys("tip"),
-						content: btn.PromptContent || this.translate("confirm"),
+						content: btn.PromptContent || this
+							.translate("confirm"),
 						cancelText: this.translateSys('ok'),
 						confirmText: this.translateSys('cancel'),
 						success: function(res) {
 							if (res.cancel) {
-								$this.onButtonClicked(btn, pageData, -1);
+								$this.onButtonClicked(btn,
+									pageData, -1);
 							}
 
 						},
@@ -2623,15 +3219,18 @@
 			onRowBtnClick(btn, pageData, index) {
 				const $this = this
 				if (btn.Prompt) {
-					const sContent = btn.PromptContent || this.translate("confirm")
+					const sContent = btn.PromptContent || this.translate(
+						"confirm")
 					uni.showModal({
 						title: this.translateSys("tip"),
-						content: btn.PromptContent || this.translate("confirm"),
+						content: btn.PromptContent || this
+							.translate("confirm"),
 						cancelText: this.translateSys('ok'),
 						confirmText: this.translateSys('cancel'),
 						success: function(res) {
 							if (res.cancel) {
-								$this.onButtonClicked(btn, pageData, index);
+								$this.onButtonClicked(btn,
+									pageData, index);
 							}
 
 						},
@@ -2671,30 +3270,31 @@
 						//鍒犻櫎鐮佺洏涓牱寮忛潰鏉� 						pageData.DefList.splice(index, 1);
 						if (btn.AfterProcess_Event.ID)
-							this.del(pageData, style, btn.AfterProcess_Event);
+							this.del(pageData, style, btn
+								.AfterProcess_Event);
 						this.$set(this.pageDetail, pageIndex, pageData)
 					}
 				} else if (btn.FunCode == "Modify") {
 					if (index > -1) {
 						const style = pageData.DefList[index];
 						if (btn.Edit_dlg.Model == "small") {
-							this.showSmallDialog(btn, style, enviroment, pageData);
+							this.showSmallDialog(btn, style, enviroment,
+								pageData);
 						} else if (btn.Edit_dlg.Model == "form") {
-							this.showFormDialog(btn, style, enviroment, pageData);
+							this.showFormDialog(btn, style, enviroment,
+								pageData);
 						} else {
-							uni.showModal({
-								title: this.translateSys("tip"),
-								content: this.translateSys("unrealized"),
-								showCancel: false,
-								confirmText: this.translateSys('close')
-							});
+							showInfo(this.translateSys(
+								"unrealized"))
+
 						}
 					}
 
 				} else if (btn.FunCode == "RelatedFunction") {
 					if (index > -1) {
 						const style = pageData.DefList[index];
-						this.relatedFunction(btn, style, enviroment, pageData);
+						this.relatedFunction(btn, style, enviroment,
+							pageData);
 					}
 				} else {
 					this.$Message.warning(this.$t("sys.unrealized"));
@@ -2733,79 +3333,131 @@
 								//mobox2鐨刾aram鏄痡son瀛楃涓� 								param = paramStr.replace(/\\/g, "");
 								//mobox3鐨刾aram鏄痓ase64瀛楃涓�-								if (!paramStr.includes('"')) param = Base64.decode(
-									paramStr);
+								if (!paramStr.includes('"')) param =
+									Base64.decode(
+										paramStr);
 							}
 							if (!param) {
-								uni.showModal({
-									title: this.translateSys("tip"),
-									content: this.translate(
-										'tip_no_app_param'),
-									showCancel: false,
-									confirmText: this.translateSys(
-										'close')
-								});
+								showInfo(this.translate(
+									'tip_no_app_param'
+								))
+
 								return;
 							}
 							const attrValues = []
 
 							style.form.items.forEach(item => {
-								if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�-									item.setting.colList.forEach(col => {
-										if (col != null) {
-											attrValues.push({
-												attr: col.fieldId,
-												value: col.value || ""
-											})
-										}
+								if (item.name ==
+									"Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�+									item.setting.colList
+										.forEach(col => {
+											if (col !=
+												null) {
+												attrValues
+													.push({
+														attr: col
+															.fieldId,
+														value: col
+															.value ||
+															""
+													})
+											}
 
-									});
+										});
 								} else
 									attrValues.push({
 										attr: item.fieldId,
-										value: item.value || ""
+										value: item
+											.value || ""
 									})
 							});
+							var eventChannelTemp
 							uni.navigateTo({
-								url: '../modal/' + name + '?param=' +
-									param + "&titlename=" + appName +
-									"&type=relatedFunction&paramValue=" + JSON.stringify(attrValues),
+								url: '../modal/' + name +
+									'?param=' +
+									param + "&titlename=" +
+									appName +
+									"&type=relatedFunction&paramValue=" +
+									JSON.stringify(attrValues),
+								events: {
+									get_pre_page_subtable_next_row: function(param) {
+										//	console.log("get_pre_page_subtable_next_row", eventChannelTemp)
+										const attrVals = $this.getRowNextRow(param)
+										console.log(attrVals)
+										if (eventChannelTemp) {
+											eventChannelTemp.emit('nextRow', {
+												data: attrVals
+											})
+										}
+									},
+									remove_pre_page_subtable_row: function(param) {
+										$this.viewActionRemoveRow(param)
+									}
+								},
+								success: function(res) {
+									// 閫氳繃eventChannel鍚戣鎵撳紑椤甸潰浼犻�鏁版嵁
+									eventChannelTemp = res.eventChannel
+								}
+
 							});
+
 						} else {
-							uni.showModal({
-								title: this.translateSys("error"),
-								content: this.translate(
-									"function_not_exist"),
-								showCancel: false,
-								confirmText: this.translateSys('close')
-							});
+							showInfo(this.translate("function_not_exist"))
+
 						}
 
 					} else {
-						uni.showModal({
-							title: this.translateSys("error"),
-							content: this.translate("cannot_related_function"),
-							showCancel: false,
-							confirmText: this.translateSys('close')
-						});
+						showInfo(this.translate("cannot_related_function"))
+
 
 					}
 				} catch (ex) {
-					console.log(ex);
-					let exStr = JSON.stringify(ex)
-					if (exStr == "{}")
-						exStr = ex
-					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
-					uni.showModal({
-						title: this.translateSys("error"),
-						content: tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys('error'))
 					return undefined
 				}
 			},
+			getRowNextRow(value) {
+				const pageIndex = this.pageDetail.findIndex((page, index2,
+					arr) => {
+					return value.page_name == page.Name;
+				})
+				if (pageIndex < 0)
+					return []
+				const rowId = value.cur_row?.id;
+				if (!rowId)
+					return []
+				const pageData = this.pageDetail[pageIndex]
+				const detailStyleDefList = pageData?.DefList || []
 
+				const curIndex = detailStyleDefList.findIndex(
+					(ele) => ele.form.objId == rowId
+				);
+				if (curIndex > -1) {
+					if (curIndex + 1 >= detailStyleDefList.length) {
+						const style = detailStyleDefList[curIndex + 1];
+						const attrVals = [];
+						style.form.items.forEach((item) => {
+							if (item.name == "Layout") {
+								item.setting.colList.forEach((col) => {
+									if (col) {
+										attrVals.push({
+											attr: col.fieldId,
+											value: col.value || ""
+										});
+									}
+								});
+							} else {
+								attrVals.push({
+									item: col.fieldId,
+									value: item.value || ""
+								});
+							}
+						});
+						return attrVals
+					}
+				}
+				return []
+			},
 			//淇敼灏忕獥鍙f暟鎹� 			showSmallDialog(btn, row, enviroment, pageData) {
 				var data = {
@@ -2820,8 +3472,10 @@
 				row.form.items.forEach(item => {
 					if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 						item.setting.colList.forEach(col => {
-							if (col != null) objAttr[col
-								.fieldId] = col.value;
+							if (col != null) objAttr[
+									col
+									.fieldId] = col
+								.value;
 						});
 					} else
 						objAttr[item.fieldId] = item.value;
@@ -2835,31 +3489,56 @@
 					events: {
 						// 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�鍒板綋鍓嶉〉闈㈢殑鏁版嵁
 						updateDataObj: function(formData) {
-							const pageIndex = $this.pageDetail.findIndex((
-								page) => {
-								return pageData.Name == page.Name;
-							})
+							const pageIndex = $this
+								.pageDetail.findIndex((
+									page) => {
+									return pageData
+										.Name == page
+										.Name;
+								})
 							if (pageIndex < 0)
 								return
-							Object.assign(row.form.model, formData);
-							row.form.items.forEach(async (ele, index) => {
-								if (ele.name != "Layout") {
-									let value = formData[ele.fieldId]
+							Object.assign(row.form.model,
+								formData);
+							row.form.items.forEach(async (
+								ele, index
+							) => {
+								if (ele.name !=
+									"Layout") {
+									let value =
+										formData[
+											ele
+											.fieldId
+										]
 									if (value)
-										ele.value = value
+										ele
+										.value =
+										value
 
 								} else {
-									ele.setting.colList.forEach(async (col) => {
-										if (col) {
-											let value = formData[col
-												.fieldId]
-											if (value)
-												col.value = value
-										}
-									});
+									ele.setting
+										.colList
+										.forEach(
+											async (
+												col) => {
+												if (
+													col) {
+													let value =
+														formData[
+															col
+															.fieldId
+														]
+													if (
+														value)
+														col
+														.value =
+														value
+												}
+											});
 								}
 							})
-							$this.$set($this.pageDetail, pageIndex, pageData)
+							$this.$set($this.pageDetail,
+								pageIndex, pageData)
 						},
 
 					}
@@ -2872,7 +3551,9 @@
 				row.form.items.forEach(item => {
 					if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 						item.setting.colList.forEach(col => {
-							if (col != null) objAttr[col.fieldId] = col.value;
+							if (col != null) objAttr[
+									col.fieldId] = col
+								.value;
 						});
 					} else
 						objAttr[item.fieldId] = item.value;
@@ -2886,31 +3567,55 @@
 					events: {
 						// 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�鍒板綋鍓嶉〉闈㈢殑鏁版嵁
 						updateDataObj: function(formData) {
-							const pageIndex = $this.pageDetail.findIndex((
-								page) => {
-								return pageData.Name == page.Name;
-							})
+							const pageIndex = $this
+								.pageDetail.findIndex((
+									page) => {
+									return pageData
+										.Name == page
+										.Name;
+								})
 							if (pageIndex < 0)
 								return
-							Object.assign(row.form.model, formData);
-							row.form.items.forEach(async (ele) => {
-								if (ele.name != "Layout") {
-									let value = formData[ele.fieldId]
+							Object.assign(row.form.model,
+								formData);
+							row.form.items.forEach(async (
+								ele) => {
+								if (ele.name !=
+									"Layout") {
+									let value =
+										formData[
+											ele
+											.fieldId
+										]
 									if (value)
-										ele.value = value
+										ele
+										.value =
+										value
 
 								} else {
-									ele.setting.colList.forEach(async (col) => {
-										if (col) {
-											let value = formData[col
-												.fieldId]
-											if (value)
-												col.value = value
-										}
-									});
+									ele.setting
+										.colList
+										.forEach(
+											async (
+												col) => {
+												if (
+													col) {
+													let value =
+														formData[
+															col
+															.fieldId
+														]
+													if (
+														value)
+														col
+														.value =
+														value
+												}
+											});
 								}
 							})
-							$this.$set($this.pageDetail, pageIndex, pageData)
+							$this.$set($this.pageDetail,
+								pageIndex, pageData)
 							console.log($this.pageDetail)
 
 						},
@@ -2953,7 +3658,8 @@
 				this.head_styledef.form.items.forEach(item => {
 					if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 						item.setting.colList.forEach(col => {
-							if (col != null) head_attr[col.fieldId] =
+							if (col != null) head_attr[
+									col.fieldId] =
 								col.value;
 						});
 					} else
@@ -2965,13 +3671,21 @@
 				pageData.DefList.forEach(style => {
 					var detail_attr = {};
 					style.form.items.forEach(item => {
-						if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�-							item.setting.colList.forEach(col => {
-								if (col != null)
-									detail_attr[col.fieldId] = col.value;
-							});
+						if (item.name ==
+							"Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮�+							item.setting.colList
+								.forEach(col => {
+									if (col !=
+										null)
+										detail_attr[
+											col
+											.fieldId
+										] = col
+										.value;
+								});
 						} else
-							detail_attr[item.fieldId] = item.value;
+							detail_attr[item.fieldId] =
+							item.value;
 					});
 
 					detail_attr['id'] = style.form.objId;
@@ -2986,21 +3700,28 @@
 				//鑾峰彇姝e湪鐮佺洏閲屾病鏈夋樉绀虹殑瀛楁
 				pageData.DefList.forEach(style => {
 					style.form.attrs.forEach(attr => {
-						for (var key in detailAttrList) {
-							if (style.form.objId == detailAttrList[key]
+						for (var key in
+								detailAttrList) {
+							if (style.form.objId ==
+								detailAttrList[key]
 								[
 									'id'
 								]) {
-								var keys = Object.keys(detailAttrList[
-									key]);
+								var keys = Object.keys(
+									detailAttrList[
+										key]);
 								var isflag = true;
 								keys.forEach((ele) => {
-									if (ele == attr.attr)
+									if (ele ==
+										attr
+										.attr)
 										isflag =
 										false;
 								});
 								if (isflag) {
-									detailAttrList[attr.attr] = attr
+									detailAttrList[attr
+											.attr] =
+										attr
 										.value;
 								}
 							}
@@ -3021,21 +3742,20 @@
 				detailAttrList.forEach(attr => {
 					jsonlist.push({
 						id: attr["id"] || "",
-						attrs: Object.keys(attr).map((a) => ({
+						attrs: Object.keys(attr).map((
+							a) => ({
 							attr: a,
-							value: attr[a] || "",
+							value: attr[
+								a] || "",
 						}))
 					});
 				});
-				if (jsonlist.length == 0) {
-					uni.showModal({
-						title: this.translateSys("tip"),
-						content: this.translate("tip_no_select_data"),
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
-					return;
-				}
+				// if (jsonlist.length == 0) {
+				// 	showInfo(this.translate(
+				// 		"tip_no_select_data"))
+
+				// 	return;
+				// }
 				const list = []
 				list.push({
 					page_name: pageData.Name,
@@ -3043,13 +3763,15 @@
 					ext_data: pageData.ExtData
 				})
 
-				$this.runCustomEvent(pageData, event, input_param, list);
+				$this.runCustomEvent(pageData, event, input_param,
+					list);
 				// jsonlist.forEach(async (json,key)=>{
 				// 	await $this.runCustomEvent(event,input_param,json,'1');
 				// });
 			},
 			//鎵ц纭畾鑴氭湰
-			async runCustomEvent(pageParam, event, input_param, json, type) {
+			async runCustomEvent(pageParam, event, input_param, json,
+				type) {
 				var $this = this;
 				var data_json = Base64.encode(
 					JSON.stringify(json)
@@ -3077,258 +3799,402 @@
 				runCustomEvent(dataInfo).then(result => {
 					console.log(result);
 					if (result.ret != 0 && result.ret != 1) {
-						var tip = result.err_info ? typeof result
-							.err_info == 'string' ? result.err_info :
-							result.err_info.join('<br/>') : '';
+						let cls_name = result.event_info?.cls_name
+						let event_name = result.event_info?.event_name
+						tip = result.err_info ? typeof result.err_info == 'string' ? result.err_info : result
+							.err_info
+							.join('\n') : ''
 						if (result.ret == 801) {
 							if (this.param.Only_Script_Error) {
 								let pos = tip.indexOf("锛�);
-								if (pos > -1) tip = tip.substring(pos +
-									1);
+								if (pos > -1) tip = tip.substring(pos + 1);
 							}
-							uni.showModal({
-								title: this.translateSys(
-									"tip"),
-								content: tip,
-								showCancel: false,
-								confirmText: this.translateSys(
-									'close')
-							});
-						} else uni.showModal({
-							title: this.translateSys('tip'),
-							content: tip + ',' + this
-								.translateSys('tip') + ':' +
-								result.ret,
-							showCancel: false,
-							confirmText: this.translateSys(
-								'close')
-						});
-						return false;
+						}
+						if (cls_name && event_name) tip = `鎵ц鈥�{cls_name}鈥濇暟鎹被鐨勨�${event_name}鈥濊剼鏈椂杩斿洖閿欒锛�{tip}`
+						if (result.ret == 801) showInfo(tip)
+						else showError(`${tip}锛屾彁绀猴細${result.ret}`, this.translateSys('tip'))
+						this.saving = false
+						return false
 					} else {
-						var tip = result.info ? typeof result.info ==
-							'string' ? result.info : result.info
-							.join('<br/>') : '';
+						var tip = result.info ? typeof result.info == 'string' ? result.info :
+							result.info.join('\n') : '';
 						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)) {
+						let time = result.info_time || 0
+						if (time)
+							showError(tip, this.translateSys('tip'))
+						else
+							showInfo(tip)
+						if ([0, 2, 3, 4, -1].includes(
+								result.result_type)) {
 							if (result.result_type == 2) {
 
-							} 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 (typeof result
+								.result == 'string') {
+								showInfo(result.result)
 							}
 							try {
-								let actionList = result.action || []
-								actionList.forEach(item => {
-									if (item.action_type ==
-										"insert_subtable_page_row") { //鐮佺洏涓�-										var value = item.value;
-										//鍔犺浇宸茬粡鐮佺洏鏁版嵁
-										$this.viewAceionRow(value);
-										//娓呯┖鏉$爜鍐呭
-										$this.head_styledef.form.items.forEach((item,
-											index) => {
-											if (item.fieldId !=
-												"S_CNTR_CODE") {
-												item.value = '';
-												item.oldvalue = '';
-												$this.head_styledef.form.model[
-													item
-													.fieldId] = '';
-											}
-										});
+								let actionList = result
+									.action || []
+								actionList.forEach(
+									item => {
+										if (item
+											.action_type ==
+											"insert_subtable_page_row"
+										) { //鐮佺洏涓�+											var value =
+												item
+												.value;
+											//鍔犺浇宸茬粡鐮佺洏鏁版嵁
+											$this
+												.viewAceionRow(
+													value
+												);
+											//娓呯┖鏉$爜鍐呭
+											$this
+												.head_styledef
+												.form
+												.items
+												.forEach(
+													(item,
+														index
+													) => {
+														if (item
+															.fieldId !=
+															"S_CNTR_CODE"
+														) {
+															item.value =
+																'';
+															item.oldvalue =
+																'';
+															$this
+																.head_styledef
+																.form
+																.model[
+																	item
+																	.fieldId
+																] =
+																'';
+														}
+													});
+											showInfo($this
+												.translate(
+													'execute_event_success'
+												))
 
-										uni.showModal({
-											title: $this.translateSys("tip"),
-											content: $this.translate(
-												'execute_event_success'),
-											showCancel: false,
-											confirmText: $this.translateSys(
-												'close')
-										});
-									} else if (item.action_type ==
-										"set_subtable_page_content"
-									) { //宸茬爜鐩�-										$this.param.Show_Welcom_Page = false;
-										var value = item.value;
-										const pageData = $this.pageDetail.find((
-											page) => {
-											return value.page_name == page
-												.Name;
-										});
-										if (value.clear_confirm != false && value
-											.clear == true &&
-											pageData && pageData.DefList.length > 0
-										) { //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鐮佺洏鏄惁鏈夋暟鎹�-											uni.showModal({
-												title: $this.translateSys(
-													'tip'),
-												content: $this.translate(
-														"are_you_sure_clear_first"
-													) +
-													$this.translateSys(
-														"quotation_mark_left"
-													) +
-													value.page_name +
-													$this.translateSys(
-														"quotation_mark_right"
-													) +
-													$this.translate(
-														"are_you_sure_clear_last"
-													),
-												cancelText: $this.translateSys(
-													'ok'),
-												confirmText: $this
-													.translateSys('cancel'),
-												success: function(res) {
-													if (res.cancel) {
-														if (pageData)
-															pageData
-															.DefList = [];
+										} else if (item
+											.action_type ==
+											"set_subtable_page_content"
+										) { //宸茬爜鐩�+											$this.param
+												.Show_Welcom_Page =
+												false;
+											var value =
+												item
+												.value;
+											const
+												pageData =
+												$this
+												.pageDetail
+												.find((
+													page
+												) => {
+													return value
+														.page_name ==
+														page
+														.Name;
+												});
+											if (value
+												.clear_confirm !=
+												false &&
+												value
+												.clear ==
+												true &&
+												pageData &&
+												pageData
+												.DefList
+												.length >
+												0
+											) { //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鐮佺洏鏄惁鏈夋暟鎹�+												uni.showModal({
+													title: $this
+														.translateSys(
+															'tip'
+														),
+													content: $this
+														.translate(
+															"are_you_sure_clear_first"
+														) +
 														$this
-															.viewAceionContent(
-																value);
-													} else if (res
-														.confirm) {
-														if (pageData)
-															pageData
-															.DefList = [];
+														.translateSys(
+															"quotation_mark_left"
+														) +
+														value
+														.page_name +
 														$this
-															.viewAceionContent(
-																value);
+														.translateSys(
+															"quotation_mark_right"
+														) +
+														$this
+														.translate(
+															"are_you_sure_clear_last"
+														),
+													cancelText: $this
+														.translateSys(
+															'ok'
+														),
+													confirmText: $this
+														.translateSys(
+															'cancel'
+														),
+													success: function(
+														res
+													) {
+														if (res
+															.cancel
+														) {
+															if (
+																pageData)
+																pageData
+																.DefList = [];
+															$this
+																.viewAceionContent(
+																	value
+																);
+														} else if (
+															res
+															.confirm
+														) {
+															if (
+																pageData)
+																pageData
+																.DefList = [];
+															$this
+																.viewAceionContent(
+																	value
+																);
+														}
 													}
-												}
-											});
-										} else {
-											if (pageData)
-												pageData.DefList = [];
-											$this.viewAceionContent(value);
-										}
-									} else if (item.action_type ==
-										"select_subtable_page") {
-										var value = item.value;
-										const pageIndex = $this.pageDetail.findIndex((
-											page) => {
-											return value.page_name == page
-												.Name;
-										});
-										if (pageIndex > -1) {
-											$this.setData({
-												current: pageIndex
-											})
-										}
-									} else if (item.action_type ==
-										"remove_subtable_page_row") { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�-										let value = item.value;
-										$this.viewActionRemoveRow(value)
-									} else if (item.action_type ==
-										"set_subtable_page_row") {
-										$this.viewActionSetRow(item.value)
-									} else if (item.action_type ==
-										"set_subtable_page_ext_data") {
-										let value = item.value;
-										const pageData = $this.pageDetail.find((
-											page) => {
-											return value.page_name == page
-												.Name;
-										});
-										if (pageData) {
-											pageData.ExtData = value.ext_data
-										}
-
-									} else if (item.action_type ==
-										"clear_subpage_rows") {
-										var value = item.value;
-										const pageIndex = $this.pageDetail.findIndex((
-											page) => {
-											return value.page_name == page
-												.Name;
-										});
-										if (pageIndex > -1) {
-											const pageData = $this.pageDetail[
-												pageIndex]
-											pageData.DefList = []
-											pageData.ExtData = {}
-
-											$this.$set(this.pageDetail, pageIndex,
-												pageData)
-										}
-									} else 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
+												});
+											} else {
+												if (
+													pageData)
+													pageData
+													.DefList = [];
+												$this
+													.viewAceionContent(
+														value
+													);
+											}
+										} else if (item
+											.action_type ==
+											"select_subtable_page"
+										) {
+											var value =
+												item
+												.value;
+											const
+												pageIndex =
+												$this
+												.pageDetail
+												.findIndex(
+													(
+														page
+													) => {
+														return value
+															.page_name ==
+															page
+															.Name;
+													});
+											if (pageIndex >
+												-1) {
+												$this
+													.setData({
+														current: pageIndex
+													})
+											}
+										} else if (item
+											.action_type ==
+											"remove_subtable_page_row"
+										) { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+											let value =
+												item
+												.value;
+											$this
+												.viewActionRemoveRow(
+													value
+												)
+										} else if (item
+											.action_type ==
+											"set_subtable_page_row"
+										) {
+											$this
+												.viewActionSetRow(
+													item
 													.value
-											})
-										});
-									} else if (item.action_type ==
-										"set_dlg_attr") {
-										// value = {"attr":"xxx", "value":"xxx"}
-										var data = item.value;
-										$this.setFormValues(data)
-									} else if (item.action_type == 'set_dlg_attr_show') {
-										var data = item.value;
-										$this.setFormItemVisible(data)
-									}
+												)
+										} else if (item
+											.action_type ==
+											"set_subtable_page_ext_data"
+										) {
+											let value =
+												item
+												.value;
+											const
+												pageData =
+												$this
+												.pageDetail
+												.find((
+													page
+												) => {
+													return value
+														.page_name ==
+														page
+														.Name;
+												});
+											if (
+												pageData) {
+												pageData
+													.ExtData =
+													value
+													.ext_data
+											}
 
-								});
+										} else if (item
+											.action_type ==
+											"clear_subpage_rows"
+										) {
+											var value =
+												item
+												.value;
+											const
+												pageIndex =
+												$this
+												.pageDetail
+												.findIndex(
+													(
+														page
+													) => {
+														return value
+															.page_name ==
+															page
+															.Name;
+													});
+											if (pageIndex >
+												-1) {
+												const
+													pageData =
+													$this
+													.pageDetail[
+														pageIndex
+													]
+												pageData
+													.DefList = []
+												pageData
+													.ExtData = {}
 
-								if ($this.After_OK_Event?.ID && $this.After_OK_Event.ID != event
+												$this
+													.$set(
+														this
+														.pageDetail,
+														pageIndex,
+														pageData
+													)
+											}
+										} else 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 (item
+											.action_type ==
+											'set_dlg_attr_show'
+										) {
+											var data =
+												item
+												.value;
+											$this
+												.setFormItemVisible(
+													data
+												)
+										} else if (item.action_type == 'get_pre_page_subtable_next_row') {
+											var data = item.value;
+											const eventChannel = this.getOpenerEventChannel();
+											eventChannel.emit('get_pre_page_subtable_next_row', data);
+										} else if (item.action_type == 'remove_pre_page_subtable_row') {
+											var data = item.value;
+											const eventChannel = this.getOpenerEventChannel();
+											eventChannel.emit('remove_pre_page_subtable_row', data);
+										} else if (item.action_type == "goback_to_pre_page") {
+											//杩斿洖涓婁竴椤�+											uni.navigateBack({
+												delta: 1, //杩斿洖灞傛暟锛�鍒欎笂涓婇〉
+											});
+										}
+									});
+
+								if ($this.After_OK_Event
+									?.ID && $this
+									.After_OK_Event.ID !=
+									event
 									.ID) { //鍒ゆ柇褰撳墠浜嬩欢鏄惁鏄‘瀹氬悗浜嬩欢
-									$this.sava(pageParam, $this.After_OK_Event); //鎵ц纭畾鍚庝簨浠�+									$this.sava(pageParam,
+										$this
+										.After_OK_Event
+									); //鎵ц纭畾鍚庝簨浠� 
 								}
 							} catch (ex) {
-								let actionList = (result.action || []).map(a => a.action_type).join(';')
+								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)
+								showError(tip, this.translateSys('tip'))
 								return
 							}
 						}
 					}
 
 				}).catch(ex => {
-					console.log(ex);
-					let exStr = JSON.stringify(ex)
-					if (exStr == "{}")
-						exStr = ex
-					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
-					uni.showModal({
-						title: this.translateSys("error") + "8.1",
-						content: this.translate("execute_after_ok_event_failed") +
-							this.translateSys("comma") + tip,
-						showCancel: false,
-						confirmText: this.translateSys('close')
-					});
+					showError(ex, this.translateSys("error") + "8.1")
+
+
 				});
 			},
 
@@ -3338,11 +4204,13 @@
 				});
 			},
 			translate(t) {
-				if (typeof this.$t == "function") return this.$t(`page.${t}`)
+				if (typeof this.$t == "function") return this.$t(
+					`page.${t}`)
 				else return t;
 			},
 			translateSys(t) {
-				if (typeof this.$t == "function") return this.$t(`sys.${t}`)
+				if (typeof this.$t == "function") return this.$t(
+					`sys.${t}`)
 				else return t;
 			},
 		},

--
Gitblit v1.9.1