From 88606524ac78768c49d1a277808e580dc7fdbd05 Mon Sep 17 00:00:00 2001
From: cyy <cuiqian2004@163.com>
Date: 星期四, 13 六月 2024 21:38:01 +0800
Subject: [PATCH] set_subtable_page_row

---
 pages/modal/5602.vue |   92 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 91 insertions(+), 1 deletions(-)

diff --git a/pages/modal/5602.vue b/pages/modal/5602.vue
index 639ab96..5af11bf 100644
--- a/pages/modal/5602.vue
+++ b/pages/modal/5602.vue
@@ -244,7 +244,7 @@
 				:class="item.disabled?'input-disabled':''"
 				v-model="item.value"
 				:localdata="item.dict"
-				@change="onChange(item)"
+				@change="onEnterChange(item)"
 				:disabled="item.disabled"
 				:clear="false"
 			></uni-data-select>
@@ -454,6 +454,28 @@
 	// 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 Head_UIStyleGetInfo(class_id,style_id){   //鑾峰彇鑷畾涔夎〃鍗曟牱寮� 		var $this = this;
 		var dataInfo={
@@ -775,6 +797,52 @@
 									  }
 									});
 								}
+								else if(item.action_type == "set_subtable_page_row"){
+									// value = {"page_name":"鐮佺洏涓�, "row":[{"id":"xx"}]}
+									var value = item.value;
+									var detailStyleDefList = []
+									if(value.page_name == $this.$data.param.Sub_Page[1].Name)
+									{
+										detailStyleDefList = $this.$data.detail2StyleDefList
+									}
+									else if(value.page_name == $this.$data.param.Sub_Page[0].Name)
+									{
+										detailStyleDefList =$this.$data.detail1StyleDefList
+									}
+									detailStyleDefList.forEach(ele=>{
+										value.row.forEach((rowData) => {
+										    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)
+												              }
+															}
+												          })
+												        }
+												    });
+												});
+											}
+										})	
+									});
+									if(value.page_name == $this.$data.param.Sub_Page[1].Name)
+									{
+										$this.setData({detail2StyleDefList:detailStyleDefList})
+									}
+									else if(value.page_name == $this.$data.param.Sub_Page[0].Name)
+									{
+										 $this.setData({detail1StyleDefList:detailStyleDefList})
+									}
+								}
 								else if(item.action_type == "set_dlg_attr"){
 								  // value = {"attr":"xxx", "value":"xxx"}
 								  var data = item.value;
@@ -809,6 +877,28 @@
 			
 	    }
 	},
+	operationNumber(value1, value2,operation){
+		if(operation == "+")
+		{
+			return value1 + value2
+		}
+		else if(operation == "-")
+		{
+			return value1 - value2
+		}
+		else if(operation == "*")
+		{
+			return value1 * value2
+		}
+		else if(operation == "/")
+		{
+			if(value2)
+				return value1 / value2
+			else
+				return value1 
+		}
+		else return value2 
+	},
 	//鍔犺浇姝e湪鍒嗘嫞鍐呭
 	viewAceionRow(data,type){
 		// console.log(data);

--
Gitblit v1.9.1