From 52b9fa3058bf7466d5a9d13d8272089cf67d8dee Mon Sep 17 00:00:00 2001 From: hdw <hdw@192.168.7.112> Date: 星期五, 28 十二月 2018 17:56:45 +0800 Subject: [PATCH] 提交内容 --- gx_tieta/WebRoot/batch-set-curr.jsp | 453 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 444 insertions(+), 9 deletions(-) diff --git a/gx_tieta/WebRoot/batch-set-curr.jsp b/gx_tieta/WebRoot/batch-set-curr.jsp index 0087fc0..77cd10c 100644 --- a/gx_tieta/WebRoot/batch-set-curr.jsp +++ b/gx_tieta/WebRoot/batch-set-curr.jsp @@ -20,6 +20,8 @@ <link rel="stylesheet" type="text/css" href="jqueryui/jquery-ui.css"> <link rel="stylesheet" type="text/css" href="src/css/layui.css"> <link rel="stylesheet" type="text/css" href="pages/css/mylayui.css"> + <link rel="stylesheet" type="text/css" href="css/popup-tbl.css"> + <link rel="stylesheet" type="text/css" href="css/whyc-ui.css"> <style> .dataTypeCont { width: 160px; @@ -29,6 +31,18 @@ min-width: 70px; margin-top: 4px; } + .error-img { + visibility: hidden; + font-size: 20px; + color: #FF0000; + } + .error-data { + visibility:visible !important; + } + input.error-data { + outline: none !important; + border: 1px solid #FF0000 !important; + } </style> </head> <body> @@ -144,15 +158,92 @@ </div> <button class="layui-btn layui-btn-sm mrl8" id="batchAdd"><i class="fa fa-plus mrr8"></i>娣诲姞鐢垫睜缁�</button> <button class="layui-btn layui-btn-sm" id="batchSetCurr">鎵归噺璁剧疆鏀剧數鍙傛暟</button> + <button class="layui-btn layui-btn-sm" id="startTest">鎵归噺鍚姩娴嬭瘯</button> + <button class="layui-btn layui-btn-sm" id="lookSetCurr">鏌ヨ鏀剧數鍙傛暟</button> </div> </div> <!-- 琛ㄦ牸鍐呭 --> <table id="pageTbl" lay-filter="pageTbl"></table> </div> </div> + <!-- bts璁惧寮瑰嚭妗� --> + <div class="popup" id="bts"> + <div class="popup-title"><span>BTS璁惧<s:text name="Discharging"/><s:text name="Parameter_Set"/><!-- 鏀剧數鍙傛暟璁剧疆 --></span> <a href="javascript:;" class="close">X</a></div> + <div class="popup-content"> + <div class="popup-tbl"> + <table> + <tbody> + <tr> + <th>娴嬭瘯绫诲瀷<!-- 鏀剧數绫诲瀷 --></th> + <th><s:text name="Discharging"/><s:text name="Time_long"/><!-- 鏀剧數鏃堕暱 -->锛�0~5940<s:text name="Minutes"/>锛�</th> + </tr> + <tr> + <td> + <select id="discharge_type"> + <option value="37"><s:text name="Capacity"/><s:text name="Test"/><!-- 瀹归噺娴嬭瘯 --></option> + <option value="50"><s:text name="Internal_resistance"/><s:text name="Test"/><!-- 鍐呴樆娴嬭瘯 --></option> + </select> + </td> + <td><input id="distime" type="text" value="600"><i class="fa fa-frown-o error-img" title="鏁版嵁鏍煎紡閿欒"></i></td> + </tr> + <tr> + <th><s:text name="Discharging"/><s:text name="Hourly_rate"/>(0~300%)<!-- 鏀剧數灏忔椂鐜� --></th> + <th>鏀剧數瀹归噺鐧惧垎姣�(0~300%)</th> + </tr> + <tr> + <td><input id="hourrate" type="text" value="10"><i class="fa fa-frown-o error-img" title="鏁版嵁鏍煎紡閿欒"></i></td> + <td><input id="disCapPer" type="text" value="60"><i class="fa fa-frown-o error-img" title="鏁版嵁鏍煎紡閿欒"></i></td> + </tr> + <tr> + <th>鍗曚綋鐢靛帇涓嬮檺鐧惧垎姣�(0~300%)</th> + <th>缁勭鐢靛帇涓嬮檺鐧惧垎姣�(0~300%)</th> + </tr> + <tr> + <td><input id="monVolLowPer" type="text" value="90"><i class="fa fa-frown-o error-img" title="鏁版嵁鏍煎紡閿欒"></i></td> + <td><input id="groupVolLowPer" type="text" value="90"><i class="fa fa-frown-o error-img" title="鏁版嵁鏍煎紡閿欒"></i></td> + </tr> + <tr> + <th>鍗曚綋涓嬮檺鏁伴噺鐧惧垎姣�(0~100%)</th> + <th>鍏呯數鐢垫祦鐧惧垎姣�(0~300%)</th> + </tr> + <tr> + <td><input id="monNumLow" type="text" value="25"><i class="fa fa-frown-o error-img" title="鏁版嵁鏍煎紡閿欒"></i></td> + <td><input id="chargeCurrPer" type="text" value="10"><i class="fa fa-frown-o error-img" title="鏁版嵁鏍煎紡閿欒"></i></td> + </tr> + <tr> + <th><s:text name="Booster"/><s:text name="Upper_limit"/><!-- 鍗囧帇涓婇檺 -->锛圴锛�</th> + <th><s:text name="On-line_voltage"/><s:text name="Low"/><s:text name="Dispose"/><!-- 鍦ㄧ嚎鐢靛帇浣庡鐞� --></th> + </tr> + <tr> + <td><input id="DCVolHighLimit" type="text" value="0"><i class="fa fa-frown-o error-img" title="鏁版嵁鏍煎紡閿欒"></i></td> + <td> + <select id="OnlineVolLowAction"> + <option value="0"><s:text name="Stop"/><s:text name="Test"/><!-- 鍋滄娴嬭瘯 --></option> + <option value="1"><s:text name="Continue"/><s:text name="Test"/><!-- 缁х画娴嬭瘯 --></option> + </select> + </td> + </tr> + <tr> + <th>娓╁害涓婇檺(鈩�)</th> + </tr> + <tr> + <td><input id="TempUpHighLimit" type="text" value="40"><i class="fa fa-frown-o error-img" title="鏁版嵁鏍煎紡閿欒"></i></td> + </tr> + </tbody> + </table> + </div> + </div> + <div class="popup-footer"> + <input type="button" class="mrr8" name="" id="btn_set" value="鍙傛暟璁剧疆" > <!-- 鍙傛暟璁剧疆 --> + </div> + </div> + + <!-- 瀛樺偍set-curr.html鐨勪俊鎭� --> + <div id="setCurrIframe"></div> + <div id="setCurrBtn"></div> <script type="text/html" id="setStatus"> {{# if(d.setCurr == 1){ }} - <button class="layui-btn layui-btn-sm layui-btn-warm">璁剧疆鏀剧數鍙傛暟鎴愬姛</button> + <button class="layui-btn layui-btn-sm">璁剧疆鏀剧數鍙傛暟鎴愬姛</button> {{# }else if(d.setCurr == 2){ }} <button class="layui-btn layui-btn-sm layui-btn-danger">璁剧疆鏀剧數鍙傛暟澶辫触</button> {{# }else { }} @@ -162,9 +253,26 @@ <script type="text/javascript" src="js/jquery-1.8.3.js"></script> <script type="text/javascript" src="js/echarts.js"></script> <script type="text/javascript" src="jqueryui/jquery-ui.min.js"></script> + <script type="text/javascript" src="js/popup.js"></script> <script type="text/javascript" src="src/layui.js"></script> <script type="text/javascript" src="pages/js/mylayui.js"></script> + <script type="text/javascript" src="js/whyc-jqueryui.js"></script> + <script type="text/javascript" src="pages/js/common.js"></script> <script type="text/javascript"> + var BTS_popup = new Popup($('#bts')); + // 鍏呮斁鐢靛脊鍑烘璁剧疆 + $(function() { + // 鍒濆鍖朾ts寮瑰嚭妗� + $('#bts').find('.close').bind('click', function() { + BTS_popup.hidePopup(); // 闅愯棌bts寮瑰嚭妗嗗拰閬僵灞� + }); + + // 绐楀彛澶у皬鏀瑰彉 + $(window).resize(function() { + BTS_popup.hidePopup(); // 闅愯棌bts寮瑰嚭妗嗗拰閬僵灞� + }); + }); + layui.use(['form', 'table', 'layer', 'element', 'laytpl'], function() { var table = layui.table; // 鑾峰彇琛ㄦ牸妯″潡 var form = layui.form; // 鑾峰彇琛ㄥ崟妯″潡 @@ -430,6 +538,7 @@ var layuiTbl = new LayuiTbl(tOptions, layui, laytpl, table.cache.pageTbl); // 鐐瑰嚮娣诲姞鐢垫睜缁� + $('#setCurrIframe').data('setCurr', []); $('#batchAdd').click(function() { var structData = structAddData(); // 鍒ゆ柇鏄惁閫夋嫨瑕佹坊鍔犵殑鍐呭 @@ -437,7 +546,7 @@ layer.msg(structData.msg); return; } - + $('#setCurrIframe').data('setCurr', []); // 寮瑰嚭璁剧疆閫夋嫨绛涢�夋潯浠� search(structData); }); @@ -512,6 +621,7 @@ } // 鐐瑰嚮鎵归噺璁剧疆鏀剧數鐢垫祦鍙傛暟 + var pageIframe = ""; $('#batchSetCurr').click(function() { var checkStatus = table.checkStatus('pageTbl'); var data = checkStatus.data; @@ -519,16 +629,341 @@ layer.msg('璇烽�夋嫨瑕佽缃殑鏈烘埧'); return; } - // console.log(data); - // 璁剧疆鏀剧數鍙傛暟 - getDisCurrParam(data); + + setBtsPopup(); // 璁剧疆BTS闈㈡澘鐨勫垵濮嬪�� + BTS_popup.showPopup(); // 鏄剧ずBTS闈㈡澘 + + }); + + var btsCmd = GLOBAL.CMD.BTS; // 鑾峰彇BTS鐨凜MD + var setParamCmd = btsCmd.setDischargeParm; // 璁剧疆鍙傛暟鐨刢md + var startTest = btsCmd.start; + // 鐐瑰嚮鏀剧數鍙傛暟璁剧疆椤甸潰璁剧疆鎸夐挳 + $('#btn_set').click(function() { + if($(this).hasClass('whyc-btn-disabled')) { + layer.msg('瀛樺湪涓嶅悎娉曠殑鏁版嵁'); + return; + } + + var checkStatus = table.checkStatus('pageTbl'); + var data = checkStatus.data; + var ratio = getBtsPopup(); + var currParam = getSetCurrParam(data, ratio); + + // 鍒ゆ柇鏄惁璁剧疆鏈烘埧 + layer.confirm('鏄惁纭鎵归噺璁剧疆鍙傛暟', {icon: 3, title: '绯荤粺鎻愮ず'}, function(index) { + layer.close(index); + ajaxSetParam(currParam); + }); + }); + + // 璇锋眰璁剧疆鍙傛暟 + function ajaxSetParam(param) { + var load = layer.load(1); + // 璇锋眰鍚庡彴 + $.ajax({ + type: 'post' + ,async: true + ,url: 'Fbs9100_setparamAction_action_updatePro' + ,data: 'json='+JSON.stringify(param) + ,dataType: 'json' + ,success: function(res) { + console.log(res); + var rs = JSON.parse(res.result); + if(rs.code == 1) { + layer.msg('璁剧疆瀹屾垚锛�'); + BTS_popup.hidePopup(); // 鍏抽棴闈㈡澘 + var data = rs.data; + console.log(data); + var rsList = []; + for(var i=0; i<data.length; i++) { + var _data = data[i]; + var _temp = {'doThings':''}; + if(_data.num==1) { + _temp.setCurr = 1; + }else { + _temp.setCurr = 2; + } + rsList.push(_data); + layuiTbl.updateTr(i, _temp); + } + + $('#setCurrIframe').data('setCurr', rsList); + }else { + layer.msg('淇敼澶辫触'); + } + } + ,complete: function() { + layer.close(load); + } + }); + } + + + // 鏋勯�犳壒閲忚缃斁鐢靛弬鏁扮殑鏂规硶 + function getSetCurrParam(data, ratio) { + var rs = []; + for(var i=0; i<data.length; i++) { + var _data = data[i]; + var disCurr = getDisCurr(_data.MonCapStd, ratio.hourrate); // 灏忔椂鐜� + var chargeCurr = getChargeCurr(_data.MonCapStd, ratio.chargeCurrPer); // 鍏呯數鐢垫祦 + var groupVolLow = getGroupVolLow(_data.MonVolStd, _data.MonCount, ratio.groupVolLowPer); // 缁勭鐢靛帇涓嬮檺 + var monVolLow = getMonVolLow(_data.MonVolStd, ratio.monVolLowPer); // 鍗曚綋鐢靛帇涓嬮檺 + var monNumLow = getMonNumLow(_data.MonCount, ratio.monNumLow); // 鍗曚綋鏁伴噺涓嬮檺 + var disCap = getDisCap(_data.MonCapStd, ratio.disCapPer); // 鏀剧數瀹归噺 + var temp= { + num: 0 + ,dev_id: _data.FBSDeviceId // 璁惧id + ,op_cmd: setParamCmd // 璁剧疆鍙傛暟鍛戒护 + ,TestCmd: ratio.testType // 娴嬭瘯绫诲瀷 + ,HourRate: ratio.hourrate // 灏忔椂鐜� + ,DisCurr: disCurr // 鏀剧數鐢垫祦 + ,DisCap: disCap // 鏀剧數瀹归噺 + ,DisTime: ratio.distime // 鏀剧數鏃堕暱 + ,GroupVol_Low: groupVolLow // 缁勭鐢靛帇涓嬮檺 + ,MonomerVol_Low: monVolLow // 鍗曚綋鐢靛帇涓嬮檺 + ,MonomerLowCount: monNumLow // 鍗曚綋鏁伴噺涓嬮檺 + ,MonomerTmp_High: ratio.TempUpHighLimit // 娓╁害涓婇檺 + ,OnlineLowAction: ratio.OnlineVolLowAction // 鍦ㄧ嚎鐢靛帇浣庡鐞� + ,ChargeCurrSet: chargeCurr // 鍏呯數鐢垫祦 + ,DCVolHighLimit: ratio.DCVolHighLimit // 鍗囧帇涓婇檺 + ,BattGroupNum: _data.MonCount // 鐢垫睜涓暟 + } + + rs.push(temp); + } + + return rs; + } + + + + // 鑾峰彇鎵归噺璁剧疆鐨勫弬鏁� + function getBtsPopup() { + var temp={ + num: 0 + ,testType: $('#discharge_type').val() // 娴嬭瘯绫诲瀷 + ,distime: $('#distime').val() // 鏀剧數鏃堕暱 + ,hourrate: $('#hourrate').val() // 鏀剧數灏忔椂鐜� + ,disCapPer: $('#disCapPer').val() // 鏀剧數瀹归噺鐧惧垎姣� + ,monVolLowPer: $('#monVolLowPer').val() // 鍗曚綋鐢靛帇涓嬮檺鐧惧垎姣� + ,groupVolLowPer: $('#groupVolLowPer').val() // 缁勭鐢靛帇涓嬮檺鐧惧垎姣� + ,monNumLow: $('#monNumLow').val() // 鍗曚綋鏁伴噺鐧惧垎姣� + ,chargeCurrPer: $('#chargeCurrPer').val() // 鍏呯數鐢垫祦鐧惧垎姣� + ,DCVolHighLimit: $('#DCVolHighLimit').val() // 鍗囧帇涓婇檺 + ,TempUpHighLimit: $('#TempUpHighLimit').val() // 娓╁害涓婇檺 + ,OnlineVolLowAction: $('#OnlineVolLowAction').val() // 鍦ㄧ嚎鐢靛帇浣庡鐞� + }; + + return temp; + } + + + // 鑾峰彇鏀剧數鐢垫祦(鏍囩О瀹归噺鐨�*灏忔椂鐜�) + function getDisCurr(monCapStd, ratio) { + return monCapStd*ratio/100; + } + + // 鑾峰彇缁勭鐢靛帇涓嬮檺(鏍囩О鍗曚綋鐢靛帇*鍗曚綋鏁伴噺*鐧惧垎姣�) + function getGroupVolLow(monVolStd, monCount, ratio) { + return monVolStd*monCount*ratio/100; + } + + // 鑾峰彇鍗曚綋鐢靛帇涓嬮檺(鏍囩О鍗曚綋鐢靛帇*鐧惧垎姣�) + function getMonVolLow(monVolStd, ratio) { + return monVolStd*ratio/100; + } + + // 鍗曚綋鏁伴噺涓嬮檺(鍗曚綋鑺傛暟*鐧惧垎姣�) + function getMonNumLow(monCount, ratio) { + return Math.floor(monCount*ratio/100); + } + + // 鏀剧數瀹归噺(鏍囩О瀹归噺*鐧惧垎姣�) + function getDisCap(monCapStd, ratio) { + return monCapStd*ratio/100; + } + + // 鍏呯數鐢垫祦(鏍囩О瀹归噺*鐧惧垎姣�) + function getChargeCurr(monCapStd, ratio) { + return monCapStd*ratio/100; + } + + // 鏀剧數鏃堕暱distime + $('#distime').testVal({ + pattern: /^[0-9]+$/, + regVal: true, + min: 0, + max: 5940, + msg: '鍙栧�艰寖鍥�0~5940' }); + var regs = { + pattern: /^[0-9]+$/, + regVal: true, + min: 0, + max: 300, + msg: '鍙栧�艰寖鍥�0~300' + }; - // 鑾峰彇鏀剧數鍙傛暟 - function getDisCurrParam(data) { - console.log(data); - var data = GetHourRate(); + // 灏忔椂鐜� + $('#hourrate').testVal(regs); + + // 鏀剧數瀹归噺鐧惧垎姣� + $('#disCapPer').testVal(regs); + + // 鍗曚綋鐢靛帇涓嬮檺鐧惧垎姣� + $('#monVolLowPer').testVal(regs); + + // 缁勭涓嬮檺鐧惧垎姣� + $('#groupVolLowPer').testVal(regs); + + // 鍏呯數鐢垫祦鐧惧垎姣� + $('#chargeCurrPer').testVal(regs); + + // 鍗曚綋涓嬮檺鏁伴噺 + $('#monNumLow').testVal({ + pattern: /^[0-9]+$/, + regVal: true, + min: 0, + max: 100, + msg: '鍙栧�艰寖鍥�0~100' + }); + + // 鑾峰彇BTS闈㈡澘鐨勬墍鏈夋枃鏈 + $('#bts').on('input propertychange', 'input[type=text]', function() { + setBTSPopupStatus($(this).attr('id'), $(this).val()); + }); + + // 鏄剧ず宸茬粡淇敼鐨勫弬鏁� + $('#lookSetCurr').click(function() { + var rsList = $('#setCurrIframe').data('setCurr'); + + if(rsList.length == 0) { + layer.msg('鏆傛棤鏌ョ湅鍐呭,璇峰厛璁剧疆鏀剧數鍙傛暟!'); + return; + } + + // 鏄剧ず闈㈡澘 + layer.open({ + type: 2 + ,area: ['1200px', '500px'] + ,resize: false + ,content: 'iframe/setcurr.html' + }); + }); + + // 鍚姩娴嬭瘯 + $('#startTest').click(function() { + var rsList = $('#setCurrIframe').data('setCurr'); + if(rsList.length == 0) { + layer.msg('鏆傛棤鏃犳硶鍚姩,璇峰厛璁剧疆鏀剧數鍙傛暟!'); + return; + } + + // 鏄惁纭畾鍚姩 + layer.confirm('鏄惁纭畾鍚姩娴嬭瘯', {icon: 3, title: '绯荤粺鎻愮ず'}, function(index) { + var param = getStartTestParam(rsList); + // 鍚姩娴嬭瘯 + ajaxStartTest(param); + }); + + }); + + // 鏋勯�犲惎鍔ㄦ祴璇曠殑鍙傛暟 + function getStartTestParam(param) { + for(var i=0; i<param.length; i++) { + param[i].op_cmd = startTest; + param[i].num = 0; + } + + return param; + } + + // 鍚姩娴嬭瘯璇锋眰 + function ajaxStartTest(param) { + var load = layer.load(1) + + // 璇锋眰鍚庡彴 + $.ajax({ + type: 'post' + ,async: true + ,url: 'Fbs9100_setparamAction_action_updatePro_dis' + ,data: 'json='+JSON.stringify(param) + ,dataType: 'json' + ,success: function(res) { + var rs = JSON.parse(res.result); + if(rs.code == 1) { + var data = rs.data; + console.log(data) + layer.msg('鍚姩鎴愬姛'); + }else { + layer.msg('鍚姩澶辫触'); + } + } + ,complete: function() { + layer.close(load); + } + }); + + + } + + // 鍒濆鍖栬缃弬鏁扮殑鎸夐挳 + var BTSBtn = { + disabled: function() { + $('#btn_set').addClass('whyc-btn-disabled'); // 璁剧疆鍙傛暟鎸夐挳鏃犳晥 + }, + active:function() { + $('#btn_set').removeClass('whyc-btn-disabled'); // 璁剧疆鍙傛暟鎸夐挳鏈夋晥 + } + }; + + // 璁剧疆鎵归噺璁剧疆鏀剧數鍙傛暟闈㈡澘 + function setBtsPopup() { + $('#distime').val(600); // 鏀剧數鏃堕暱 + $('#hourrate').val(10); // 灏忔椂鐜� + $('#disCapPer').val(60); // 鏀剧數瀹归噺鐧惧垎姣� + $('#monVolLowPer').val(90); // 鍗曚綋鐢靛帇涓嬮檺鐧惧垎姣� + $('#groupVolLowPer').val(90); // 缁勭鐢靛帇涓嬮檺鐧惧垎姣� + $('#monNumLow').val(25); // 鍗曚綋鏁伴噺鐧惧垎姣� + $('#chargeCurrPer').val(10); // 鍏呯數鐢垫祦鐧惧垎姣� + $('#DCVolHighLimit').val(56.4); // 鍗囧帇涓婇檺 + $('#TempUpHighLimit').val(60); // 娓╁害涓婇檺 + + // 鍒濆鍖栭潰鏉跨姸鎬� + $('#bts').find('input').removeClass('error-data'); // 绉婚櫎閿欒鎻愮ず + $('#bts').find('.error-img').removeClass('error-data'); // 绉婚櫎閿欒鎻愮ず + BTSBtn.active(); + } + + //鏍规嵁鏂囨湰妗嗗唴瀹硅缃�61850鐨勬寜閽姸鎬� + function setBTSPopupStatus(id, val) { + var textList = BTS_popup.popup.find('input[type=text]'); + var selectList = BTS_popup.popup.find('.popup-tbl select'); + var errorStatus = BTS_popup.popup.data().errorStatus; // 鑾峰彇鏄惁璇诲彇鍙傛暟澶辫触 + //console.log(BTS_popup.popup.data().attr); + // 璇诲彇璁惧鍙傛暟澶辫触 + if(errorStatus) { + BTSBtn.disabled(); + return false; // 缁撴潫鍑芥暟杩愯 + } + + // 閬嶅巻闈㈡澘涓嬬殑鎵�鏈夋枃鏈鏌ョ湅鏄惁鏈夐敊璇暟鎹� + var isDisabled = false; + textList.each(function() { + if($(this).hasClass('error-data')) { + isDisabled = true; + } + }); + + // 瀛樺湪閿欒鐨勬暟鎹� + if(isDisabled) { + BTSBtn.disabled(); + return false; // 缁撴潫鍑芥暟杩愯 + }else { + BTSBtn.active(); + } } }); </script> -- Gitblit v1.9.1