From 3fa965526809b6a236d13dcfc8de024d13b583fe Mon Sep 17 00:00:00 2001
From: hdw <496960745@qq.com>
Date: 星期三, 10 十月 2018 15:33:15 +0800
Subject: [PATCH] 配组筛选条件

---
 gx_tieta/WebRoot/set-match-group.jsp |  260 +++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 235 insertions(+), 25 deletions(-)

diff --git a/gx_tieta/WebRoot/set-match-group.jsp b/gx_tieta/WebRoot/set-match-group.jsp
index eb0482d..6ab2b3c 100644
--- a/gx_tieta/WebRoot/set-match-group.jsp
+++ b/gx_tieta/WebRoot/set-match-group.jsp
@@ -46,28 +46,38 @@
 		<div class="whyc-page-layui-content-container">
 			<div class="whyc-page-layui-content" style="background-color: pink">
 				<div class="tbl-container">
-					<div class="tbl-filter" lay-filter="tblFilter">
-						<div class="layui-form layui-form-pane">
+					<div class="tbl-filter">
+						<div class="layui-form layui-form-pane"  lay-filter="tblFilter">
 							<div class="layui-inline">
 								<div class="layui-input-inline">
-									<select name="province" id="province">
-										<option value="">璇烽�夋嫨鐪�/鐩磋緰甯�</option>
-									</select>
+									<div class="layui-form" lay-filter="provinceFilter">
+										<select name="province" id="province" lay-filter="province">
+											<option value="">璇烽�夋嫨鐪�/鐩磋緰甯�</option>
+										</select>
+									</div>
 								</div>
 								<div class="layui-input-inline">
-									<select name="city" id="city" lay-filter="city">
-										<option value="">璇烽�夋嫨甯�/鍖�</option>
-									</select>
+									<div class="layui-form" lay-filter="cityFilter">
+										<select name="city" id="city" lay-filter="city">
+											<option value="">璇烽�夋嫨甯�/鍖�</option>
+										</select>
+									</div>
 								</div>
 								<div class="layui-input-inline">
-									<select name="home" id="home" lay-search="">
-										<option value="">璇烽�夋嫨鏈烘埧</option>
-									</select>
+									<div class="layui-form" lay-filter="homeFilter">
+										<select name="home" id="home" lay-search="" lay-filter="home">
+											<option value="">璇烽�夋嫨鏈烘埧</option>
+										</select>
+									</div>
+									
 								</div>
 								<div class="layui-input-inline">
-									<select name="group" lay-filter="group" lay-search="" id="group">
-										<option value="">璇烽�夋嫨鐢垫睜缁�</option>
-									</select>
+									<div class="layui-form" lay-filter="groupFilter">
+										<select name="group" id="group" lay-filter="group" lay-search="">
+											<option value="">璇烽�夋嫨鐢垫睜缁�</option>
+										</select>
+									</div>
+									
 								</div>
 							</div>
 							<button class="layui-btn layui-btn-sm layui-btn-normal" id="search"><i class="fa fa-search"></i> 鏌ヨ</button>
@@ -133,14 +143,6 @@
 				table.reload('groupTbl', tOptions);
 			});
 
-			// 鍒囨崲绛涢�夋潯浠舵ā鍧�
-			form.on('select(group)', function(data) {
-				var dom = data.elem;
-				var $dom = $(dom);
-				console.log($dom.find('option:selected').data());
-			});
-
-
 			// 鐐瑰嚮琛ㄦ牸宸ュ叿鏍忔洿鎹�
 			table.on('tool(groupTbl)', function(obj) {
 				var event = obj.event;
@@ -156,9 +158,9 @@
 				
 			}
 			
+			// 鏌ヨ鐪佷笅鎷夋
 			searchProvince();
-			
-			// 鏌ヨ鐪佺殑鍒楄〃
+			// 鏌ヨ鐪�
 			function searchProvince() {
 				// 璇锋眰鍚庡彴鏌ヨ
 				$.ajax({
@@ -168,10 +170,218 @@
 					data: null,
 					dataType: 'json',
 					success:function(result) {
-						var rs = result.result;
+						var rs = JSON.parse(result.result);
+						var list = [];				// option缁撴灉闆�
+						var ele = $('#province');	// 鐩爣select
+						if(rs.code == 1) {
+							var data = rs.data;
+							list.push(getLayuiSelect('璇烽�夋嫨鐪�/鐩磋緰甯�', '', {}, {}));
+							// 閬嶅巻鏌ヨ缁撴灉
+							for(var i=0; i<data.length; i++) {
+								var _data = data[i];
+								var _tmp = getLayuiSelect(_data, _data, {}, {});
+								list.push(_tmp);
+							}
+						}else {
+							list.push(getLayuiSelect('鏆傛棤鐪�/鐩磋緰甯�', '', {}, {}));
+						}
+						
+						// 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃
+						createLayuiSelect(ele, list);
+						form.render('select', 'provinceFilter');
+						
+						// 鏌ヨ甯�
+						searchCity();
 					}
 				});
 			}
+			
+			// 鍒囨崲鐪�-甯�
+			form.on('select(province)', function(data) {
+				// 鏌ヨ甯�
+				searchCity();
+			});
+			
+			// 鏌ヨ甯�
+			function searchCity() {
+				// 鏋勯�犳煡璇㈡潯浠�
+				var tmp = {
+					StationName1: $("#province").val()
+				};
+				// 鏍规嵁鏋勯�犳潯浠舵煡璇㈠唴瀹�
+				$.ajax({
+					type: 'post',
+					async: true,
+					url: 'BattInfAction!serchStationName2',
+					dataType: 'json',
+					data: "json = "+JSON.stringify(tmp),
+					success: function(result) {
+						var rs = JSON.parse(result.result);
+						var list = [];				// option缁撴灉闆�
+						var ele = $('#city');	// 鐩爣select
+						if(rs.code == 1) {
+							var data = rs.data;
+							list.push(getLayuiSelect('璇烽�夋嫨甯�/鍖�', '', {}, {}));
+							// 閬嶅巻鏌ヨ缁撴灉
+							for(var i=0; i<data.length; i++) {
+								var _data = data[i];
+								var _tmp = getLayuiSelect(_data.StationName2, _data.StationName2, {}, _data);
+								list.push(_tmp);
+							}
+						}else {
+							list.push(getLayuiSelect('鏆傛棤甯�/鍖�', '', {}, {}));
+						}
+						
+						// 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃
+						createLayuiSelect(ele, list);
+						form.render('select', 'cityFilter');
+						
+						// 鏌ヨ鏈烘埧
+						searchHome();
+					}
+				});
+			}
+			
+			// 鍒囨崲甯�-鏈烘埧
+			form.on('select(city)', function(data) {
+				// 鏌ヨ鏈烘埧
+				searchHome();
+			});
+			
+			// 鏌ヨ鏈烘埧
+			function searchHome() {
+				// 鏋勯�犳煡璇㈡潯浠�
+				var tmp = {
+					StationName1:$("#province").val(),
+					StationName2:$("#city").val()
+				};
+				// 鏍规嵁鏋勯�犳潯浠舵煡璇㈠唴瀹�
+				$.ajax({
+					type: 'post',
+					async: true,
+					url: 'BattInfAction!serchStationName3',
+					dataType: 'json',
+					data: "json = "+JSON.stringify(tmp),
+					success: function(result) {
+						var rs = JSON.parse(result.result);
+						var list = [];				// option缁撴灉闆�
+						var ele = $('#home');	// 鐩爣select
+						if(rs.code == 1) {
+							var data = rs.data;
+							list.push(getLayuiSelect('璇烽�夋嫨鏈烘埧', '', {StationId: ''}, {}));
+							// 閬嶅巻鏌ヨ缁撴灉
+							for(var i=0; i<data.length; i++) {
+								var _data = data[i];
+								var _attr = {
+									StationId: _data.StationId
+								};
+								var _tmp = getLayuiSelect(_data.StationName3, _data.StationName, _attr, _data);
+								list.push(_tmp);
+							}
+						}else {
+							list.push(getLayuiSelect('鏆傛棤鏈烘埧', '', {}, {}));
+						}
+						
+						// 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃
+						createLayuiSelect(ele, list);
+						form.render('select', 'homeFilter');
+						
+						// 鏌ヨ鏈烘埧
+						searchGroup();
+					}
+				});
+			}
+			
+			// 鍒囨崲鏈烘埧-鐢垫睜缁�
+			form.on('select(home)', function(data) {
+				// 鏌ヨ鐢垫睜缁�
+				searchGroup();
+			});
+			
+			// 鏌ヨ鏈烘埧
+			function searchGroup() {
+				// 鏋勯�犳煡璇㈡潯浠�
+				var tmp = {
+					StationName1:$("#province").val(),
+					StationName2:$("#city").val(),
+					StationName: $("#home").val(),
+					StationId: $("#home").find('option:selected').attr('stationid')
+				};
+				// 鏍规嵁鏋勯�犳潯浠舵煡璇㈠唴瀹�
+				$.ajax({
+					type: 'post',
+					async: true,
+					url: 'BattInfAction!serchBattByStation',
+					dataType: 'json',
+					data: "json = "+JSON.stringify(tmp),
+					success: function(result) {
+						var rs = JSON.parse(result.result);
+						var list = [];				// option缁撴灉闆�
+						var ele = $('#group');		// 鐩爣select
+						if(rs.code == 1) {
+							var data = rs.data;
+							list.push(getLayuiSelect('璇烽�夋嫨鐢垫睜缁�', '0', {}, {}));
+							// 閬嶅巻鏌ヨ缁撴灉
+							for(var i=0; i<data.length; i++) {
+								var _data = data[i];
+								var _attr = {
+									stationname: _data.StationName,
+									dev_id: _data.FBSDeviceId,
+									batt_num: _data.GroupIndexInFBSDevice+1
+								};
+								var txt = _data.BattGroupName+'(鍏�'+_data.MonCount+"<s:text name='Section'/>"+')';
+								var _tmp = getLayuiSelect(txt, _data.BattGroupId, _attr, _data);
+								list.push(_tmp);
+							}
+						}else {
+							list.push(getLayuiSelect('鏆傛棤鏈烘埧', '', {}, {}));
+						}
+						
+						// 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃
+						createLayuiSelect(ele, list);
+						form.render('select', 'groupFilter');
+					}
+				});
+			}
+			
+			// 鐢熸垚鐗瑰畾鐨剆elect鍒楄〃
+			function createLayuiSelect(ele, list) {
+				// 娓呯┖鍐呭
+				ele.text('');
+				// 閬嶅巻list缁撴灉闆嗙敓鎴愪笅鎷�
+				for(var i=0; i<list.length; i++) {
+					var _list = list[i];
+					var option = $('<option></option>');	// option鍏冪礌
+					// 璁剧疆option鐨勬枃鏈�/灞炴�у��/data鍊�
+					option.text(_list.txt);
+					option.val(_list.val);
+					option.data('data', _list.data);
+					Object.keys(_list.attr).forEach(function(key){
+						var val = _list.attr[key];
+						option.attr(key, val);
+					});
+					ele.append(option);
+				}
+			}
+			
+			// 鏋勯�犵敓鎴恠elect鍒楄〃鐨勫璞℃暟缁�
+			function getLayuiSelect(txt, val, attr, data) {
+				var obj = {
+					val: '',
+					txt: '',
+					attr: {},
+					data: {}
+				};
+				
+				// 璁剧疆鍐呭鐨勫��
+				obj.val = val;		// option鐨剉alue鍊�
+				obj.txt = txt;		// option鐨勬枃鏈��	
+				obj.attr = attr;	// option鐨勮嚜瀹氫箟鐨勫睘鎬�
+				obj.data = data;	// option鐨刣ata鍊�
+				
+				// 杩斿洖鏋勯�犵殑瀵硅薄
+				return obj;
+			}
 		});
 	</script>
   </body>

--
Gitblit v1.9.1