From bcd40d20e4938069384573f6dfbbe8c7fe978925 Mon Sep 17 00:00:00 2001
From: cyy <cuiqian2004@163.com>
Date: 星期六, 03 八月 2024 13:19:32 +0800
Subject: [PATCH] dictdict

---
 pages/modal/5601.vue | 1031 +++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 678 insertions(+), 353 deletions(-)

diff --git a/pages/modal/5601.vue b/pages/modal/5601.vue
index 08b41f4..8684971 100644
--- a/pages/modal/5601.vue
+++ b/pages/modal/5601.vue
@@ -1,7 +1,6 @@
 <template>
 	<view class="uni-page-modal-5601">
 		<!-- 琛ㄥご鏍峰紡 -->
-
 		<uni-forms ref="baseForm" label-align="right">
 			<view v-for="(item,index) in head_styledef.form.items" :key="index" class="v-head-style">
 				<!-- 鏅�甯冨眬 -->
@@ -17,7 +16,7 @@
 							:style="{'padding-left':item.setting.prefix?0 : '8rpx','right':item.setting.suffix?0 : '8rpx'}"
 							:type="item.name=='Input'?'text':'number'" v-model="item.value" :disabled="item.disabled"
 							:placeholder="item.placeholder" :focus="focusFieldId == item.fieldId" @focus="ontap(item)"
-							@keyup.enter="onEnterChange(item)" @blur="onEnterChange(item)" />
+							@click="onClick(item)" @keyup.enter="onEnterChange(item)" @blur="onEnterChange(item)" />
 						<text v-if="item.setting.suffix" class="uni-icon" :class="[item.setting.suffix]"
 							@click="onEnterChange(item)"></text>
 					</view>
@@ -38,7 +37,7 @@
 									:style="{'padding-left':col.setting.prefix?0 : '8px','right':col.setting.suffix?0 : '8px'}"
 									:type="col.name=='Input'?'text':'number'" v-model="col.value"
 									:disabled="col.disabled" :placeholder="col.placeholder"
-									:focus="focusFieldId == col.fieldId" @focus="ontap(col)"
+									:focus="focusFieldId == col.fieldId" @focus="ontap(col)" @click="onClick(col)"
 									@keyup.enter="onEnterChange(col)" @blur="onEnterChange(col)" />
 								<text v-if="col.setting.suffix" class="uni-icon" :class="[col.setting.suffix]"
 									@click="onEnterChange(col)"></text>
@@ -186,10 +185,12 @@
 			}); //璁剧疆椤堕儴鏍囬 
 			this.title = options.titlename;
 			this.param = JSON.parse(options.param);
+
+
 			//鑾峰彇涓绘暟鎹被ID
 			this.ClsID = this.param.master_cls?.id;
 			if (this.ClsID) {
-				this.loadData()
+				this.loadData(options.paramValue)
 			} else {
 				uni.showModal({
 					title: this.translateSys("error"),
@@ -222,10 +223,34 @@
 					});
 				});
 			},
-			async loadData() {
+			async loadData(paramValue) {
 
 				//鑾峰彇鏁版嵁绫荤殑鑷畾涔夎〃鍗曞弬鏁� 				await this.Head_UIStyleGetInfo(this.ClsID, this.param.Input_UI_Style.ID);
+				//浼犲叆鍙傛暟鍊�+				if (paramValue) {
+					const attrs = paramValue.attrs || [];
+					(this.$data.head_styledef?.form?.items || []).forEach(async (ele, index) => {
+						if (ele.name != "Layout") {
+							attrs.forEach(async (ele2, index2) => {
+								if (ele.fieldId == ele2.name) {
+									ele.value = ele2.value;
+								}
+							});
+						} else {
+							ele.setting.colList.forEach(async (col) => {
+								if (col) {
+									attrs.forEach(async (ele2,
+										index2) => {
+										if (col.fieldId == ele2.name) {
+											col.value = ele2.value;
+										}
+									});
+								}
+							});
+						}
+					})
+				}
 				//鍔犺浇鍒濆鐣岄潰
 				if (this.$data.param.Show_Welcom_Page) {
 					this.$data.param.Welcome_Page.Img = this.$data.param.Welcome_Page.Img.replace(/ /g, '+');
@@ -246,6 +271,7 @@
 				this.setData({
 					pageDetail: pageList
 				})
+
 				console.log(this.pageDetail);
 			},
 			changeSwiper(evt) {
@@ -273,7 +299,7 @@
 					class_id: class_id,
 					ui_style_id: style_id,
 				};
-				this.$store.dispatch('UIStyleGetInfo', dataInfo).then(ret => {
+				this.$store.dispatch('UIStyleGetInfo', dataInfo).then(async (ret) => {
 					// console.log(ret);
 					if (ret.err_code == 0) {
 						var styledef = "";
@@ -281,43 +307,52 @@
 							//mobox2鐨剆tyle_def鏄痡son瀛楃涓� 							styledef = ret.result.style_def.replace(/\\/g, "");
 							//mobox3鐨剆tyle_def鏄痓ase64瀛楃涓�-							if (!ret.result.style_def.includes('"')) styledef = Base64.decode(ret.result
+							if (!ret.result.style_def.includes('"')) styledef = Base64.decode(
+								ret.result
 								.style_def);
 						}
 						const styledefHead = styledef ? JSON.parse(styledef) : {};
 
-						styledefHead.form.items.forEach(async (ele) => {
+						for (let i in styledefHead.form.items) {
+							const ele = styledefHead.form.items[i]
 							if (ele.name != "Layout") {
 								if (ele?.useDict) {
 									//鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀
-									await this.DictGetInfo(ele.bind.dict, styledefHead.form.model,
+									await this.DictGetInfo(ele.bind.dict,
+										styledefHead.form.model,
 										ele);
 								}
 								if ($this.focusFieldId == "") {
-									if (ele.name == 'Input' || ele.name == 'InputNumber') {
+									if (ele.name == 'Input' || ele.name ==
+										'InputNumber') {
 										$this.setData({
 											focusFieldId: ele.fieldId
 										})
 									}
 								}
 							} else {
-								ele.setting.colList.forEach(async (col) => {
+								for (let j in ele.setting.colList) {
+									const col = ele.setting.colList[j]
 									if (col?.useDict) {
 										//鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀
-										await this.DictGetInfo(col.bind.dict,
-											styledefHead.form.model, col);
+										await this.DictGetInfo(col.bind
+											.dict,
+											styledefHead.form
+											.model, col);
 									}
 									if ($this.focusFieldId == "") {
-										if (col.name == 'Input' || col.name ==
+										if (col.name == 'Input' || col
+											.name ==
 											'InputNumber') {
 											$this.setData({
-												focusFieldId: col.fieldId
+												focusFieldId: col
+													.fieldId
 											})
 										}
 									}
-								});
+								}
 							}
-						});
+						}
 						this.setData({
 							head_styledef: styledefHead
 						})
@@ -346,7 +381,7 @@
 					class_id: class_id,
 					ui_style_id: style_id,
 				};
-				this.$store.dispatch('UIStyleGetInfo', dataInfo).then(ret => {
+				this.$store.dispatch('UIStyleGetInfo', dataInfo).then(async (ret) => {
 					// console.log(ret);
 					if (ret.err_code == 0) {
 						var styledef = "";
@@ -354,28 +389,35 @@
 							//mobox2鐨剆tyle_def鏄痡son瀛楃涓� 							styledef = ret.result.style_def.replace(/\\/g, "");
 							//mobox3鐨剆tyle_def鏄痓ase64瀛楃涓�-							if (!ret.result.style_def.includes('"')) styledef = Base64.decode(ret.result
-								.style_def);
+							if (!ret.result.style_def.includes('"')) styledef = Base64
+								.decode(ret.result
+									.style_def);
 						}
 
-						const detailstyledef = ret.result.style_def ? JSON.parse(styledef) : {};
+						const detailstyledef = ret.result.style_def ? JSON.parse(
+							styledef) : {};
 						detailstyledef.SelBut_Checked = true;
-						detailstyledef.form.items.forEach(async (ele, index) => {
+						for (let index in styledefHead.form.items) {
+							const ele = styledefHead.form.items[index]
 
 							if (ele.name != "Layout") {
 								if (ele.useDict == true) { //鍒ゆ柇useDict鏄惁浣跨敤瀛楀吀
-									await this.DictGetInfo(ele.bind.dict, detailstyledef.form
+									await this.DictGetInfo(ele.bind.dict,
+										detailstyledef.form
 										.model, ele);
 								}
 							} else {
-								ele.setting.colList.forEach(async (col) => {
+								for (let j in ele.setting.colList) {
+									const col = ele.setting.colList[j]
 									if (col?.useDict == true) {
-										await this.DictGetInfo(col.bind.dict,
-											detailstyledef.form.model, col);
+										await this.DictGetInfo(col
+											.bind.dict,
+											detailstyledef.form
+											.model, col);
 									}
-								})
+								}
 							}
-						});
+						}
 						console.log("Detail_UIstyleGetInfo", detailstyledef);
 						return detailstyledef
 					} else {
@@ -407,34 +449,28 @@
 					dict_id: dict.id,
 					dict_name: dict.name
 				};
-				// console.log(dataInfo);
-				this.$store.dispatch('DictGetInfo', dataInfo).then(async (success) => {
-					console.log(success);
-					if (success.err_code == 0) {
-						var list = [];
-						var itemName = '';
-						success.result.dict_item_list.forEach((item) => {
-							if (item.is_default == '1')
-								itemName = item.name;
-							list.push({
-								text: item.value,
-								value: item.name,
-							});
+				try {
+					const res = await this.getDictInfo(dataInfo)
+					var list = [];
+					var itemName = '';
+					res.result.dict_item_list.forEach((item) => {
+						if (item.is_default == '1')
+							itemName = item.name;
+						list.push({
+							text: item.value,
+							value: item.name,
 						});
-						if (itemName) {
-							formItem.value = itemName;
-							formModel[formItem.fieldId] = itemName;
-						}
-						formItem.dict = list;
-					} else {
-						uni.showModal({
-							title: this.translateSys("error") + "3.1",
-							content: success.err_msg,
-							showCancel: false,
-							confirmText: this.translateSys("cancel")
-						});
+					});
+					//鏈夐粯璁ゅ�锛屾樉绀洪粯璁ゅ�
+					if (itemName) {
+						formItem.value = itemName;
+						formModel[formItem.fieldId] = itemName;
 					}
-				}).catch(ex => {
+					formItem.dict = list;
+
+					// $this.head_styledef.form.items[index].dictitem=success.result;
+					// this.$store.commit("classAttrList", $this.$data.classAttrList);
+				} catch (ex) {
 					// console.log(ex);
 					uni.showModal({
 						title: this.translateSys("error") + "3",
@@ -442,9 +478,42 @@
 						showCancel: false,
 						confirmText: this.translateSys("cancel")
 					});
-				});
+				}
+
+			},
+			getDictInfo(info) { //Mobox3寰楀埌寰楀埌瀛楀吀淇℃伅瀛楀吀椤瑰垪琛�+				const loginInfo = this.$store.getters.loginid
+				const mobxoSApi = this.$store.getters.getMobxoSApi
+				return new Promise((resolve, reject) => {
+					uni.request({
+						url: mobxoSApi + 'api/dict/GetInfo2?sessionid=' + loginInfo.result.session_id,
+						data: info,
+						method: 'POST',
+						dataType: "json",
+						success: (_res) => {
+							// console.log(_res);
+							const ret = _res.data
+							if (ret.err_code == 0) {
+								resolve(ret);
+							} else {
+								reject({
+									"errMsg": ret.err_msg
+								});
+							}
+						},
+						fail: (err) => {
+							// console.log(err);
+							reject(err);
+						}
+					})
+
+				})
+
 			},
 
+			onClick(item) {
+				this.focusFieldId = item.fieldId
+			},
 			ontap(item) { //鎵爜鍔熻兘
 				// var $ele = e;
 				//console.log(e.target)
@@ -458,8 +527,10 @@
 						var attr = item.fieldId;
 						this.head_styledef.form.model[attr] = item.value;
 						var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�-						var onSuffixClickCallbackEvent = item.bind.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠�-						var onSuffixClickEvent = item.bind.onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋�+						var onSuffixClickCallbackEvent = item.bind
+							.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠�+						var onSuffixClickEvent = item.bind
+							.onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋� 						var isflag = false;
 
 						if (onChangeEvent.id) { //鍐呭鍙樺寲鍚庝簨浠�@@ -472,7 +543,8 @@
 								const ele = $this.head_styledef.form.items[i]
 
 								if (ele.name != "Layout") {
-									if (ele.name == 'Input' || ele.name == 'InputNumber') {
+									if (ele.name == 'Input' || ele.name ==
+										'InputNumber') {
 										if (attr == ele.fieldId) {
 											findd = true
 										} else {
@@ -488,32 +560,39 @@
 									}
 								} else {
 									if (findd) {
-										let curIndex = ele.setting.colList.findIndex((col, index2, arr) => {
-											return (col.name == 'Input' || col.name == 'InputNumber');
+										let curIndex = ele.setting.colList.findIndex((
+											col, index2, arr) => {
+											return (col.name == 'Input' || col
+												.name == 'InputNumber');
 										})
 										if (curIndex > -1) {
 											$this.setData({
-												focusFieldId: ele.setting.colList[curIndex]
+												focusFieldId: ele.setting
+													.colList[curIndex]
 													.fieldId
 											})
 											break
 										}
 
 									} else {
-										let curIndex = ele.setting.colList.findIndex((col, index2, arr) => {
+										let curIndex = ele.setting.colList.findIndex((
+											col, index2, arr) => {
 											return attr == col.fieldId;
 										})
 										if (curIndex > -1) {
 											findd = true
-											let curIndex2 = ele.setting.colList.findIndex((col, index2, arr) => {
-												return (col.name == 'Input' || col.name ==
-														'InputNumber') &&
-													index2 >
-													curIndex;
-											})
+											let curIndex2 = ele.setting.colList
+												.findIndex((col, index2, arr) => {
+													return (col.name == 'Input' ||
+															col.name ==
+															'InputNumber') &&
+														index2 >
+														curIndex;
+												})
 											if (curIndex2 > -1) {
 												$this.setData({
-													focusFieldId: ele.setting.colList[curIndex]
+													focusFieldId: ele.setting
+														.colList[curIndex]
 														.fieldId
 												})
 												break
@@ -528,6 +607,7 @@
 					}
 				})
 			},
+
 			onEnterChange(item) { //鍥炶溅锛岀偣鍑绘寜閽紝鍙栨秷鑺傜偣浜嬩欢
 				console.log(item);
 				if (item.oldvalue != item.value) {
@@ -535,7 +615,8 @@
 					var attr = item.fieldId;
 					this.head_styledef.form.model[attr] = item.value;
 					var onChangeEvent = item.bind.onChangeEvent; //鍐呭鍙樺寲鍚庝簨浠�-					var onSuffixClickCallbackEvent = item.bind.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠�+					var onSuffixClickCallbackEvent = item.bind
+						.onSuffixClickCallbackEvent; //鍚庡浘鏍囩偣鍑讳簨浠� 					var onSuffixClickEvent = item.bind.onSuffixClickEvent; //鍚庡浘鏍囩偣鍑诲洖璋� 					var isflag = false;
 
@@ -552,7 +633,8 @@
 					style.form.items.forEach(item => {
 						if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 							item.setting.colList.forEach(cols => {
-								if (cols != null) detail_attr[cols.fieldId] = cols.value;
+								if (cols != null) detail_attr[cols
+									.fieldId] = cols.value;
 							});
 						} else
 							detail_attr[item.fieldId] = item.value;
@@ -570,11 +652,14 @@
 				pageData.DefList.forEach(style => {
 					style.form.attrs.forEach(attr => {
 						for (var key in detailAttrList) {
-							if (style.form.objId == detailAttrList[key]['id']) {
+							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;
@@ -607,7 +692,8 @@
 						this.head_styledef.form.items.forEach(item => {
 							if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 								item.setting.colList.forEach(cols => {
-									if (cols != null) head_attr[cols.fieldId] = cols.value;
+									if (cols != null) head_attr[cols
+										.fieldId] = cols.value;
 								});
 							} else
 								head_attr[item.fieldId] = item.value;
@@ -627,7 +713,8 @@
 						this.pageDetail.forEach((page) => {
 							jsonList.push({
 								page_name: page.Name,
-								item_list: $this.getDetailAttrList(page.DefList, page
+								item_list: $this.getDetailAttrList(page
+									.DefList, page
 									.Select_Button),
 								ext_data: page.ExtData || {}
 							})
@@ -659,230 +746,363 @@
 							if (ret.err_code == 0) {
 								var result = ret.result;
 								if (result.ret != 0) {
-									var tip = result.err_info ? typeof result.err_info == 'string' ? result
-										.err_info : result.err_info.join('<br/>') : '';
-									if (result.ret == 801) uni.showModal({
+									var tip = result.err_info ? typeof result
+										.err_info == 'string' ? result
+										.err_info : result.err_info.join('<br/>') :
+										'';
+									if (result.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(
+												"cancel")
+										});
+									} else uni.showModal({
 										title: this.translateSys('tip'),
-										content: tip,
-										showCancel: false,
-										confirmText: this.translateSys("cancel")
-									});
-									else uni.showModal({
-										title: this.translateSys('tip'),
-										content: tip + ',' + this.translateSys('tip') + ':' + result
+										content: tip + ',' + this
+											.translateSys('tip') + ':' +
+											result
 											.ret,
 										showCancel: false,
-										confirmText: this.translateSys("cancel")
+										confirmText: this.translateSys(
+											"cancel")
 									});
 									return false;
 								} else {
-									var tip = result.info ? typeof result.info == 'string' ? result.info :
+									var tip = result.info ? typeof result.info ==
+										'string' ? result.info :
 										result.info.join('<br/>') : '';
 									if (tip) uni.showModal({
 										title: this.translateSys('tip'),
 										content: tip,
 										showCancel: false,
-										confirmText: this.translateSys("cancel")
+										confirmText: this.translateSys(
+											"cancel")
 									});
 
 									if (result.result_type == 0 && result.action) {
 										result.action.forEach(item => {
-											if (item.action_type == "insert_subtable_page_row") { //鐮佺洏涓�-												$this.$data.param.Show_Welcom_Page = false;
+											if (item.action_type ==
+												"insert_subtable_page_row"
+											) { //鐮佺洏涓�+												$this.$data.param
+													.Show_Welcom_Page =
+													false;
 												var value = item.value;
 												$this.viewAceionRow(value);
 											} else if (item.action_type ==
-												"set_subtable_page_content") { //宸茬爜鐩�-												$this.$data.param.Show_Welcom_Page = false;
+												"set_subtable_page_content"
+											) { //宸茬爜鐩�+												$this.$data.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 ==
+												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
+													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(
-																"sys.quotation_mark_right") +
-															this.translate(
-																"are_you_sure_clear_last"),
-														success: function(res) {
-															if (res.confirm) {
-																if (pageData)
-																	pageData.DefList = [];
-																$this.viewAceionContent(
-																	value);
-															} else if (res.cancel) {
-																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(
+																"sys.quotation_mark_right"
+															) +
+															this
+															.translate(
+																"are_you_sure_clear_last"
+															),
+														success: function(
+															res
+														) {
+															if (res
+																.confirm
+															) {
+																if (
+																	pageData)
+																	pageData
+																	.DefList = [];
+																$this
+																	.viewAceionContent(
+																		value
+																	);
+															} else if (
+																res
+																.cancel
+															) {
+																if (
+																	pageData)
+																	pageData
+																	.DefList = [];
+																$this
+																	.viewAceionContent(
+																		value
+																	);
 															}
 														}
 													});
 												} else {
 													if (pageData)
-														pageData.DefList = [];
-													$this.viewAceionContent(value);
+														pageData
+														.DefList = [];
+													$this
+														.viewAceionContent(
+															value);
 												}
 											} else if (item.action_type ==
-												"select_subtable_page_row") {
+												"select_subtable_page_row"
+											) {
 												// value = {"page_name":"鐮佺洏涓�, "row":{"id":"xx"}}
 												var value = item.value;
-												const pageData = $this.pageDetail.find((page) => {
-													return  value.page_name == page.Name;
-												});
-												if (pageData?.DefList) {
-													pageData.DefList.forEach(ele => {
-														$this.activelist[index].active = false;
-														if (ele.form.objId == value.row.id) {
-															ele.SelBut_Checked = true;
-															$this.active_id = ele.form
-																.htmlobjId;
-															//鑷姩婊氬姩鍒版寚瀹氬厓绱�-															uni.createSelectorQuery()
-																.select("#tabpanel" + value
-																	.page_name) //瀵瑰簲澶栧眰鑺傜偣
-																.boundingClientRect((
-																	container) => {
-																	uni.createSelectorQuery()
-																		.select(
-																			"#dvpanel" +
-																			ele.form
-																			.htmlobjId
-																		) //鐩爣鑺傜偣
-																		.boundingClientRect(
-																			(
-																				target
-																			) => {
-																				uni.pageScrollTo({
-																					scrollTop: target
-																						.top -
-																						container
-																						.top, //婊氬姩鍒板疄闄呰窛绂绘槸鍏冪礌璺濈椤堕儴鐨勮窛绂诲噺鍘绘渶澶栧眰鐩掑瓙鐨勬粴鍔ㄨ窛绂�-																				});
-																			})
-																		.exec();
-																})
-																.exec();
-														}
+												const pageData = $this
+													.pageDetail.find((
+														page) => {
+														return value
+															.page_name ==
+															page.Name;
 													});
+												if (pageData?.DefList) {
+													pageData.DefList
+														.forEach(ele => {
+															$this
+																.activelist[
+																	index
+																]
+																.active =
+																false;
+															if (ele
+																.form
+																.objId ==
+																value
+																.row.id
+															) {
+																ele.SelBut_Checked =
+																	true;
+																$this
+																	.active_id =
+																	ele
+																	.form
+																	.htmlobjId;
+																//鑷姩婊氬姩鍒版寚瀹氬厓绱�+																uni.createSelectorQuery()
+																	.select(
+																		"#tabpanel" +
+																		value
+																		.page_name
+																	) //瀵瑰簲澶栧眰鑺傜偣
+																	.boundingClientRect(
+																		(
+																			container
+																		) => {
+																			uni.createSelectorQuery()
+																				.select(
+																					"#dvpanel" +
+																					ele
+																					.form
+																					.htmlobjId
+																				) //鐩爣鑺傜偣
+																				.boundingClientRect(
+																					(
+																						target
+																					) => {
+																						uni.pageScrollTo({
+																							scrollTop: target
+																								.top -
+																								container
+																								.top, //婊氬姩鍒板疄闄呰窛绂绘槸鍏冪礌璺濈椤堕儴鐨勮窛绂诲噺鍘绘渶澶栧眰鐩掑瓙鐨勬粴鍔ㄨ窛绂�+																						});
+																					}
+																				)
+																				.exec();
+																		}
+																	)
+																	.exec();
+															}
+														});
 												}
 											} else if (item.action_type ==
-												"remove_subtable_page_row") { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹�+												"remove_subtable_page_row"
+											) { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹� 												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
 													?.DefList
 												) //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞//娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹� 												{
-													value.row.forEach(row => {
-														pageData
-															.DefList
-															.forEach((ele, index) => {
-																if (ele.form.objId == row
-																	.id) {
-																	pageData
-																		.DefList
-																		.splice(index, 1);
-																}
-															});
-													});
+													value.row.forEach(
+														row => {
+															pageData
+																.DefList
+																.forEach(
+																	(ele,
+																		index
+																	) => {
+																		if (ele
+																			.form
+																			.objId ==
+																			row
+																			.id
+																		) {
+																			pageData
+																				.DefList
+																				.splice(
+																					index,
+																					1
+																				);
+																		}
+																	});
+														});
 												}
 
 
 
-											} else if (item.action_type == "set_subtable_page_row") {
-												$this.viewActionSetRow(item.value)
+											} else if (item.action_type ==
+												"set_subtable_page_row") {
+												$this.viewActionSetRow(item
+													.value)
 
 											} else if (item.action_type ==
-												"set_subtable_page_ext_data") {
+												"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 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.DefList = []
 													pageData.ExtData = {}
 												}
 
 											} else if (item.action_type ==
-												"set_dlg_current_edit_attr") {
+												"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.$data.head_styledef.form.items.forEach(async (
-													ele, index) => {
-													if (ele.name != "Layout") {
-														data.forEach(
-															async (ele2,
-																index
-															) => {
-																if (ele
-																	.fieldId ==
-																	ele2
-																	.attr
-																) {
-																	ele.value =
-																		ele2
-																		.value;
-																}
-															});
-													} else {
-														ele.setting.colList.forEach(async (
-															col) => {
-															if (col) {
+												$this.$data.head_styledef
+													.form.items.forEach(
+														async (
+															ele, index
+														) => {
+															if (ele
+																.name !=
+																"Layout"
+															) {
 																data.forEach(
 																	async (ele2,
 																		index
 																	) => {
-																		if (col
+																		if (ele
 																			.fieldId ==
 																			ele2
 																			.attr
 																		) {
-																			col.value =
+																			ele.value =
 																				ele2
 																				.value;
 																		}
 																	});
+															} else {
+																ele.setting
+																	.colList
+																	.forEach(
+																		async (
+																			col
+																		) => {
+																			if (
+																				col) {
+																				data.forEach(
+																					async (ele2,
+																						index
+																					) => {
+																						if (col
+																							.fieldId ==
+																							ele2
+																							.attr
+																						) {
+																							col.value =
+																								ele2
+																								.value;
+																						}
+																					});
 
+																			}
+
+																		})
 															}
-
 														})
-													}
-												})
 											}
 
 										});
@@ -890,10 +1110,12 @@
 
 										if (result.info) {
 											uni.showModal({
-												title: this.translateSys("error") + "4.3",
+												title: this.translateSys(
+													"error") + "4.3",
 												content: result.info,
 												showCancel: false,
-												confirmText: this.translateSys("cancel")
+												confirmText: this
+													.translateSys("cancel")
 											});
 										}
 									}
@@ -901,10 +1123,12 @@
 								}
 							} else {
 								uni.showModal({
-									title: this.translateSys("error") + "4",
+									title: this.translateSys("error") +
+										"4",
 									content: ret.err_msg,
 									showCancel: false,
-									confirmText: this.translateSys("cancel")
+									confirmText: this.translateSys(
+										"cancel")
 								});
 							}
 						}).catch(ex => {
@@ -921,9 +1145,12 @@
 					var tip = typeof ex == "string" ? ex : ex.message;
 					uni.showModal({
 						title: this.translateSys("error") + "4.2",
-						content: this.translate('execute_after_change_event_failed') + this.translateSys(
+						content: this.translate(
+								'execute_after_change_event_failed') + this
+							.translateSys(
 								"comma") +
-							this.translate('reason') + this.translateSys("colon") + tip,
+							this.translate('reason') + this.translateSys("colon") +
+							tip,
 						showCancel: false,
 						confirmText: this.translateSys("cancel")
 					});
@@ -964,38 +1191,48 @@
 						if (ele.form.objId == rowData.id) {
 							rowData.attrs.forEach(attr => {
 								ele.form.items.forEach(ele2 => {
-									if (ele2.name != 'Layout') {
-										if (ele2.fieldId == attr
+									if (ele2.name !=
+										'Layout') {
+										if (ele2.fieldId ==
+											attr
 											.attr) {
-											ele2.value = $this
+											ele2.value =
+												$this
 												.operationNumber(
-													ele2.value,
-													attr.value,
-													attr.operation)
+													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
-															)
+										ele2.setting
+											.colList
+											.forEach(
+												col => {
+													if (
+														col) {
+														if (col
+															.fieldId ==
+															attr
+															.attr
+														) {
+															col.value =
+																$this
+																.operationNumber(
+																	col
+																	.value,
+																	attr
+																	.value,
+																	attr
+																	.operation
+																)
+														}
 													}
-												}
-											})
+												})
 									}
 								});
 							});
@@ -1021,23 +1258,28 @@
 
 					var detailStyle = JSON.parse(styleStr);
 					detailStyle.form.objId = row.id;
-					detailStyle.form.htmlobjId = row.id ? row.id.replace(/-/g, '').replace(
-						'{', '').replace('}',
-						'') : 'null';
+					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 =
+								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;
-									}
-								});
+								ele.setting.colList.forEach(
+									col => {
+										if (col) {
+											if (col.fieldId ==
+												attr
+												.attr) col
+												.value = attr
+												.value;
+										}
+									});
 							}
 						});
 					});
@@ -1066,23 +1308,28 @@
 					var detailStyle = JSON.parse(styleStr);
 					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';
 					detailStyle.form.attrs = cont.attrs;
 					cont.attrs.forEach(attr => {
 						detailStyle.form.items.forEach(ele => {
 							if (ele.name != 'Layout') {
-								if (ele.fieldId == attr.attr) ele.value =
+								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;
-									}
-								});
+								ele.setting.colList.forEach(
+									col => {
+										if (col) {
+											if (col.fieldId ==
+												attr
+												.attr) col
+												.value = attr
+												.value;
+										}
+									});
 							}
 						});
 					});
@@ -1090,35 +1337,42 @@
 					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
-															)
+									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
-																.value =
-																attr
-																.value;
-														}
-													});
-										}
-									});
+															) {
+																if (col
+																	.fieldId ==
+																	attr
+																	.attr
+																)
+																	col
+																	.value =
+																	attr
+																	.value;
+															}
+														});
+											}
+										});
 								});
 								isflag = false;
 							}
@@ -1162,7 +1416,8 @@
 				this.$data.head_styledef.form.items.forEach(item => {
 					if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 						item.setting.colList.forEach(cols => {
-							if (cols != null) head_attr[cols.fieldId] = cols.value;
+							if (cols != null) head_attr[cols.fieldId] =
+								cols.value;
 						});
 					} else
 						head_attr[item.fieldId] = item.value;
@@ -1174,7 +1429,8 @@
 				style.form.items.forEach(item => {
 					if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 						item.setting.colList.forEach(cols => {
-							if (cols != null) detail_attr[cols.fieldId] = cols
+							if (cols != null) detail_attr[cols
+									.fieldId] = cols
 								.value;
 						});
 					} else
@@ -1271,7 +1527,8 @@
 						content: this.translate(
 								"page.tip_no_data_first") +
 							this.translateSys(
-								"quotation_mark_left") + pageData.Name + this.translateSys(
+								"quotation_mark_left") + pageData.Name + this
+							.translateSys(
 								"sys.quotation_mark_right") +
 							this.translate(
 								"page.tip_no_data_last"),
@@ -1285,7 +1542,8 @@
 				this.$data.head_styledef.form.items.forEach(item => {
 					if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 						item.setting.colList.forEach(cols => {
-							if (cols != null) head_attr[cols.fieldId] = cols.value;
+							if (cols != null) head_attr[cols.fieldId] =
+								cols.value;
 						});
 					} else
 						head_attr[item.fieldId] = item.value;
@@ -1298,7 +1556,8 @@
 					style.form.items.forEach(item => {
 						if (item.name == "Layout") { //鍒ゆ柇鏄惁鏄爡鏍忔牸寮� 							item.setting.colList.forEach(cols => {
-								if (cols != null) detail_attr[cols
+								if (cols != null) detail_attr[
+									cols
 									.fieldId] = cols.value;
 							});
 						} else
@@ -1318,18 +1577,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 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;
 								}
 							}
 						}
@@ -1411,17 +1673,28 @@
 							var tip = result.err_info ? typeof result
 								.err_info == 'string' ? result.err_info :
 								result.err_info.join('<br/>') : '';
-							if (result.ret == 801) uni.showModal({
+							if (result.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(
+										"cancel")
+								});
+							} else uni.showModal({
 								title: this.translateSys('tip'),
-								content: tip,
+								content: tip + ',' + this
+									.translateSys('tip') + ':' +
+									result.ret,
 								showCancel: false,
-								confirmText: this.translateSys("cancel")
-							});
-							else uni.showModal({
-								title: this.translateSys('tip'),
-								content: tip + ',' + this.translateSys('tip') + ':' + result.ret,
-								showCancel: false,
-								confirmText: this.translateSys("cancel")
+								confirmText: this.translateSys(
+									"cancel")
 							});
 							return false;
 						} else {
@@ -1432,7 +1705,8 @@
 								title: this.translateSys('tip'),
 								content: tip,
 								showCancel: false,
-								confirmText: this.translateSys("cancel")
+								confirmText: this.translateSys(
+									"cancel")
 							});
 							if (result.result_type == 0) {
 								if (result.action) {
@@ -1444,10 +1718,13 @@
 										) { //鐮佺洏涓� 											var value = item.value;
 											//鍔犺浇宸茬粡鐮佺洏鏁版嵁
-											$this.viewAceionRow(value, );
+											$this.viewAceionRow(
+												value, );
 											//娓呯┖鏉$爜鍐呭
-											$this.$data.head_styledef
-												.form.items.forEach((
+											$this.$data
+												.head_styledef
+												.form.items
+												.forEach((
 													item,
 													index) => {
 													if (item
@@ -1458,7 +1735,8 @@
 															'';
 														item.oldvalue =
 															'';
-														$this.$data
+														$this
+															.$data
 															.head_styledef
 															.form
 															.model[
@@ -1470,26 +1748,41 @@
 												});
 
 											uni.showModal({
-												title: this.translateSys("tip"),
-												content: this.translate(
-													'execute_event_success'),
+												title: this
+													.translateSys(
+														"tip"
+													),
+												content: this
+													.translate(
+														'execute_event_success'
+													),
 												showCancel: false,
-												confirmText: this.translateSys("cancel")
+												confirmText: this
+													.translateSys(
+														"cancel"
+													)
 											});
-										} else if (item.action_type ==
+										} else if (item
+											.action_type ==
 											"remove_subtable_page_row"
 										) { //娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹� 											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
 												?.DefList
 											) { //鍒ゆ柇杩斿洖鐨刟ction鐨刾age_name鏄惁鏄緟鍒嗘嫞
 												//娓呴櫎闈㈡澘涓寚瀹歩d鐨勬暟鎹� 												value.row.forEach(
 													row => {
-														pageData.DefList
+														pageData
+															.DefList
 															.forEach(
 																(
 																	ele,
@@ -1501,40 +1794,64 @@
 																		row
 																		.id
 																	) {
-																		pageData.DefList.splice(
-																			index, 1);
+																		pageData
+																			.DefList
+																			.splice(
+																				index,
+																				1
+																			);
 																	}
-																});
+																}
+															);
 													});
 											}
-										} else if (item.action_type ==
-											"set_subtable_page_row") {
-											$this.viewActionSetRow(item
+										} else if (item
+											.action_type ==
+											"set_subtable_page_row"
+										) {
+											$this.viewActionSetRow(
+												item
 												.value)
 
-										} else if (item.action_type ==
+										} 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
+												pageData.ExtData =
+													value
 													.ext_data
 											}
 
-										} else if (item.action_type ==
+										} else if (item
+											.action_type ==
 											"clear_subpage_rows") {
 											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.DefList = []
-												pageData.ExtData = {}
+												pageData
+													.DefList = []
+												pageData
+													.ExtData = {}
 											}
-										} else if (item.action_type ==
+										} else if (item
+											.action_type ==
 											"set_dlg_current_edit_attr"
 										) {
 											if ($this
@@ -1550,15 +1867,17 @@
 												})
 											}
 											$this.$nextTick(() => {
-												$this.setData({
-													focusFieldId: item
-														.value
-												})
+												$this
+													.setData({
+														focusFieldId: item
+															.value
+													})
 											});
 										}
 									});
 								} else {
-									if ($this.$data.After_OK_Event.ID != event
+									if ($this.$data.After_OK_Event.ID !=
+										event
 										.ID) { //鍒ゆ柇褰撳墠浜嬩欢鏄惁鏄‘瀹氬悗浜嬩欢
 
 										$this.sava(pageParam, $this.$data
@@ -1570,27 +1889,33 @@
 
 								if (result.info) {
 									uni.showModal({
-										title: this.translateSys("tip"),
+										title: this.translateSys(
+											"tip"),
 										content: result.info,
 										showCancel: false,
-										confirmText: this.translateSys("cancel")
+										confirmText: this
+											.translateSys("cancel")
 									});
 								}
 							}
 						}
 					} else {
 						uni.showModal({
-							title: this.translateSys("error") + "8",
+							title: this.translateSys("error") +
+								"8",
 							content: res.err_msg,
 							showCancel: false,
-							confirmText: this.translateSys("cancel")
+							confirmText: this.translateSys(
+								"cancel")
 						});
 					}
 				}).catch(ex => {
 					var tip = typeof ex == "string" ? ex : ex.errMsg;
 					uni.showModal({
 						title: this.translateSys("error") + "8.1",
-						content: this.translate("execute_after_ok_event_failed") + this.translateSys(
+						content: this.translate(
+								"execute_after_ok_event_failed") +
+							this.translateSys(
 								"comma") +
 							tip,
 						showCancel: false,

--
Gitblit v1.9.1