From e01994d84332869ebad232af477a4ded68560c55 Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期二, 20 八月 2024 13:27:16 +0800
Subject: [PATCH] test

---
 pages/modal/3037_2.vue |  177 ++++++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 122 insertions(+), 55 deletions(-)

diff --git a/pages/modal/3037_2.vue b/pages/modal/3037_2.vue
index ed1de33..5ef4a3f 100644
--- a/pages/modal/3037_2.vue
+++ b/pages/modal/3037_2.vue
@@ -288,15 +288,64 @@
 			}); //璁剧疆椤堕儴鏍囬 
 			this.$data.title = options.titlename;
 			this.$data.param = JSON.parse(options.param);
-			console.log(this.$data.param);
-			//鑾峰彇鏁版嵁绫荤殑鑷畾涔夎〃鍗曞弬鏁�-			this.Head_UIStyleGetInfo(this.param.Master_Cls?.ID, this.param.Master_Cls?.UI_Style?.ID);
-			this.Detail1_UIstyleGetInfo(this.param.Sub_Cls?.ID, this.$data.param.Sub_Cls?.UI_Style?.ID);
+			this.loadData(options.paramValue)
 
 			//椤甸潰鍒濆鍖栬幏鍙栫劍鐐� 			// this.focusMateria=true; 
 		},
 		methods: {
+			setData: function(obj) {
+				let that = this;
+				let keys = [];
+				let val, data;
+
+				Object.keys(obj).forEach(function(key) {
+					keys = key.split(".");
+					val = obj[key];
+					data = that.$data;
+					keys.forEach(function(key2, index) {
+						if (index + 1 == keys.length) {
+							that.$set(data, key2, val);
+						} else {
+							if (!data[key2]) {
+								that.$set(data, key2, {});
+							}
+						}
+						data = data[key2];
+					});
+				});
+			},
+			async loadData(paramValue) {
+				console.log(this.$data.param);
+				//鑾峰彇鏁版嵁绫荤殑鑷畾涔夎〃鍗曞弬鏁�+				await this.Head_UIStyleGetInfo(this.param.Master_Cls?.ID, this.param.Master_Cls?.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;
+										}
+									});
+								}
+							});
+						}
+					})
+				}
+
+				await this.Detail1_UIstyleGetInfo(this.param.Sub_Cls?.ID, this.$data.param.Sub_Cls?.UI_Style?.ID);
+			},
 			async Head_UIStyleGetInfo(class_id, style_id) { //鑾峰彇鑷畾涔夎〃鍗曟牱寮� 				var $this = this;
 				var dataInfo = {
@@ -410,48 +459,38 @@
 					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 success = await this.getDictInfo(dataInfo)
+					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,
 						});
+					});
 
-						if (type == 'mast') { //鏈夐粯璁ゅ�锛屾樉绀洪粯璁ゅ�
-							if (itemName) {
-								$this.head_styledef.form.items[index].value = itemName;
-								var attr = $this.head_styledef.form.items[index].fieldId;
-								$this.head_styledef.form.model[attr] = itemName;
-							}
-							$this.head_styledef.form.items[index].dict = list;
-							// console.log($this.$data.detail1StyleDefList);
-						} else {
-							if (itemName) {
-								$this.detail1_styledef.form.items[index].value = itemName;
-								var attr = $this.detail1_styledef.form.items[index].fieldId;
-								$this.detail1_styledef.form.model[attr] = itemName;
-							}
-							$this.detail1_styledef.form.items[index].dict = list;
-							console.log($this.$data.detail1_styledef);
+					if (type == 'mast') { //鏈夐粯璁ゅ�锛屾樉绀洪粯璁ゅ�
+						if (itemName) {
+							$this.head_styledef.form.items[index].value = itemName;
+							var attr = $this.head_styledef.form.items[index].fieldId;
+							$this.head_styledef.form.model[attr] = itemName;
 						}
-
+						$this.head_styledef.form.items[index].dict = list;
+						// console.log($this.$data.detail1StyleDefList);
 					} else {
-						uni.showModal({
-							title: this.translateSys("error") + "1.2",
-							content: success.err_msg,
-							showCancel: false,
-							confirmText: this.translateSys("cancel")
-						});
+						if (itemName) {
+							$this.detail1_styledef.form.items[index].value = itemName;
+							var attr = $this.detail1_styledef.form.items[index].fieldId;
+							$this.detail1_styledef.form.model[attr] = itemName;
+						}
+						$this.detail1_styledef.form.items[index].dict = list;
+						console.log($this.$data.detail1_styledef);
 					}
-				}).catch(ex => {
+
+				} catch (ex) {
 					// console.log(ex);
 					uni.showModal({
 						title: this.translateSys("error") + "1.3",
@@ -459,8 +498,39 @@
 						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);
+						}
+					})
+
+				})
+
+			},
+
 			async loadInitEvent(eventid, type) {
 				var $this = this;
 				var styledef = type == 'head' ? this.head_styledef : this.detail1_styledef;
@@ -491,8 +561,7 @@
 									showCancel: false,
 									confirmText: this.translateSys("cancel")
 								});
-							} 
-							else uni.showModal({
+							} else uni.showModal({
 								title: this.translateSys("tip"),
 								content: tip + ',' + this.translateSys('tip') + ':' + data.ret,
 								showCancel: false,
@@ -737,7 +806,7 @@
 				// console.log(e.target);
 				var $this = this;
 				console.log(item);
-				if (item.oldvalue != item.value) {
+				if (item.oldvalue != item.value&& item.value.trim() != "") {
 					item.oldvalue = item.value;
 					var attr = item.fieldId;
 					$this.head_styledef.form.model[attr] = item.value;
@@ -776,7 +845,7 @@
 				console.log(item);
 				var $this = this;
 				console.log(item);
-				if (item.oldvalue != item.value) {
+				if (item.oldvalue != item.value&& item.value.trim() != "") {
 					item.oldvalue = item.value;
 					var attr = item.fieldId;
 					$this.head_styledef.form.model[attr] = item.value;
@@ -1217,8 +1286,7 @@
 									showCancel: false,
 									confirmText: this.translateSys("cancel")
 								});
-							} 
-							else uni.showModal({
+							} else uni.showModal({
 								title: this.translateSys("tip"),
 								content: tip + ',' + this.translateSys('tip') + ':' + data.ret,
 								showCancel: false,
@@ -1511,10 +1579,10 @@
 									showCancel: false,
 									confirmText: this.translateSys("cancel")
 								});
-							} 
-							else uni.showModal({
+							} else uni.showModal({
 								title: this.translateSys("tip"),
-								content: tip + this.translateSys('comma')  + this.translate('result') +this.translateSys('colon')  + data.ret,
+								content: tip + this.translateSys('comma') + this.translate('result') + this
+									.translateSys('colon') + data.ret,
 								showCancel: false,
 								confirmText: this.translateSys("cancel")
 							});
@@ -1546,7 +1614,7 @@
 														for (var j = 0; j < attr.length; j++) {
 															if (attr[j].Name == result[i].attr) {
 																if (utils.classUtils.attrTypeIsDict(attr[j]
-																	.Type)) {
+																		.Type)) {
 																	var dictItemList = [];
 																	for (var d in result[i].choice_list) {
 																		var val = result[i].choice_list[d];
@@ -1861,7 +1929,7 @@
 						if (data.ret != 0) {
 							var tip = data.err_info ? typeof data.err_info == 'string' ? data.err_info : data
 								.err_info.join('<br/>') : '';
-							if (data.ret == 801){
+							if (data.ret == 801) {
 								if (this.param.Only_Script_Error) {
 									let pos = tip.indexOf("锛�);
 									if (pos > -1) tip = tip.substring(pos + 1);
@@ -1872,8 +1940,7 @@
 									showCancel: false,
 									confirmText: this.translateSys("cancel")
 								});
-							} 
-							else uni.showModal({
+							} else uni.showModal({
 								title: this.translateSys("tip"),
 								content: tip + ',' + this.translateSys('tip') + ':' + data.ret,
 								showCancel: false,

--
Gitblit v1.9.1