From fa00382db413a8489d07983b66f0869305b51a9a Mon Sep 17 00:00:00 2001
From: 81041 <81041@DESKTOP-025NVD9>
Date: 星期五, 11 一月 2019 11:35:54 +0800
Subject: [PATCH] 批量读取系统参数

---
 gx_tieta/WebRoot/pages/js/mylayui.js |  165 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 159 insertions(+), 6 deletions(-)

diff --git a/gx_tieta/WebRoot/pages/js/mylayui.js b/gx_tieta/WebRoot/pages/js/mylayui.js
index 141ec8f..63b4f22 100644
--- a/gx_tieta/WebRoot/pages/js/mylayui.js
+++ b/gx_tieta/WebRoot/pages/js/mylayui.js
@@ -401,18 +401,31 @@
 
 // 璁剧疆鍘熷瀷鍑芥暟
 LayuiTbl.prototype = {
-    updateTr: function(index, data) {
+	updateTr: function(index, data) {
         var layui = this.layui;
-        
         var preData = this.cache[index];
-        var _data = $.extend(preData, data||{});
+        var _data = $.extend(preData||{}, data||{});
         var tds = this._getBodyTds(index);
-        console.log(preData);
+        var tdRs = this._getFixedRTds(index);
+        //console.log(_data);
         // 閬嶅巻
         var _this = this;
         layui.each(_data, function(key, value) {
             // 閬嶅巻tds鐨勫��
-            tds.each(function() {
+            tds.each(function(k) {
+                var _field = $(this).data('field');
+                if(key == _field) {
+                    var cell = $(this).find('.layui-table-cell');
+                    var content = _this._getContent(key, value, _data);
+                    cell.html(content);
+                }
+            });
+        });
+        
+        // 淇敼娴姩
+        layui.each(_data, function(key, value) {
+            // 閬嶅巻tds鐨勫��
+        	tdRs.each(function(k) {
                 var _field = $(this).data('field');
                 if(key == _field) {
                     var cell = $(this).find('.layui-table-cell');
@@ -422,12 +435,45 @@
             });
         });
     }
+	,updateCol: function(major, field, data) {			// 鏇存柊鍒楃殑鍊�
+		// 鍒ゆ柇褰撳墠灞炴�ф槸鍚︽槸data鐨勫睘鎬�
+		if(field in data) {
+			var index = this.getIndex(major, data[major]);		// 鑾峰彇闇�瑕佹洿鏂扮殑琛�
+			if(index != undefined) {							// 鑾峰彇鍒�
+				this.updateTr(index, data);						// 鏇存柊琛ㄦ牸鐨勬暟鎹�
+			}
+		}
+		
+	}
+	,update: function(field, data) {
+		for(var i=0; i<data.length; i++) {
+			var _data = data[i];
+			if(field in _data) {								// 鍒ゆ柇瀵硅薄涓槸鍚﹀瓨鍦ㄦ爣璇嗕綅
+				var _field = _data[field];						// 鑾峰彇鏍囪瘑浣嶇殑鍊�
+				var index = this.getIndex(field, _field);		// 鑾峰彇瀵硅薄鎵�鍦ㄧ殑琛�
+				if(index != undefined) {						// 鍒ゆ柇鏄惁鑾峰彇鍒颁簡琛屽彿
+					this.updateTr(index, _data);				// 鏇存柊鎸囧畾鐨勮
+				}else {
+					console.log(' 绗�'+i+'涓璞℃病鏈夊璞$殑琛ㄦ牸琛�');
+					console.log(_data);
+				}
+			}else {
+				console.log(' 绗�'+i+'涓璞$殑'+field+'涓婚敭鏍囪瘑涓嶅瓨鍦�');
+			}
+		}
+	}
     ,_getBodyTds: function(index) {
         var layuiTableView = $(this.ele).next('.layui-table-view');
         var layuiTableBody = layuiTableView.find('.layui-table-body .layui-table tbody');
         var trList = layuiTableBody.find('tr');
 
         return trList.eq(index).find('td');
+    }
+    ,_getFixedRTds: function(index) {
+    	var layuiTableView = $(this.ele).next('.layui-table-view');
+    	var layuiFixedR = layuiTableView.find('.layui-table-fixed.layui-table-fixed-r .layui-table tbody');
+    	var trList = layuiFixedR.find('tr');
+    	return trList.eq(index).find('td');
     }
     ,_getContent: function(key, value, data) {
         var col = this.col;             //  鎵�鏈夌殑鍒�
@@ -440,7 +486,11 @@
             // 鍒ゆ柇褰撳墠鍐呭鏄惁涓哄搴旂殑闇�瑕佹洿鏂扮殑鏁版嵁
             if(key == _col.field) {
                 // 鍒ゆ柇鏄惁鏈夋ā鏉�
-                templet = _col.templet?$(_col.templet).html():_col.toolbar?$(_col.toolbar).html():value;
+            	// console.log(key+'***'+_col.field);
+            	// console.log(_col.templet);
+                templet = _col.templet?$(_col.templet).html():_col.toolbar?$(_col.toolbar).html():typeof value == 'number'?value.toString():value;
+                //console.log(templet);
+                templet = templet?templet:typeof value == 'number'?value.toString():value;
                 // 鏍规嵁妯℃澘鏋勬垚content
                 laytpl(templet).render(data, function(html) {
                     rs = html;
@@ -452,5 +502,108 @@
 
         return false;
     }
+    ,getIndex: function(field, value) {		// 鑾峰彇tr鐨勪笅鏍�
+    	// 閬嶅巻cache鐨勫��
+    	var cache = this.cache;
+    	var index = undefined;
+    	for(var i=0; i<cache.length; i++) {
+    		var _cache = cache[i];
+    		// console.log(_cache)
+    		if(field in _cache && _cache[field] == value) {
+    			index = i;
+    			break;
+    		}
+    	}
+    	
+    	return index;
+    }
+    ,getTr: function(field, value) {		// 鑾峰彇Tr鐨勬暟鎹�
+    	// 閬嶅巻cache鐨勫��
+    	var cache = this.cache;
+    	var rs = {
+    		code: 0
+    		,data: {}
+    		,msg: '鑾峰彇鏍囪瘑浣�'+field+'锛屽�间负'+value+'瀵瑰簲鐨則r鐨勬暟鎹け璐�'
+    	};
+    	// 閬嶅巻cache鐨勫��
+    	for(var i=0; i<cache.length; i++) {
+    		var _cache = cache[i];
+    		if(field in _cache && _cache[field] == value) {
+    			rs.code = 1;
+    			rs.data = _cache;
+    			rs.msg = '鑾峰彇鏍囪瘑浣�'+field+'锛屽�间负'+value+'瀵瑰簲鐨則r鐨勬暟鎹垚鍔�'
+    			break;
+    		}
+    	}
+    	
+    	return rs;
+    }
+    ,setCache: function(cache) {
+    	this.cache = cache;
+    }
 };
 
+//鑾峰彇layui鐨刦orm琛ㄥ崟鐨勫��(鏀寔input鍜宻elect)
+var LayuiForm = function(ele) {
+    this.ele = ele;
+};
+// 瀹氫箟鍘熷瀷鏂规硶
+LayuiForm.prototype = {
+    get: function(callback) {
+        var ele = $('#'+this.ele);
+        var isGood = this._checkForm(ele);
+        if(isGood) {
+            var iptsVals = this._getIpts(ele);
+            var selVals = this._getSels(ele);
+            //  鑾峰彇鎵�鏈夌殑form鍊�
+            var rs = $.extend({}, iptsVals, selVals);
+            callback(rs);
+        }
+    }
+    ,_getIpts: function(ele) {
+        var ipts = ele.find('input');
+        var iptVals = {};
+        ipts.each(function() {
+            var name = $(this).attr('name');
+            if(name) {
+                iptVals[name] = $(this).val();
+            }
+        });
+
+        return iptVals;
+    }
+    ,_getSels: function(ele) {
+        var sels = ele.find('select');
+        var selVals = {};
+        sels.each(function() {
+            var name = $(this).attr('name');
+            if(name) {
+                selVals[name] = $(this).val();
+            }
+        });
+
+        return selVals;
+    }
+
+    ,_checkForm: function(ele) {
+        var isGood = true;
+        var ipts = ele.find('input');
+        var sels = ele.find('select');
+        //  閬嶅巻鎵�鏈夌殑input鏌ヨ鏄惁鏈夋暟鎹笉姝g‘鐨�
+        ipts.each(function() {
+            if($(this).hasClass('layui-form-danger')) {
+                isGood = false;
+            }
+        });
+
+        //  閬嶅巻鎵�鏈夌殑select鏌ヨ鏄惁鏈夋暟鎹笉姝g‘鐨�
+        sels.each(function() {
+            if($(this).hasClass('layui-form-danger')) {
+                isGood = false;
+            }
+        });
+
+        // 杩斿洖缁撴灉
+        return isGood;
+    }
+};

--
Gitblit v1.9.1