D:/workspace/chenjingjing/git/gx_tieta/gx_tieta/.gitignore
2019-01-18 2fe250ece8de95b3f70172fe5b45793ab6a3084a
gx_tieta/WebRoot/batt-station-update.jsp
@@ -68,25 +68,24 @@
                    <form action="" id="search_form">
                    <table>
                        <tr class="fWeight">
                             <td>省</td>                  <!-- 省 -->
                            <td>省</td>                  <!-- 省 -->
                            <td>市</td>                  <!-- 市 -->
                            <td>区/县</td>               <!-- 区/县 -->
                            <td><s:text name="Computer_name"/></td>                     <!-- 机房名称 -->
                            
                        </tr>
                        <tr>
                            <td>
                                <select id="station_name1">
                                </select>
                                <select id="station_name1"></select>
                            </td>
                            <td>
                                <select id="city">
                                </select>
                                <select id="city"></select>
                            </td>
                            <td>
                                <select id="station_name">
                                </select>
                                <select id="county"></select>
                            </td>
                            <td>
                                <select id="station_name"></select>
                            </td>
                        </tr>
                    </table>
@@ -97,11 +96,14 @@
            <div id="tbHead"></div>
            <!-- 表格滚动的部分 -->
            <div id="tbBrdw"></div>
            <!-- 按钮内容 -->
            <div id="paging">
               <select>
                  <option value="1">全省机房</option>
                  <option value="2">全市机房</option>
                  <option value="5">全区/县机房</option>
                  <option value="0">机房</option>
               </select>
                <a href="javascript:" class="add">添加<!--添加--></a>
                <a href="javascript:" id="update">升级<!-- 升级 --></a>
            </div>
@@ -120,7 +122,7 @@
              var tblStatus = new Array();    // 表格状态数组
              var tblOptsHd = new Array();    // 表格选项头部
              var tblOptsBd = new Array();  // 表格选项数组
              arrTh = ['机房ID', '机房名称','设备ID','设备名称','操作'];
              arrTh = ['机房ID', '机房名称','设备ID','设备名称','升级状态','读写状态','当前数据包','操作'];
              //arrTh = ['<s:text name="Maintenance_area"/>', '<s:text name="Computer_name"/>',  '<s:text name="Nominal_capacity"/>(AH)', '<s:text name="Actual_capacity"/>(AH)','<s:text name="Residual_capacity"/>(AH)', '<s:text name="real_time"/><s:text name="Current"/>(A)', '<s:text name="Power_cut"/><s:text name="Endurance"/><s:text name="Time"/>'];
              //tblOptsHd = ['编号', '选项', '是否选择'];
              tblOptsHd = ['<s:text name="Number"/>', '<s:text name="Options"/>', '<s:text name="IsChecked"/>'];
@@ -266,7 +268,12 @@
                    dfu_data_blocknum:1
                 };
                 var station = getSelectStation(temp.dev_id, findStationNamebyStationname1.stations);      
                 allUpdataList.push(
                    {
                       dev_id:temp.dev_id,
                       isNewAdd:true
                    }
                 );
                 $.ajax({    
                    type: "post",             
                    url: "Fbs9100s_dfu_stateAction_action_add",            
@@ -275,7 +282,7 @@
                    data:"json = "+JSON.stringify(temp),   
                    success: function(data){
                       stations.push(station);
                       console.info(stations);
                       //console.info(stations);
                       var _arrTd = new Array();
                       for(var i = 0 ; i<stations.length;i++){
                          var st = stations[i];
@@ -283,8 +290,9 @@
                          _arrTd.push(st.StationName);
                          _arrTd.push(st.FBSDeviceId);
                          _arrTd.push(st.FBSDeviceName);
                          _arrTd.push('等待升级');
                          _arrTd.push('');
                          _arrTd.push(0);
                          _arrTd.push('<i class="fa fa-refresh" title="升级设备" onclick="(updateStationVersion('+st.FBSDeviceId+'))"></i>');
                       }
                       createAllTbl(tblHd, tblBd, arrTh, _arrTd, tblStatus);
@@ -295,7 +303,7 @@
              }
              
             
              // 省-市-机房-电池组
            // 省-市-机房-电池组
            $(document).ready(function(){
               //页面加载时查询维护区中的枢纽类型
               $.post("User_battgroup_baojigroup_battgroupAction!serchStationName1InGroup",null,function(data){
@@ -351,16 +359,61 @@
                       }else {
                          $select.text('').html('<option>暂无可测市</option>');
                       }
                       findStationNamebyStationname1();
                       findCounty();
                    }
                });
            }
            // 查询区/县
            function findCounty() {
               var tmp = {
                  StationName1:$("#station_name1").val(),
                  StationName2:$("#city").val(),
               };
               // 查询区县
               $.ajax({
                  type: 'post',
                  async: true,
                  url: "BattInfAction!serchStationName5",
                  data: "json="+JSON.stringify(tmp),
                  success:function(data) {
                     var rs = JSON.parse(data.result);
                     var $select = $("#county");
                     if(rs.code==1){
                        var _data = rs.data;
                        // 根据数据构造生成下拉列表的数据
                        var optsList = [];
                        for(var i=0;i<_data.length;i++){
                           var __data = _data[i];
                           var _attr = {
                              StationId: __data.StationId
                           };
                           var tmp = getOptionsData(__data.StationName5, __data.StationName5, __data, _attr);
                           optsList.push(tmp);
                        }
                        // 根据数据生成下拉列表
                        createOptions($select, optsList, true);
                     }else{
                        $select.text('').html('<option>暂无可测机房站点</option>');
                     }
                     findStationNamebyStationname1();
                  }
               });
            }
            //当维护区的值变换时更新市
            $('#station_name1').change(function(){
               findCity();
            });
            //当维护区的值变换时更新机房站点
            $('#city').change(function(){
               findCounty();
            });
            //当区/县的值变换时更新机房站点
            $('#county').change(function(){
               findStationNamebyStationname1();
            });
            
@@ -369,7 +422,8 @@
               findStationNamebyStationname1.stations = new Array();
               var tmp = {
                  StationName1:$("#station_name1").val(),
                  StationName2:$("#city").val()
                  StationName2:$("#city").val(),
                  StationName5:$("#county").val()
               };
               //var selectvalue=$("#station_name1 option:selected").val();
               //alert(selectvalue);
@@ -437,11 +491,161 @@
              }
              return undefined;
           }
         var allUpdataList = new Array();
         var myTimeOutThreath;
         fulshMyTable();            //更新表格
         //更新表格线程
         function fulshMyTable(){
            //console.info(allUpdataList);
            var temp = new Array();
            for(var i =0 ; i< allUpdataList.length ; i++){
               temp.push(allUpdataList[i].dev_id);
            }
            if(temp.length > 0){
               updateDevUpdate(temp,fulshMyTable);
            }else{
               window.clearTimeout(myTimeOutThreath);
               myTimeOutThreath = window.setTimeout(fulshMyTable,4000);
            }
         }
         //更新设备更新的表格
         function updateDevUpdate(temp,callback){
            //console.info(temp);
            $.ajax({
                 type: "post",
                 url: "Fbs9100s_dfu_stateAction_action_serchByCondition",
                 async:true,
                 dataType:'json',
                 data:"json = "+JSON.stringify(temp),
                 success: function(data){
                    var list = new Array();
                    var rs = JSON.parse(data.result);
                    //console.info(rs);
                    if(rs.code == 1 && rs.data.length>0){
                       for(var i=0;i<rs.data.length;i++){
                          var _data = rs.data[i];
                          var dev_stat = createDevInfo(_data.dev_id,allUpdataList);
                          if(dev_stat){
                             if(_data.dfu_en == 1){
                                allUpdataList[dev_stat.row].isNewAdd = false;               //判断是否是第一次添加数据
                             }
                             var updateState  = {
                                dev_id : dev_stat.dev_id,
                                row:dev_stat.row,
                                col:4,
                                val:_data.dfu_en == 1?'升级中':dev_stat.isNewAdd?'等待升级':_data.dfu_en == 0?'升级完成':'',
                             };
                             list.push(updateState);                  //升级状态
                             var RWState  = {
                                dev_id : dev_stat.dev_id,
                                row:dev_stat.row,
                                col:5,
                                val:_data.dfu_wr_stat == 1?'写':_data.dfu_wr_stat == 2?'读':_data.dfu_wr_stat == 3?'完成':'',
                             };
                             list.push(RWState);                     //读写状态
                             var dataNum  = {
                                dev_id : dev_stat.dev_id,
                                row:dev_stat.row,
                                col:6,
                                val:_data.dfu_data_blocknum,
                             };
                             list.push(dataNum);                     //数据包数
                          }
                       }
                    }else{
                    }
                    updataTbl($('#tbHead'), $('#tbBrdw'), list);
                    window.clearTimeout(myTimeOutThreath);
                  myTimeOutThreath = window.setTimeout(callback,4000);
                 },error:function(e){
                    window.clearTimeout(myTimeOutThreath);
                  myTimeOutThreath = window.setTimeout(callback,4000);
                 }
             });
         }
         //获取指定设备的行数以及设备
         function createDevInfo(dev_id,list){
            var temp;
            if(dev_id && list && list.length > 0){
               for(var i=0;i<list.length;i++){
                  if(dev_id == list[i].dev_id){
                     var temp = {
                        dev_id:dev_id,
                        row:i,
                        isNewAdd:list[i].isNewAdd
                     };
                     break;
                  }
               }
            }
            return temp;
         }
         var myParam = {
            num:0,            //1省(文本值)           2:市(文本值)         5:区县(文本值)         0:机房  (设备id)
            StationName:'910000001'
         };
         //添加设备到表格
         function addStationOnTable(temp){
            $.ajax({
                 type: "post",
                 url: "Fbs9100s_dfu_stateAction_action_addPro",                  //将当前需要升级的设备添加到数据库表中
                 async:true,
                 dataType:'json',
                 data:"json = "+JSON.stringify(temp),
                 success: function(data){
                    var rs = JSON.parse(data.result);
                    //console.info(rs);
                    if(rs.code == 1 && rs.data.length>0){
                       searchAddStationInfo(temp);                           //添加成功的时候查询当前已经添加到数据库表中的机房信息
                    }else{
                       console.info('添加失败');
                    }
                 },error:function(e){
                    console.info('添加失败');
                 }
             });
         }
         //查询添加到表格中的设备信息
         function searchAddStationInfo(temp){
            $.ajax({
                 type: "post",
                 url: "Fbs9100s_dfu_stateAction_action_serchInserStation",
                 async:true,
                 dataType:'json',
                 data:"json = "+JSON.stringify(temp),
                 success: function(data){
                    var rs = JSON.parse(data.result);
                    console.info(rs);
                    if(rs.code == 1 && rs.data.length>0){
                                                     //解析数据并且生成表格
                    }else{
                    }
                 },error:function(e){
                 }
             });
         }
        </script>
    </body>
</html>