didiyu
2018-11-29 12c384847af42270e2ba167467173a928a59ded2
gx_tieta/WebRoot/js/dischargetest/battData.js
New file
@@ -0,0 +1,297 @@
// 设置电池参数
;(function($, window, document, gl, undefined) {
   // 设置battInfoPopup
   gl.namespace('battInfoPopup');
   // 模块依赖GLOBAL.CMD.batt模块
   var cmd = GLOBAL.CMD.batt;
   // 数据校验
   function testVal() {
      // 电池标称容量
      $('#battInfo_nom_cap').testVal({
         pattern: /^[0-9]{1,4}(\.[0-9]{0,1})?$/,
         regVal: true,
         min: 1,
         max: 6000,
         msg: '取值范围1~6000.0'
      });
      // 电池标称内阻
      $('#battInfo_nom_res').testVal({
         pattern: /^[0-9]{1,4}$/,
         regVal: true,
         min: 1,
         max: 60000,
         msg: '取值范围1~60000'
      });
      // 电池组数
      $('#battInfo_batt_num').testVal({
         pattern: /^[0-9]{1,4}$/,
         regVal: true,
         min: 1,
         max: 2,
         msg: '取值范围1~2'
      });
      // 每组电池单体数量
      $('#battInfo_batt_mon_num').testVal({
         pattern: /^[0-9]{1,4}$/,
         regVal: true,
         min: 1,
         max: 300,
         msg: '取值范围1~300'
      });
      // 单体标称电压
      $('#battInfo_batt_nom_vol').testVal({
         pattern: /^[0-9]{1,4}(\.[0-9]{0,1})?$/,
         regVal: true,
         min: 0.1,
         max: 20,
         msg: '取值范围0.1~20.0'
      });
      // 电池组端标称电压
      $('#battInfo_group_nom_vol').testVal({
         pattern: /^[0-9]{1,4}(\.[0-9]{0,1})?$/,
         regVal: true,
         min: 0.1,
         max: 600,
         msg: '取值范围0.1~600.0'
      });
      // 电池标称温度
      $('#battInfo_batt_nom_temp').testVal({
         pattern: /^[0-9]{1,4}(\.[0-9]{0,1})?$/,
         regVal: true,
         min: 0.1,
         max: 60,
         msg: '取值范围0.1~60.0'
      });
      // 电池浮充电压阀值
      $('#battInfo_batt_float_vol').testVal({
         pattern: /^[0-9]{1,4}(\.[0-9]{0,1})?$/,
         regVal: true,
         min: 0.1,
         max: 60,
         msg: '取值范围0.1~60.0'
      });
      // 电池浮充电流阀值
      $('#battInfo_batt_float_curr').testVal({
         pattern: /^[0-9]{1,4}(\.[0-9]{0,1})?$/,
         regVal: true,
         min: 0.1,
         max: 30,
         msg: '取值范围0.1~30.0'
      });
      // 在线电压低阀值
      $('#battInfo_online_low_vol').testVal({
         pattern: /^[0-9]{1,4}(\.[0-9]{0,1})?$/,
         regVal: true,
         min: 0.1,
         max: 60,
         msg: '取值范围0.1~60.0'
      });
      // 电池组连接类型
      $('#battInfo_batt_link_type').testVal({
         pattern: /^[0-9]{1,4}$/,
         regVal: true,
         min: 0,
         max: 1,
         msg: '取值范围0~1'
      });
      // 内容改变设置值
      $('#battInfo_popup input[type=text]').on('input propertychange focus', function() {
         setEnStatus();
      });
   }
   // 将testVal添加到battInfoPopup命名空间下
   gl.battInfoPopup.testVal = testVal;
   // 查询机房的信息
   function search(temp, binf, callback) {
      // 查询电池参数
      $.ajax({
         type: 'post'
         ,async: true
         ,url:'Fbs9100_battparamAction_action_serchByCondition'
         ,data: 'json='+JSON.stringify(temp)
         ,dataType: 'json'
         ,success: function(res) {
            var rs = JSON.parse(res.result);
            init();
            // 设置面板信息
            setParam(rs, binf);
            if(isFunction(callback)) {
               callback(rs, binf);
            }
         }
      });
   }
   // 将search添加到battInfoPopup命名空间下
   gl.battInfoPopup.search = search;
   // 读取信息
   function read(callback) {
      var param = {
         dev_ip: $('#battInfo_ip').val()                  // 设备的ip
         ,dev_id: $('#battInfo_dev_id').val()               // 设备的id
         ,num: cmd.get                              // 获取的命令
         ,STD_CAP: 0               // 电池标称容量(AH)
         ,STD_RES: 0               // 电池标称内阻(uΩ)
         ,BattGroupCount: 0         // 电池组数
         ,EachGroupBattCount: 0    // 每组电池单体数量
         ,MonomerVol: 0         // 单体标称电压(V)
         ,GroupVol: 0         // 电池组端标称电压(V)
         ,BattTemp: 0         // 电池标称温度(℃)
         ,FloatChargeVol: 0   // 电池浮充电压阀值(V)
         ,FloatChargeCurr: 0   // 电池浮充电流阀值(A)
         ,OnlineVolLow: 0    // 在线电压低阀值(V)
         ,GroupConnType: 0 // 电池组连接类型
      };
      param.num = cmd.get;
      // 读取电池参数
      $.ajax({
         type: 'post'
         ,async: true
         ,url:'Fbs9100_battparamAction_action_update'
         ,data: 'json='+JSON.stringify(param)
         ,dataType: 'json'
         ,success: function(res) {
            var rs = JSON.parse(res.result);
            // 根据读取到的信息设置面板的信息
            // setParam(rs);
            // 回调内容
            if(isFunction(callback)) {
               callback(rs);
            }
         }
      });
   }
   // 将read添加到battInfoPopup命名空间下
   gl.battInfoPopup.read = read;
   // 设置机房电池的信息
   function set(callback) {
      var param = getParam();
      //console.log(param);
      //return;
      // 设置电池参数
      $.ajax({
         type: 'post'
         ,async: true
         ,url:'Fbs9100_battparamAction_action_update'
         ,data: 'json='+JSON.stringify(param)
         ,dataType: 'json'
         ,success: function(res) {
            var rs = JSON.parse(res.result);
            // 回调内容
            if(isFunction(callback)) {
               callback(rs);
            }
         }
      });
   }
   // 将set添加到battInfoPopup命名空间下
   gl.battInfoPopup.set = set;
   // 设置面板的数据
   function setParam(res, binf) {
      if(binf) {
         $('#battInfo_dev_id').val(binf.FBSDeviceId);      // 设备的id
         $('#battInfo_ip').val(binf.StationIp);            // 设备的ip
         $('#battInfo_fbs_id').val(binf.FBSDeviceId);      // 设备的id
         $('#battInfo_home_name').val(binf.StationName);      // 机房的名称
      }
      if(res.code == 0) {
         $('#battInfo_nom_cap').val(1);      // 电池标称容量(AH)
         $('#battInfo_nom_res').val(1);      // 电池标称内阻(uΩ)
         $('#battInfo_batt_num').val(1);      // 电池组数
         $('#battInfo_batt_mon_num').val(1); // 每组电池单体数量
         $('#battInfo_batt_nom_vol').val(0);   // 单体标称电压(V)
         $('#battInfo_group_nom_vol').val(0);// 电池组端标称电压(V)
         $('#battInfo_batt_nom_temp').val(0);// 电池标称温度(℃)
         $('#battInfo_batt_float_vol').val(0);// 电池浮充电压阀值(V)
         $('#battInfo_batt_float_curr').val(0);// 电池浮充电流阀值(A)
         $('#battInfo_online_low_vol').val(0); // 在线电压低阀值(V)
         $('#battInfo_batt_link_type').val(1); // 电池组连接类型
      }else {
         var data = res.data[0];
         $('#battInfo_nom_cap').val(data.STD_CAP);      // 电池标称容量(AH)
         $('#battInfo_nom_res').val(data.STD_RES);      // 电池标称内阻(uΩ)
         $('#battInfo_batt_num').val(data.BattGroupCount);      // 电池组数
         $('#battInfo_batt_mon_num').val(data.EachGroupBattCount); // 每组电池单体数量
         $('#battInfo_batt_nom_vol').val(data.MonomerVol);   // 单体标称电压(V)
         $('#battInfo_group_nom_vol').val(data.GroupVol);// 电池组端标称电压(V)
         $('#battInfo_batt_nom_temp').val(data.BattTemp);// 电池标称温度(℃)
         $('#battInfo_batt_float_vol').val(data.FloatChargeVol);// 电池浮充电压阀值(V)
         $('#battInfo_batt_float_curr').val(data.FloatChargeCurr);// 电池浮充电流阀值(A)
         $('#battInfo_online_low_vol').val(data.OnlineVolLow); // 在线电压低阀值(V)
         $('#battInfo_batt_link_type').val(data.GroupConnType); // 电池组连接类型
      }
   }
   // 获取面板中的信息
   function getParam() {
      var rs = {};
      rs.dev_ip = $('#battInfo_ip').val();                  // 设备的ip
      rs.dev_id = $('#battInfo_dev_id').val();               // 设备的id
      rs.num = cmd.set;                                 // 设置的命令
      rs.STD_CAP = $('#battInfo_nom_cap').val();               // 电池标称容量(AH)
      rs.STD_RES = $('#battInfo_nom_res').val();               // 电池标称内阻(uΩ)
      rs.BattGroupCount = $('#battInfo_batt_num').val();         // 电池组数
      rs.EachGroupBattCount = $('#battInfo_batt_mon_num').val();    // 每组电池单体数量
      rs.MonomerVol = $('#battInfo_batt_nom_vol').val();         // 单体标称电压(V)
      rs.GroupVol = $('#battInfo_group_nom_vol').val();         // 电池组端标称电压(V)
      rs.BattTemp = $('#battInfo_batt_nom_temp').val();         // 电池标称温度(℃)
      rs.FloatChargeVol = $('#battInfo_batt_float_vol').val();   // 电池浮充电压阀值(V)
      rs.FloatChargeCurr = $('#battInfo_batt_float_curr').val();   // 电池浮充电流阀值(A)
      rs.OnlineVolLow = $('#battInfo_online_low_vol').val();    // 在线电压低阀值(V)
      rs.GroupConnType = $('#battInfo_batt_link_type').val(); // 电池组连接类型
      return rs;
   }
   // 初始化表格内容
   function init(data) {
      //console.log(battInfo_popup);
      var _popup = battInfo_popup.popup;
      _popup.find('input[type=text]').removeClass('error-data');
      _popup.find('.status-change-set').removeClass('whyc-btn-disabled');
      _popup.data = data;
   }
   // 设置面板的设置按钮的状态
   function setEnStatus() {
      var _popup = battInfo_popup.popup;
      var iptList = _popup.find('input[type=text]');
      var setEn = _popup.find('.status-change-set');
      var isError = false;
      iptList.each(function() {
         if($(this).hasClass('error-data')) {
            isError = true;
         }
      });
      if(isError) {
         _popup.find('.status-change-set').addClass('whyc-btn-disabled');
      }else {
         _popup.find('.status-change-set').removeClass('whyc-btn-disabled');
      }
   }
})(jQuery, window, document, GLOBAL);