From 3ddb7987b031a152309c58dabd949e23d3419a72 Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期五, 01 八月 2025 15:33:50 +0800
Subject: [PATCH] test

---
 pages/modal/3202.vue |  331 +++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 238 insertions(+), 93 deletions(-)

diff --git a/pages/modal/3202.vue b/pages/modal/3202.vue
index 3da57fa..1925510 100644
--- a/pages/modal/3202.vue
+++ b/pages/modal/3202.vue
@@ -1,5 +1,5 @@
 <template>
-	<view class="uni-page-modal-3202">
+	<view class="uni-page-modal-3202" :class="largeMode?'large-mode':''">
 		<view class="v-content">
 			<!-- 琛ㄥご鏍峰紡 -->
 			<OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" @on-focus="ontap"
@@ -51,6 +51,7 @@
 		},
 		data() {
 			return {
+				largeMode: getApp().globalData.largeMode || false,
 				title: this.translateSys('add2'),
 				isFilter: true,
 				param: {},
@@ -77,7 +78,7 @@
 				old: {
 					scrollTop: 0
 				},
-				isScroll: true,
+				isScroll: false,
 				//鑾峰彇鏁版嵁绫荤殑HTML椤甸潰
 				click_item_view: false,
 				refreshing: false
@@ -527,6 +528,7 @@
 							.info == 'string' ? result
 							.info :
 							result.info.join('<br/>') : '';
+						tip = tip || result.err_info
 						if (tip) uni.showModal({
 							title: this.translateSys(
 								"tip"),
@@ -535,38 +537,52 @@
 							confirmText: this.translateSys(
 								'close')
 						});
+						if ([0, 2, 3, 4, -1].includes(result.result_type)) {
+							if (result.result_type == 2) {
 
-						if (result.result_type == 0 && result.action) {
-							result.action.forEach(item => {
-								if (item.action_type == "jump_pda_page") {
-									// value = {"attr":"xxx", "value":"xxx"}
-									var data = item.value;
-									uni.navigateTo({
-										url: `../modal/3202_view?param=${JSON.stringify($this.param)}&titlename=${data.page?.page_name || ""}&dataObj=${JSON.stringify(data)}`,
-										events: {
-											// 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�鍒板綋鍓嶉〉闈㈢殑鏁版嵁
-											ExitViewEvent: function(data) {
-												console.log(data);
-												this.runCustomEvent(data);
-											}
-										}
+							} else if (typeof result.result == 'string') {
+								if (result.result) {
+									uni.showModal({
+										title: this.translateSys('tip'),
+										content: result.result,
+										showCancel: false,
+										confirmText: this.translateSys('close')
 									});
 								}
-							})
-						} else {
-							if (result.info) {
+							}
+							try {
+								var actionList = result.action || []
+								actionList.forEach(item => {
+									if (item.action_type == "jump_pda_page") {
+										// value = {"attr":"xxx", "value":"xxx"}
+										var data = item.value;
+										uni.navigateTo({
+											url: `../modal/3202_view?param=${JSON.stringify($this.param)}&titlename=${data.page?.page_name || ""}&dataObj=${JSON.stringify(data)}`,
+											events: {
+												// 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�鍒板綋鍓嶉〉闈㈢殑鏁版嵁
+												ExitViewEvent: function(data) {
+													console.log(data);
+													this.runCustomEvent(data);
+												}
+											}
+										});
+									}
+								})
+							} catch (ex) {
+								let actionList = (result.action || []).map(a => a.action_type).join(';')
+								let tip = typeof ex == 'string' ? ex : ex.message
+								tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}`
 								uni.showModal({
-									title: this
-										.translateSys(
-											"tip"),
-									content: result.info,
+									title: this.translateSys('tip'),
+									content: tip,
 									showCancel: false,
-									confirmText: this
-										.translateSys(
-											'close')
+									confirmText: this.translateSys('close')
 								});
+								console.log(ex)
+								return
 							}
 						}
+
 					}
 
 
@@ -589,8 +605,8 @@
 				// var $ele = e;
 				//console.log(e.target)
 				getApp().onScan((result) => {
-					console.log(result.decodedata);
-					item.value = result.decodedata;
+					console.log(result);
+					item.value = result;
 					uni.hideKeyboard();
 					var $this = this;
 					console.log(item);
@@ -730,6 +746,7 @@
 									.info == 'string' ? result
 									.info :
 									result.info.join('<br/>') : '';
+								tip = tip || result.err_info
 								if (tip) uni.showModal({
 									title: this.translateSys(
 										"tip"),
@@ -738,35 +755,75 @@
 									confirmText: this.translateSys(
 										'close')
 								});
+								if ([0, 2, 3, 4, -1].includes(result.result_type)) {
+									if (result.result_type == 2) {
 
-								if (result.result_type == 0 && result.action) {
-									result.action.forEach(item => {
-										if (item.action_type ==
-											"set_query_condition") {
-											var value = item.value;
-											$this.wheres = value.condition;
-											$this.orderby = value.order ? value.order :
-												""
-											$this.pageindex = 1;
-											$this.query_id = "";
-											$this.detail1StyleDefList = [];
-											$this.loadDataGetList();
+									} else if (typeof result.result == 'string') {
+										if (result.result) {
+											uni.showModal({
+												title: this.translateSys('tip'),
+												content: result.result,
+												showCancel: false,
+												confirmText: this.translateSys('close')
+											});
 										}
-									})
-								} else {
-									if (result.info) {
+									}
+									try {
+										var actionlist = result.action || []
+										for (var j = 0; j < actionlist.length; j++) {
+											var action = actionlist[j];
+											var action_type = action.action_type;
+											var value = action.value;
+											if (action_type == "set_query_condition") {
+												$this.wheres = value.condition;
+												$this.orderby = value.order ? value.order : ""
+												$this.pageindex = 1;
+												$this.query_id = "";
+												$this.detail1StyleDefList = [];
+												$this.loadDataGetList();
+											} else if (action_type == "set_subtable_page_content") {
+												if (value.clear_confirm != false && value.clear == true &&
+													$this.detail1StyleDefList.length > 0
+												) { //鍒ゆ柇鏄惁娓呯┖椤电鍐呭,姝e湪鐮佺洏鏄惁鏈夋暟鎹�+													uni.showModal({
+														title: this.translateSys('tip'),
+														content: this.translate(
+															"are_you_sure_clear_data"),
+														cancelText: $this.translateSys('ok'),
+														confirmText: $this.translateSys('cancel'),
+														success: function(res) {
+															if (res.cancel) {
+																$this.detail1StyleDefList = [];
+																$this.viewAceionContent(value);
+															} else if (res.confirm) {
+																$this.detail1StyleDefList = [];
+																$this.viewAceionContent(value);
+															}
+														}
+													});
+												} else {
+													$this.detail1StyleDefList = [];
+													$this.viewAceionContent(value);
+												}
+											}
+										}
+
+									} catch (ex) {
+										let actionList = (result.action || []).map(a => a.action_type).join(
+											';')
+										let tip = typeof ex == 'string' ? ex : ex.message
+										tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}`
 										uni.showModal({
-											title: this
-												.translateSys(
-													"tip"),
-											content: result.info,
+											title: this.translateSys('tip'),
+											content: tip,
 											showCancel: false,
-											confirmText: this
-												.translateSys(
-													'close')
+											confirmText: this.translateSys('close')
 										});
+										console.log(ex)
+										return
 									}
 								}
+
 							}
 
 
@@ -888,6 +945,79 @@
 					head_styledef: head_styledef
 				})
 			},
+			//鍔犺浇宸茬爜鐩樺唴瀹�+			viewAceionContent(data) {
+				var $this = this;
+				if (JSON.stringify(data.content) == '{}') {
+					return;
+				}
+				var styleStr = JSON.stringify($this.detail1_styledef);
+				var detailStyle = JSON.parse(styleStr);
+
+				data.content.forEach(cont => {
+					var detailStyle = JSON.parse(styleStr);
+					if (detailStyle.form) {
+						detailStyle.SelBut_Checked = data.checkbox ?? true;
+
+						detailStyle.form.objId = cont.id;
+						detailStyle.form.htmlobjId = cont.id ? cont.id.replace(/-/g,
+								'')
+							.replace('{', '').replace('}',
+								'') : 'null';
+						detailStyle.form.attrs = cont.attrs;
+						cont.attrs.forEach(attr => {
+							detailStyle.form.items.forEach(ele => {
+								if (ele.name != 'Layout') {
+									if (ele.fieldId == attr.attr)
+										ele.value = attr.value;
+								} else if (ele.name == 'Layout') {
+									ele.setting.colList.forEach(
+										col => {
+											if (col) {
+												if (col.fieldId ==
+													attr.attr)
+													col.value = attr.value;
+											}
+										});
+								}
+							});
+						});
+						//濡傛灉 clear = false 鍒欎笉闇�娓呴櫎锛屾牴鎹甶d鍒ゆ柇鏄惁瀛樺湪锛屼笉瀛樺湪鎻掑叆鍒伴〉闈紝濡傛灉瀛樺湪鐢ㄦ柊鐨勫睘鎬ц鐩�+						if (data.clear == false) {
+							var isflag = true;
+							$this.detail1StyleDefList.forEach((style, index) => {
+								if (style.form.objId == detailStyle.form.objId) {
+									cont.attrs.forEach(attr => {
+										style.form.items.forEach(ele => {
+											if (ele.name != 'Layout') {
+												if (ele.fieldId == attr.attr)
+													ele.value = attr.value;
+											} else if (ele.name == 'Layout') {
+												ele.setting.colList.forEach(
+													col => {
+														if (col) {
+															if (col.fieldId ==
+																attr
+																.attr)
+																col.value =
+																attr.value;
+														}
+													});
+											}
+										});
+									});
+									isflag = false;
+								}
+							});
+							if (isflag) $this.detail1StyleDefList.push(detailStyle); //寰呭垎鎷�+						} else {
+							$this.detail1StyleDefList.push(detailStyle); //寰呭垎鎷�+						}
+					}
+				});
+
+
+			},
 			//鐐逛腑琛ㄥ崟
 			onPanelClick(value) { //鐐瑰嚮闈㈡澘楂樹寒鏄剧ず
 				// console.log(value);
@@ -942,6 +1072,7 @@
 								.info == 'string' ? result
 								.info : result
 								.info.join('<br/>') : '';
+							tip = tip || result.err_info
 							if (tip) uni.showModal({
 								title: this.translateSys(
 									"tip"),
@@ -950,57 +1081,71 @@
 								confirmText: this.translateSys(
 									'close')
 							});
+							if ([0, 2, 3, 4, -1].includes(result.result_type)) {
+								if (result.result_type == 2) {
 
-							if (result.result_type == 0 && result.action) {
-								result.action.forEach(item => {
-									if (item.action_type ==
-										"goback_to_pre_page") { //杩斿洖涓婁竴椤�-										var value = item.value;
-										uni.navigateBack({
-											delta: 1, //杩斿洖灞傛暟锛�鍒欎笂涓婇〉
-										});
-									} else {
+								} else if (typeof result.result == 'string') {
+									if (result.result) {
 										uni.showModal({
-											title: this
-												.translateSys(
-													"tip"
-												),
-											content: this
-												.translateSys(
-													"quotation_mark_left"
-												) +
-												item
-												.action_type +
-												this
-												.translateSys(
-													"quotation_mark_right"
-												) +
-												this
-												.translate(
-													"tip_action_unprocessed"
-												),
+											title: this.translateSys('tip'),
+											content: result.result,
 											showCancel: false,
-											confirmText: this
-												.translateSys(
-													'close'
-												)
+											confirmText: this.translateSys('close')
 										});
 									}
-								});
-							} else {
-								if (result.info) {
-									uni.showModal({
-										title: this
-											.translateSys(
-												"tip"),
-										content: result.info,
-										showCancel: false,
-										confirmText: this
-											.translateSys(
-												'close')
+								}
+								try {
+									var actionList = result.action || []
+									actionList.forEach(item => {
+										if (item.action_type ==
+											"goback_to_pre_page") { //杩斿洖涓婁竴椤�+											var value = item.value;
+											uni.navigateBack({
+												delta: 1, //杩斿洖灞傛暟锛�鍒欎笂涓婇〉
+											});
+										} else {
+											uni.showModal({
+												title: this
+													.translateSys(
+														"tip"
+													),
+												content: this
+													.translateSys(
+														"quotation_mark_left"
+													) +
+													item
+													.action_type +
+													this
+													.translateSys(
+														"quotation_mark_right"
+													) +
+													this
+													.translate(
+														"tip_action_unprocessed"
+													),
+												showCancel: false,
+												confirmText: this
+													.translateSys(
+														'close'
+													)
+											});
+										}
 									});
+								} catch (ex) {
+									let actionList = (result.action || []).map(a => a.action_type).join(';')
+									let tip = typeof ex == 'string' ? ex : ex.message
+									tip = `鎵ц鑴氭湰杩斿洖鐨�{actionList}鏃跺嚭鐜板紓甯革紝璇锋鏌ヨ剼鏈繑鍥炵殑鏁版嵁鏍煎紡鏄惁姝g‘銆�{tip}`
+									uni.showModal({
+										title: this.translateSys('tip'),
+										content: tip,
+										showCancel: false,
+										confirmText: this.translateSys('close')
+									});
+									console.log(ex)
+									return
 								}
 							}
+
 						}
 					}).catch(ex => {
 						// console.log(ex);

--
Gitblit v1.9.1