81041
2019-01-11 68dfe47cf6a32ac3560fc4b64e11eaa47c3bb6e7
gx_tieta/WebRoot/ex-battinfo.jsp
@@ -45,6 +45,7 @@
               <ul class="layui-tab-title">
                  <li class="layui-this">待审核<span class="layui-badge" id="applyNum">0</span></li>
                  <li>待验收<span class="layui-badge" id="acceptNum">0</span></li>
                  <li>已验收<span class="layui-badge" id="acceptedNum">0</span></li>
               </ul>
               <div class="layui-tab-content">
                  <div class="layui-tab-item layui-show">
@@ -54,6 +55,10 @@
                  <div class="layui-tab-item">
                     <!-- 表格内容 -->
                     <table id="acceptTbl" lay-filter="acceptTbl"></table>
                  </div>
                  <div class="layui-tab-item">
                     <!-- 表格内容 -->
                     <table id="acceptedTbl" lay-filter="acceptedTbl"></table>
                  </div>
               </div>
            </div>
@@ -77,15 +82,25 @@
            </div>
         </div>
        </div>
        <!-- 机房面板信息面板信息 -->
        <div id="homeInfoIframeData"></div>
        <!-- 审核操作栏 -->
        <script type="text/html" id="battGrouptools">
         <a class="layui-btn layui-btn-xs" lay-event="adopt">审核</a>
      </script>
      <script type="text/html" id="acceptBattGroupTools">
         {{# if(d.check_en !=2){ }}
            <a class="layui-btn layui-btn-xs layui-btn-disabled" lay-event="accepted">验收</a>
         {{# if(d.check_en ==0){ }}
            <a class="layui-btn layui-btn-xs layui-btn-disabled" lay-event="accepted">待申请</a>
         {{# }else if(d.check_en ==1) { }}
            <a class="layui-btn layui-btn-xs layui-btn-disabled" lay-event="accepted">已验收</a>
         {{# }else { }}
            <a class="layui-btn layui-btn-xs layui-bg-blue" lay-event="accept">验收</a>
         {{# } }}
         <a class="layui-btn layui-btn-xs layui-bg-blue" lay-event="look">机房环境</a>
         <a class="layui-btn layui-btn-xs layui-bg-blue" lay-event="control">实时查询</a>
      </script>
      <script type="text/html" id="acceptedBattGroupTools">
         <a class="layui-btn layui-btn-xs layui-bg-blue" lay-event="look">机房环境</a>
         <a class="layui-btn layui-btn-xs layui-bg-blue" lay-event="control">实时查询</a>
      </script>
      <script type="text/html" id="applyEn">
@@ -122,13 +137,22 @@
        <script type="text/javascript" src="src/layui.js"></script>
        <script type="text/javascript" src="pages/js/mylayui.js"></script>
        <script type="text/javascript" src="pages/js/common.js"></script>
        <script type="text/javascript" src="pages/js/pages/homeInfo.js"></script>
        <script type="text/javascript">
           var permits;
         <%   Object obj=session.getAttribute("permits");
            if(obj!=null){
               String permits =obj.toString();  %>
               permits=<%=permits%>;
               //console.info(json);
         <%   }   %>
           layui.use(['form', 'table', 'layer', 'element'], function() {
              /* 页面导入layui模块 */
              var table = layui.table;      // 获取表格模块
              var form = layui.form;         // 获取表单模块
              var layer = layui.layer;      // 获取弹出框模块
              var element = layui.element;   // 获取元素操作模块
              var laytpl = layui.laytpl;      // 获取模板操作模块
              
              /* 分页信息模块 */
            var Page = new TblPage();   // 实例化TblPage对象--验收的的审核信息
@@ -136,6 +160,9 @@
            
            var acceptPage = new TblPage();      // 实例化TblPage对象--待验收的分页信息
            acceptPage.set(1, 0, 20);         // 初始化值
            var acceptedPage = new TblPage();   // 实例化TblPage对象--已验收的分页信息
            acceptedPage.set(1, 0, 20);         // 初始值
            
                // 页面dom对象
              var pagePage = new PagePage({
@@ -160,10 +187,13 @@
               // console.log(data.index);    //得到当前Tab的所在下标
               // console.log(data.elem);    //得到当前的Tab大容器
               tabsIndex = data.index;      // 标识显示的选项卡内容
               if(tabsIndex) {
               //console.log(tabsIndex);
               if(tabsIndex == 0) {
                  pagePage.init(Page, search);            // 待审核
               }else if(tabsIndex == 1){
                  pagePage.init(acceptPage, acceptSearch);   // 待验收
               }else {
                  pagePage.init(Page, search);         // 待审核
               }else if(tabsIndex == 2) {
                  pagePage.init(acceptedPage, acceptedSearch);            // 已验收
               }
               $(window).resize();
            });
@@ -225,6 +255,9 @@
            // 生成表格数据
            table.render(tOptions);
            
            // 检测是否可以审核权限
            var apprPermit = isHasPermit('install_appr_permit', permits);
            changeApprTbl(apprPermit, tOptions);
            
            // 待验收的表格 
            var acceptOptions = {
@@ -276,7 +309,7 @@
                  ,{field:'apply_date', title:'申请日期', align:'center', width: 260}
                  ,{field:'confirm_name', title:'审核人', align:'center', width: 120}
                  ,{field:'check_uname', title:'验收人', align:'center', width: 120}
                   ,{field:'doThings', fixed: 'right', title:'验收操作', align: 'center', toolbar: '#acceptBattGroupTools', width:180}
                   ,{field:'doThings', fixed: 'right', title:'验收操作', align: 'center', toolbar: '#acceptBattGroupTools', width:240}
                ]]
               ,data:[]
               ,limit: 10000
@@ -287,6 +320,74 @@
            // 生成表格数据
            table.render(acceptOptions);
            
            // 检测验收的权限
            var checkPermit = isHasPermit('install_check_permit', permits);
            changeCheckTbl(checkPermit, acceptOptions);
            // 待验收的表格
            var acceptedOptions = {
               elem: '#acceptedTbl'
               ,toolbar: false
               ,defaultToolbar: []
               ,cellMinWidth: 80
               ,cols: [[
                  {type:'checkbox',fixed: 'left'}
                  ,{field:'StationId', title:'机房编号', align:'center', width: 120}
                  ,{field:'StationName1', title:'省', align:'center', width: 100}
                  ,{field:'StationName2', title:'市', align:'center', width: 100}
                  ,{field:'StationName5', title:'区县', align:'center', width: 100}
                  ,{field:'StationName3', title:'机房名称', align:'center', width: 360}
                  ,{field:'StationName4', title:'设备名称', align:'center', width: 150}
                  ,{field:'StationIp', title:'机房ip', align:'center', width: 160}
                  ,{field: 'FBSDeviceId', title: 'FBS设备ID(重要)', align: 'center', width: 160}
                  ,{field:'FbsDeviceIp', title:'FBS设备IP(重要)', align:'center', width: 160}
                  ,{field:'FbsDeviceIp_YM', title:'子网掩码', align:'center', width: 160}
                  ,{field:'FbsDeviceIp_WG', title:'网关', align:'center', width: 160}
                  ,{field:'FBSDeviceName', title:'FBS设备名称', align:'center', width: 160}
                  ,{field:'GroupIndexInFBSDevice', title:'FBS设备索引', align:'center', width: 160}
                  ,{field:'BattGroupId', title:'电池组ID', align:'center', width: 160}
                  ,{field:'BattGroupNum', title:'机房内电池组编号', align:'center', width: 160}
                  ,{field:'BattGroupName', title:'电池组名称', align:'center', width: 160}
                  ,{field:'FloatVolLevel', title:'浮充电压阀值', align:'center', width: 160}
                  ,{field:'OfflineVolLevel', title:'离线电压阀值', align:'center', width: 160}
                  ,{field:'BattFloatCurrent', title:'浮充阀值', align:'center', width: 100}
                  ,{field:'MonCount', title:'单体数量', align:'center', width: 100}
                  ,{field:'MonCapStd', title:'标称容量', align:'center', width: 100}
                  ,{field:'MonVolStd', title:'标称单体电压', align:'center', width: 140}
                  ,{field:'MonResStd', title:'标称单体内阻', align:'center', width: 140}
                  ,{field:'MonSerStd', title:'标称单体电导', align:'center', width: 140}
                  ,{field:'MonVolLowToAvg', title:'单体电压次低偏移量', align:'center', width: 140}
                  ,{field:'Load_curr', title:'负载电流', align:'center', width: 140}
                  ,{field:'DisCurrMax', title:'最大核容电流', align:'center', width: 140}
                  ,{field:'station_phone', title:'基站手机号码', align:'center', width: 140}
                  ,{field:'BattProducer', title:'电池品牌', align:'center', width: 140}
                  ,{field:'BattModel', title:'电池型号', align:'center', width: 260}
                  ,{field:'productDate', title:'电池生产日期', templet: '#produceTime', align:'center', width: 140}
                  ,{field:'useDate', title:'投入使用日期', templet: '#useTime', align:'center', width: 140}
                  ,{field:'isInstall', title:'安装状态', templet: '#isInstall', align:'center', width: 140}
                  ,{field:'install_user', title:'设备安装人员', align:'center', width: 260}
                  ,{field:'check_en', title:'验收状态', templet: '#acceptEn',align:'center', width: 120}
                  ,{field:'latitude', title:'经度', align:'center', width: 150}
                  ,{field:'longitude', title:'纬度', align:'center', width: 150}
                  ,{field:'address', title:'地址', align:'center', width: 230}
                  ,{field:'apply_name', title:'申请人', align:'center', width: 120}
                  ,{field:'apply_date', title:'申请日期', align:'center', width: 260}
                  ,{field:'confirm_name', title:'审核人', align:'center', width: 120}
                  ,{field:'check_uname', title:'验收人', align:'center', width: 120}
                   ,{field:'doThings', fixed: 'right', title:'验收操作', align: 'center', toolbar: '#acceptedBattGroupTools', width:200}
                ]]
               ,data:[]
               ,limit: 10000
                ,page: false
                ,height: 'full-235'
            };
            // 生成表格数据
            table.render(acceptedOptions);
            // 更新表格的对象
              var layuiTbl = new LayuiTbl(acceptOptions, layui, laytpl, table.cache.acceptTbl);
            
            // 审批操作栏
            table.on('tool(pageTbl)', function(obj) {
@@ -312,9 +413,27 @@
                  case 'control':
                     controlPage(obj.data);
                  break;
                  case 'look':
                     lookHomeInfo(obj.data);
                  break;
               }
            });
            
            // 已验收操作栏
            table.on('tool(acceptedTbl)', function(obj) {
               switch(obj.event) {
                  case 'accept':
                     acceptBattGroup(obj.data);
                  break;
                  case 'control':
                     controlPage(obj.data);
                  break;
                  case 'look':
                     lookHomeInfo(obj.data);
                  break;
               }
            });
            
            // 批量申请
            $('#exBattGroups').click(function() {
@@ -404,7 +523,7 @@
            function acceptBattGroup(data) {
               // 构造验收通过的机房的信息
               var temp = [createAcceptParam(data)];
               console.log(temp);
               // console.log(temp);
               // 是否却确认验收
               layer.confirm('是否确认验收', {icon: 3, title: '提示'}, function(index) {
                  layer.close(index);
@@ -453,6 +572,9 @@
                        
                        // 查询待验收后台数据
                        acceptSearch();
                        // 查询已验收机房的信息
                        acceptedSearch();
                     }else {
                        layer.msg('确认验收失败!');
                     }
@@ -468,13 +590,33 @@
            
            // 跳转到实时页面
            function controlPage(data) {
               console.log(data);
               // console.log(data);
               var home = data.StationName;
               var province = data.StationName1;
               var city = data.StationName2;
               var county = data.StationName5;
               var url = skipUrl('control.jsp',province,city,county,home);
               window.open(url);
            }
            // 查看机房信息
            function lookHomeInfo(data) {
               var sid = data.StationId;
               var tabC = [
                  {
                     type: 'env'
                     ,title: '基站环境短视频'
                     ,tshow: ''
                      ,cshow: ''
                   }
                   ,{
                      type: 'envImg'
                     ,title: '基站环境图集'
                     ,tshow: 'layui-this'
                      ,cshow: 'layui-show'
                   }
               ];
               showHomeInfoIframe(sid, tabC);
            }
            
            // 查询后台数据
@@ -495,7 +637,7 @@
                     var resData = [];
                     if(rs.code == 1) {
                        var data = rs.data;
                        // console.log(data);
                        //console.log(data);
                        // 遍历数据的值
                        for(var i=0; i<data.length; i++) {
                           var _data = data[i];
@@ -512,12 +654,11 @@
                     
                     // 生成表格数据
                     table.render(tOptions);
                     // 启动自动刷新
                     updateSearch();
                  }
                  ,complete: function() {
                     layer.close(load);
                     // 启动自动刷新
                     //updateSearch();
                  }
               });
            }
@@ -526,6 +667,7 @@
            function createSearchParam() {
               var temp = {
                  apply_en: 0
                  ,check_en: 100
                  ,binf: {
                     page: Page.getPage()
                  }
@@ -534,9 +676,10 @@
            }
            
            // 更新审查表格
            var updateSearchTimer;
            function updateSearch() {
               var temp = createSearchParam();
               clearInterval(updateSearch.timer);
               clearInterval(updateSearchTimer);
               // 查询后台
               $.ajax({
                  type: 'post'
@@ -548,27 +691,34 @@
                     //console.log(res);
                     var rs = JSON.parse(res.result);
                     var resData = [];
                     var isUpdateTbl = false;
                     //console.log(Page.all);
                     if(rs.code == 1) {
                        var data = rs.data;
                        // console.log(data);
                        //console.log(data);
                        // 遍历数据的值
                        for(var i=0; i<data.length; i++) {
                           var _data = data[i];
                           var _tmp = formaterResData(_data);
                           resData.push(_tmp);
                           Page.setAll(_data.apply_note);
                           if(_data.apply_note &&_data.apply_note != Page.all) {
                              Page.setAll(_data.apply_note);
                              isUpdateTbl = true;
                           }
                        }
                     }else {
                        Page.setAll(0);
                        isUpdateTbl = true;
                     }
                     $('#applyNum').text(Page.all);    // 设置徽章
                     tOptions.data = resData;   //  设置表格的数据
                     // 生成表格数据
                     table.reload('pageTbl', tOptions);
                     //console.log(isUpdateTbl);
                     if(isUpdateTbl) {
                        $('#applyNum').text(Page.all);    // 设置徽章
                        tOptions.data = resData;   //  设置表格的数据
                        table.render(tOptions);
                     }
                     // console.log(456);
                     // 实时回调
                     updateSearch.timer = setTimeout(updateSearch, 4000);
                     updateSearchTimer = setTimeout(updateSearch, 4000);
                  }
               });
            }
@@ -607,25 +757,26 @@
                        acceptPage.setAll(0);
                     }
                     pagePage.setVal();            // 设置分页信息
                     $('#acceptNum').text(getAcceptHome(resData));    // 设置徽章
                     $('#acceptNum').text(acceptPage.all);    // 设置徽章
                     acceptOptions.data = resData;      // 设置表格的数据
                     
                     // 生成表格数据
                     table.render(acceptOptions);
                     console.log(table);
                     // 启动自动刷新
                     updateAcceptSearch();
                  }
                  ,complete: function() {
                     layer.close(load);
                     // 启动自动刷新
                     //updateAcceptSearch();
                  }
               });
            }
            
            // 构造验收的查询条件
            // 构造待验收的查询条件
            function acceptSearchParam() {
               var temp = {
                  apply_en: 1
                  ,check_en: 100
                  ,binf: {
                     page: acceptPage.getPage()
                  }
@@ -633,10 +784,12 @@
               return temp;
            }
            
            // 更新验收表格
            function updateAcceptSearch() {
               var temp = acceptSearchParam();
               clearInterval(updateAcceptSearch.timer);
            // 查询已验收的机房
            acceptedSearch();
            function acceptedSearch(temp, newLoad) {
               var load = layer.load(1);
               var temp = acceptedSearchParam();
               //console.log(temp);
               // 查询后台
               $.ajax({
                  type: 'post'
@@ -654,19 +807,97 @@
                           var _data = data[i];
                           var _tmp = formaterResData(_data);
                           resData.push(_tmp);
                           acceptPage.setAll(_data.apply_note);
                           acceptedPage.setAll(_data.apply_note);
                        }
                     }else {
                        acceptedPage.setAll(0);
                     }
                     pagePage.setVal();            // 设置分页信息
                     $('#acceptedNum').text(acceptedPage.all);    // 设置徽章
                     acceptedOptions.data = resData;      // 设置表格的数据
                     // 生成表格数据
                     table.render(acceptedOptions);
                  }
                  ,complete: function() {
                     layer.close(load);
                  }
               });
            }
            // 构造待验收的查询条件
            function acceptedSearchParam() {
               var temp = {
                  apply_en: 1
                  ,check_en: 1
                  ,binf: {
                     page: acceptedPage.getPage()
                  }
               };
               return temp;
            }
            // 更新验收表格
            var updateAcceptSearchTimer;
            function updateAcceptSearch() {
               var temp = acceptSearchParam();
               clearInterval(updateAcceptSearchTimer);
               // 查询后台
               $.ajax({
                  type: 'post'
                  ,async: true
                  ,url: "Battinf_applyAction!serchByCondition"
                  ,data: "json="+JSON.stringify(temp)
                  ,dataType: 'json'
                  ,success: function(res) {
                     var rs = JSON.parse(res.result);
                     var resData = [];
                     var isUpdateTbl = false;      // 判断是否添加/删除待验收表格
                     if(rs.code == 1) {
                        var data = rs.data;
                        // 遍历数据的值
                        for(var i=0; i<data.length; i++) {
                           var _data = data[i];
                           var _tmp = formaterResData(_data);
                           resData.push(_tmp);
                           // 判断是否添加/删除待验收表格
                           if(_data.apply_note &&_data.apply_note != Page.all) {
                              acceptPage.setAll(_data.apply_note);
                              isUpdateTbl = true;
                           }
                        }
                        //console.log(resData);
                     }else {
                        acceptPage.setAll(0);
                        isUpdateTbl = true;
                     }
                     layuiTbl.setCache(table.cache.acceptTbl);
                     if(isUpdateTbl) {
                        // 遍历data的值更新数据
                        for(var i=0; i<resData.length; i++) {
                           var _resData = resData[i];
                           _resData.doThings = '';
                        }
                        acceptTbl.data = resData;   // 设置表格数据
                        // 更新表格
                        table.render(acceptTbl);   // 重新加载表格
                        layuiTbl.setCache(table.cache.acceptTbl);
                     }else {
                        // 遍历data的值更新数据
                        for(var i=0; i<resData.length; i++) {
                           var _resData = resData[i];
                           _resData.doThings = '';
                           // 当前选项卡没有显示
                           if(tabsIndex != 1) {
                              layuiTbl.updateTr(i, _resData);
                           }
                        }
                     }
                     
                     $('#acceptNum').text(getAcceptHome(resData));    // 设置徽章
                     acceptOptions.data = resData;      // 设置表格的数据
                     // 生成表格数据
                     table.reload('acceptTbl', acceptOptions);
                     //console.log(123);
                     // 实时回调
                     updateAcceptSearch.timer = setTimeout(updateAcceptSearch, 4000);
                     updateAcceptSearchTimer = setTimeout(updateAcceptSearch, 4000);
                  }
               });
            }
@@ -705,6 +936,27 @@
               
               return num;
            }
            // 修改审批表格样式
            function changeApprTbl(bool, opts) {
               var col = opts.cols[0];
               var doThings = col[col.length-1];
               // 移除审批按钮
               if(!bool) {
                  col.length = col.length-1;
               }
            }
            // 修改验收表格样式
            function changeCheckTbl(bool, opts) {
               var col = opts.cols[0];
               var doThings = col[col.length-1];
               // 移除审批按钮
               if(!bool) {
                  doThings.width = 200;
                  doThings.toolbar = '#acceptedBattGroupTools';
               }
            }
           });
        </script>
    </body>