From a016677520c05b9c72c2426781df7cbdb4ecfe71 Mon Sep 17 00:00:00 2001
From: hdw <496960745@qq.com>
Date: 星期四, 08 十一月 2018 10:20:36 +0800
Subject: [PATCH] 首页面卡顿问题
---
gx_tieta/WebRoot/set-match-group.jsp | 413 ++++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 367 insertions(+), 46 deletions(-)
diff --git a/gx_tieta/WebRoot/set-match-group.jsp b/gx_tieta/WebRoot/set-match-group.jsp
index eb0482d..7a65063 100644
--- a/gx_tieta/WebRoot/set-match-group.jsp
+++ b/gx_tieta/WebRoot/set-match-group.jsp
@@ -13,7 +13,7 @@
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE10" />
<meta charset="UTF-8">
-<title>鐢垫睜缁勯厤缁勭鐞�</title>
+<title>鐢垫睜缁勯厤缁勮褰�</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
@@ -23,6 +23,7 @@
<link rel="stylesheet" type="text/css" href="css/basic.css" />
<link rel="stylesheet" href="css/common.css">
<link rel="stylesheet" href="pages/css/common.css">
+ <link rel="stylesheet" href="pages/css/mylayui.css">
<style type="text/css">
html, body {
height: 100%;
@@ -46,31 +47,47 @@
<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="countyFilter">
+ <select name="county" id="county" lay-filter="county">
+ <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="homeFilter">
+ <select name="home" id="home" lay-search="" lay-filter="home">
+ <option value="">璇烽�夋嫨鏈烘埧</option>
+ </select>
+ </div>
+ </div>
+ <div class="layui-input-inline">
+ <div class="layui-form" lay-filter="groupFilter">
+ <select name="group" id="group" lay-filter="group">
+ <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>
+ <button class="layui-btn layui-btn-sm" id="search"><i class="fa fa-search"></i> 鏌ヨ</button>
</div>
</div>
@@ -80,19 +97,19 @@
</div>
</div>
</div>
+ <div id="setMatchGroupData"></div>
<script type="text/javascript" src="js/jquery-1.8.3.js"></script>
<script type="text/javascript" src="jqueryui/jquery-ui.min.js"></script>
<script type="text/javascript" src="src/layui.js"></script>
+ <script type="text/javascript" src="pages/js/mylayui.js"></script>
<script type="text/html" id="toolBar">
- <a class="layui-btn layui-btn-xs" lay-event="replace">鏇存崲</a>
+ <a class="layui-btn layui-btn-xs" lay-event="matchGroup">閰嶇粍</a>
</script>
<script type="text/javascript">
layui.use(['layer', 'table', 'form', 'laytpl', 'element'],function() {
var layer = layui.layer // 鑾峰彇layer妯″潡
,table = layui.table // 鑾峰彇table妯″潡
- ,form = layui.form
- ,laytpl = layui.laytpl
- ,element = layui.element;
+ ,form = layui.form;
// 琛ㄦ牸鏁版嵁閰嶇疆椤�
var tOptions = {
elem: '#groupTbl'
@@ -106,8 +123,6 @@
,{field:'brandname', title:'鍝佺墝鍚嶇О', align:'center'}
,{field:'nominalcap', title:'鏍囩О瀹归噺', align:'center'}
,{field:'monvol', title:'鏍囩О鐢靛帇锛圴锛�', align:'center'}
- ,{field:'relcap', title:'瀹為檯瀹归噺', align:'center'}
- ,{field:'percap', title:'瀹归噺鐧惧垎姣�(%)', align:'center'}
,{fixed: 'right', title:'鎿嶄綔', toolbar: '#toolBar', width: 70}
]]
,data:[]
@@ -122,43 +137,114 @@
// 鐐瑰嚮鏌ヨ鏍规嵁鏌ヨ鏉′欢鑾峰彇鐢垫睜缁勭殑鍗曚綋鍒楄〃
$('#search').click(function() {
- var data = [{stationname: 'xxx'},{stationname: 'enen'}];
- var num = data.length;
- tOptions.data = data;
- // 璁剧疆鍒嗛〉淇℃伅
- // tOptions.page.layout = ['count', 'prev', 'page', 'next']; //鑷畾涔夊垎椤靛竷灞�
- tOptions.page.limit = num;
- tOptions.page.limits = [num];
- // 閲嶆柊缁樺埗琛ㄦ牸
- table.reload('groupTbl', tOptions);
+ var groupData = $('#group').find('option:selected').data('data');
+ // 鍒ゆ柇鏄惁宸茬粡閫変腑鐢垫睜缁�
+ if(groupData) {
+ searchData(groupData);
+ }else {
+ tOptions.data = [];
+ table.render(tOptions);
+ layer.msg('璇烽�夋嫨涓�缁勭數姹�');
+ }
});
-
- // 鍒囨崲绛涢�夋潯浠舵ā鍧�
- form.on('select(group)', function(data) {
- var dom = data.elem;
- var $dom = $(dom);
- console.log($dom.find('option:selected').data());
- });
-
+
+ // 鏌ヨ鐢垫睜缁勪笅鎵�鏈夌殑鍗曚綋
+ function searchData(obj) {
+ // 娣诲姞绛夊緟妗�
+ var loading = layer.load(0, {shade: [0.1,'#fff']}); //0浠h〃鍔犺浇鐨勯鏍硷紝鏀寔0-2
+ var structData = structSearchData(obj);
+ $.ajax({
+ type: 'post',
+ async: true,
+ url:'BattInfAction!serchGroupByInfor',
+ data: 'json='+JSON.stringify(structData),
+ dataType: 'json',
+ success: function(result) {
+ layer.close(loading); // 鍏抽棴绛夊緟妗�
+ var rs = JSON.parse(result.result);
+ if(rs.code == 1) {
+ var data = rs.data;
+ var num = 0;
+ var rsData = formaterTblData(data);
+ num = rsData.length;
+ tOptions.data = rsData;
+ // 璁剧疆鍒嗛〉淇℃伅
+ tOptions.page.layout = ['count', 'prev', 'page', 'next']; //鑷畾涔夊垎椤靛竷灞�
+ tOptions.page.limit= num;
+ tOptions.page.limits = [num];
+ }
+ // 閲嶆柊缁樺埗琛ㄦ牸鍐呭
+ table.reload('groupTbl', tOptions);
+ }
+ });
+ }
+
+ // 鏋勯�犳煡璇㈠璞�
+ function structSearchData(data) {
+ var obj = {};
+ obj.StationName1 = '';
+ obj.StationName2 = '';
+ obj.StationName5 = '';
+ obj.StationName3 = '';
+ obj.BattGroupName = '';
+ obj.BattGroupId = data.BattGroupId;
+ return obj;
+ }
+
+ // 鏋勯�犵敓鎴愯〃鏍兼暟鎹殑鏂规硶
+ function formaterTblData(data) {
+ var rs = []; // 缁撴灉闆�
+ console.log(data);
+ // 閬嶅巻鏌ヨ鐨勭粨鏋滄牴鎹煡璇㈢粨鏋滅敓鎴愭寚瀹氱殑鏍煎紡
+ for(var i=0; i<data.length; i++) {
+ var _data = data[i];
+ var obj = {};
+ obj.stationname = _data.StationName; // 鏈烘埧鍚嶇О
+ obj.groupname = _data.BattGroupName; // 鐢垫睜缁勫悕绉�
+ obj.monvol = _data.MonVolStd; // 鏍囩О鐢靛帇
+ obj.nominalcap = Number(_data.MonCapStd); // 鏍囩О瀹归噺
+ obj.monnum = '#'+_data.MonNum; // 鍗曚綋缂栧彿
+ obj.brandname = _data.BattProducer; // 鍝佺墝
+ // 涓嶆樉绀哄唴瀹�
+ obj.num = _data.MonNum; // 鍗曚綋缂栧彿涓嶅姞#
+ obj.battgroupid = _data.BattGroupId; // 鐢垫睜缁刬d
+ obj.stationid = _data.StationId; // 鏈烘埧id
+ rs.push(obj);
+ }
+
+ return rs; // 杩斿洖缁撴灉闆�
+ }
// 鐐瑰嚮琛ㄦ牸宸ュ叿鏍忔洿鎹�
table.on('tool(groupTbl)', function(obj) {
var event = obj.event;
switch(event) {
- case 'replace':
- showReplacePanel();
+ case 'matchGroup':
+ showMatchGroupPanel(obj.data);
break;
}
});
// 鏄剧ず鏇存崲鐢垫睜鍗曚綋闈㈡澘
- function showReplacePanel() {
-
+ function showMatchGroupPanel(obj) {
+ $('#setMatchGroupData').data('data', obj);
+ // 璁剧疆寮瑰嚭妗嗙殑title鐨勫��
+ var txt = obj.stationname+'-'+obj.groupname+'-'+obj.monnum+'('+obj.brandname+')';
+ // 鏄剧ず闈㈡澘
+ layer.open({
+ type: 2,
+ title: '<span style="font-weight:bold">閰嶇粍锛�</span>'+txt,
+ area: ['1200px', '500px'],
+ fixed: false, //涓嶅浐瀹�
+ maxmin: true,
+ content: 'iframe/set-match-group.html'
+ });
}
+ // 鏌ヨ鐪佷笅鎷夋
+ var filterLoad = layer.load();
searchProvince();
-
- // 鏌ヨ鐪佺殑鍒楄〃
+ // 鏌ヨ鐪�
function searchProvince() {
// 璇锋眰鍚庡彴鏌ヨ
$.ajax({
@@ -168,7 +254,242 @@
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('璇烽�夋嫨鐪�/鐩磋緰甯�', '', {}, undefined));
+ // 閬嶅巻鏌ヨ缁撴灉
+ for(var i=0; i<data.length; i++) {
+ var _data = data[i];
+ var _tmp = getLayuiSelect(_data, _data, {}, {});
+ list.push(_tmp);
+ }
+ }else {
+ list.push(getLayuiSelect('鏆傛棤鐪�/鐩磋緰甯�', '', {}, undefined));
+ }
+
+ // 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃
+ createLayuiSelect(ele, list);
+ form.render('select', 'provinceFilter');
+
+ // 鏌ヨ甯�
+ searchCity();
+ }
+ });
+ }
+
+ // 鍒囨崲鐪�-甯�
+ form.on('select(province)', function(data) {
+ // 鏌ヨ甯�
+ searchCity(true);
+ });
+
+ // 鏌ヨ甯�
+ function searchCity(isLoad) {
+ // 鏋勯�犳煡璇㈡潯浠�
+ var tmp = {
+ StationName1: $("#province").val()
+ };
+ // 鏄惁娣诲姞绛夊緟
+ if(isLoad) {
+ filterLoad = layer.load();
+ }
+ // 鏍规嵁鏋勯�犳潯浠舵煡璇㈠唴瀹�
+ $.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('璇烽�夋嫨甯�', '', {}, undefined));
+ // 閬嶅巻鏌ヨ缁撴灉
+ 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('鏆傛棤甯�', '', {}, undefined));
+ }
+
+ // 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃
+ createLayuiSelect(ele, list);
+ form.render('select', 'cityFilter');
+ // 鏌ヨ鍖�/鍘�
+ searchCounty();
+ }
+ });
+ }
+
+ // 鏌ヨ鍖�/鍘�
+ function searchCounty(isLoad) {
+ // 鏋勯�犳煡璇㈡潯浠�
+ var tmp = {
+ StationName1: $("#province").val(),
+ StationName2: $("#city").val()
+ };
+ // 鏄惁娣诲姞绛夊緟
+ if(isLoad) {
+ filterLoad = layer.load();
+ }
+ // 鏍规嵁鏋勯�犳潯浠舵煡璇㈠唴瀹�
+ $.ajax({
+ type: 'post',
+ async: true,
+ url: 'BattInfAction!serchStationName5',
+ dataType: 'json',
+ data: "json = "+JSON.stringify(tmp),
+ success: function(result) {
+ var rs = JSON.parse(result.result);
+ var list = []; // option缁撴灉闆�
+ var ele = $('#county'); // 鐩爣select
+ if(rs.code == 1) {
+ var data = rs.data;
+ list.push(getLayuiSelect('璇烽�夋嫨鍖�/鍘�', '', {}, undefined));
+ // 閬嶅巻鏌ヨ缁撴灉
+ for(var i=0; i<data.length; i++) {
+ var _data = data[i];
+ var _tmp = getLayuiSelect(_data.StationName5, _data.StationName5, {}, _data);
+ list.push(_tmp);
+ }
+ }else {
+ list.push(getLayuiSelect('鏆傛棤鍖�/鍘�', '', {}, undefined));
+ }
+
+ // 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃
+ createLayuiSelect(ele, list);
+ form.render('select', 'countyFilter');
+
+ // 鏌ヨ鏈烘埧
+ searchHome();
+ }
+ });
+ }
+
+
+ // 鍒囨崲甯�-鍖�/鍘�
+ form.on('select(city)', function(data) {
+ // 鏌ヨ鍖�/鍘�
+ searchCounty(true);
+ });
+
+ // 鍒囨崲鍖�/鍘�-鏈烘埧
+ form.on('select(county)', function(data) {
+ // 鏌ヨ鏈烘埧
+ searchHome(true);
+ });
+
+ // 鏌ヨ鏈烘埧
+ function searchHome(isLoad) {
+ // 鏋勯�犳煡璇㈡潯浠�
+ var tmp = {
+ StationName1:$("#province").val(),
+ StationName2:$("#city").val(),
+ StationName5:$("#county").val()
+ };
+ // 鏄惁娣诲姞绛夊緟
+ if(isLoad) {
+ filterLoad = layer.load();
+ }
+ // 鏍规嵁鏋勯�犳潯浠舵煡璇㈠唴瀹�
+ $.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: ''}, undefined));
+ // 閬嶅巻鏌ヨ缁撴灉
+ for(var i=0; i<data.length; i++) {
+ var _data = data[i];
+ var _attr = {
+ StationId: _data.StationId
+ };
+ var _tmp = getLayuiSelect(_data.StationName, _data.StationName, _attr, _data);
+ list.push(_tmp);
+ }
+ }else {
+ list.push(getLayuiSelect('鏆傛棤鏈烘埧', '', {}, undefined));
+ }
+
+ // 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃
+ createLayuiSelect(ele, list);
+ form.render('select', 'homeFilter');
+
+ // 鏌ヨ鏈烘埧
+ searchGroup();
+ }
+ });
+ }
+
+ // 鍒囨崲鏈烘埧-鐢垫睜缁�
+ form.on('select(home)', function(data) {
+ // 鏌ヨ鐢垫睜缁�
+ searchGroup();
+ });
+
+ // 鏌ヨ鏈烘埧
+ function searchGroup(isLoad) {
+ // 鏋勯�犳煡璇㈡潯浠�
+ var tmp = {
+ StationName1:$("#province").val(),
+ StationName2:$("#city").val(),
+ StationName5:$("#county").val(),
+ StationName: $("#home").val(),
+ StationId: $("#home").find('option:selected').attr('stationid')
+ };
+ // 鏄惁娣诲姞绛夊緟
+ if(isLoad) {
+ filterLoad = layer.load();
+ }
+ // 鏍规嵁鏋勯�犳潯浠舵煡璇㈠唴瀹�
+ $.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('璇烽�夋嫨鐢垫睜缁�', '', {}, undefined));
+ // 閬嶅巻鏌ヨ缁撴灉
+ 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('鏆傛棤鐢垫睜缁�', '', {}, undefined));
+ }
+
+ layer.close(filterLoad);
+ // 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃
+ createLayuiSelect(ele, list);
+ form.render('select', 'groupFilter');
}
});
}
--
Gitblit v1.9.1