81041
2018-11-28 4b309ae0a61b115e432b3aa9bc150feb9f5a16f9
gx_tieta/src/com/fgkj/dao/impl/BattInfImpl.java
@@ -72,12 +72,12 @@
            String sql = "insert into db_battinf.tb_battinf(" +
                  "StationId,StationName,StationName1,StationName2,StationName3,StationName4,StationName5,StationIp,FBSDeviceId,FbsDeviceIp,FbsDeviceIp_YM,FbsDeviceIp_WG,"
                  + "FBSDeviceName,GroupIndexInFBSDevice,battgroupId,BattGroupNum,BattGroupName,FloatVolLevel,OfflineVolLevel,BattFloatCurrent" +
                  ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,Load_curr,DisCurrMax,station_phone" +
                  ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,Load_curr,install_user,DisCurrMax,station_phone" +
                  ") values('"+binf.getStationId()+"','"+binf.getStationName()+"','"+binf.getStationName1()+"','"+binf.getStationName2()+"','"+binf.getStationName3()+"','"+binf.getStationName4()+"','"+binf.getStationName5()+
                  "','"+binf.getStationIp()+"',"+binf.getFBSDeviceId()+",'"+binf.getFbsDeviceIp()+"','"+binf.getFbsDeviceIp_YM()+"','"+binf.getFbsDeviceIp_WG()+"','"+binf.getFBSDeviceName()+"',"+binf.getGroupIndexInFBSDevice()+
                  ","+binf.getBattGroupId()+","+binf.getBattGroupNum()+",'"+binf.getBattGroupName()+"',"+binf.getFloatVolLevel()+","+binf.getOfflineVolLevel()+","+binf.getBattFloatCurrent()+
                  ","+binf.getMonCount()+","+binf.getMonCapStd()+","+binf.getMonVolStd()+","+binf.getMonResStd()+","+binf.getMonSerStd()+","+binf.getMonVolLowToAvg()+
                  ",'"+binf.getBattProducer()+"','"+binf.getBattModel()+"','"+DAOHelper.sdf.format(binf.getBattProductDate())+"','"+DAOHelper.sdf.format(binf.getBattInUseDate())+"',"+binf.getLoad_curr()+","+binf.getDisCurrMax()+",'"+binf.getStation_phone()+"')";
                  ",'"+binf.getBattProducer()+"','"+binf.getBattModel()+"','"+DAOHelper.sdf.format(binf.getBattProductDate())+"','"+DAOHelper.sdf.format(binf.getBattInUseDate())+"',"+binf.getLoad_curr()+",'"+binf.getInstall_user()+"',"+binf.getDisCurrMax()+",'"+binf.getStation_phone()+"')";
            
            if(binf.getStationId().equals(maxs)){
               maxs++;
@@ -119,7 +119,7 @@
            String sql = "update db_battinf.tb_battinf set StationId='"+binf.getStationId()+"',StationName='"+binf.getStationName()+"',StationName1='"+binf.getStationName1()+"',StationName2='"+binf.getStationName2()+"',StationName3='"+binf.getStationName3()+"',StationName4='"+binf.getStationName4()+"',StationName5='"+binf.getStationName5()+"',StationIp='"+binf.getStationIp()+"',FBSDeviceId="+binf.getFBSDeviceId()+",FbsDeviceIp='"+binf.getFbsDeviceIp()+"',"
                  + "FBSDeviceName='"+binf.getFBSDeviceName()+"',GroupIndexInFBSDevice="+binf.getGroupIndexInFBSDevice()+",BattGroupNum="+binf.getBattGroupNum()+",BattGroupName='"+binf.getBattGroupName()+"',FloatVolLevel="+binf.getFloatVolLevel()+",OfflineVolLevel="+binf.getOfflineVolLevel()+",BattFloatCurrent="+binf.getBattFloatCurrent()+"," +
                    "MonCount="+binf.getMonCount()+",MonCapStd="+binf.getMonCapStd()+",monVolStd="+binf.getMonVolStd()+",monResStd="+binf.getMonResStd()+",MonSerStd="+binf.getMonSerStd()+",MonVolLowToAvg="+binf.getMonVolLowToAvg()+",BattProducer='"+binf.getBattProducer()+"',BattModel='"+binf.getBattModel()+"',BattProductDate='"+DAOHelper.sdf.format(binf.getBattProductDate())+"',BattInUseDate='"+DAOHelper.sdf.format(binf.getBattInUseDate())+"', "
                   +" Load_curr="+binf.getLoad_curr()+",DisCurrMax="+binf.getDisCurrMax()+",station_phone='"+binf.getStation_phone()+"'  where battgroupId="+binf.getBattGroupId();
                   +" Load_curr="+binf.getLoad_curr()+",install_user='"+binf.getInstall_user()+"',DisCurrMax="+binf.getDisCurrMax()+",station_phone='"+binf.getStation_phone()+"'  where battgroupId="+binf.getBattGroupId();
            sql_str.add(sql);
            {
               String msg="修改"+binf.getStationName()+"机房"+binf.getBattGroupId()+"电池组的信息";
@@ -139,7 +139,13 @@
      boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, null);
      return bl;
   }
   //设置电池组充电电流阈值
   public boolean update_charge(Object obj){
      BattInf binf=(BattInf) obj;
      String sql = "update db_battinf.tb_battinf set  charge_curr_max=? where BattGroupId=?";
      boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{binf.getCharge_curr_max(),binf.getBattGroupId()});
      return bl;
   }
   //删除电池组(多个)
   public boolean del(Object obj) {
      List<BattInf> list=(List<BattInf>) obj;
@@ -170,7 +176,7 @@
      String numberSql=" SELECT FOUND_ROWS() number";
      String sql="select SQL_CALC_FOUND_ROWS distinct(StationId),StationName1,StationName2,StationName3,StationName4,StationName5,StationIp,FBSDeviceId,FbsDeviceIp_YM,FbsDeviceIp_WG,FbsDeviceIp,"
            + "FBSDeviceName,GroupIndexInFBSDevice,battgroupId,BattGroupNum,BattGroupName,FloatVolLevel,OfflineVolLevel,BattFloatCurrent" +
             ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,Load_curr,DisCurrMax,station_phone  " +
             ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,Load_curr,install_user,DisCurrMax,station_phone  " +
             " From db_battinf.tb_battinf " +
             " Where StationName like ? and StationName1 like ? and StationName2 like ?  and StationName5 like ? " +
             " order by StationId  " +
@@ -215,6 +221,7 @@
                  binf.setBattProductDate(rs.getDate("battProductDate"));
                  binf.setBattInUseDate(rs.getDate("battInUseDate"));
                  binf.setLoad_curr(rs.getFloat("load_curr"));
                  binf.setInstall_user(rs.getString("install_user"));
                        binf.setDisCurrMax(rs.getFloat("disCurrMax"));
                        binf.setStation_phone(rs.getString("station_phone"));
                  list.add(binf);
@@ -237,7 +244,7 @@
   public List searchInform_ky(){
      String sql="select  distinct(StationId),StationId_ex,StationName,StationName1,StationName2,StationName3,StationName4,StationName5,StationIp,FBSDeviceId,FbsDeviceIp_YM,FbsDeviceIp_WG,FbsDeviceIp,"
            + "FBSDeviceName,GroupIndexInFBSDevice,battgroupId,BattGroupNum,BattGroupName,FloatVolLevel,OfflineVolLevel,BattFloatCurrent" +
             ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,battGuarantDayCount,SignalId,CInterFaceId,Load_curr,DisCurrMax,SignalName,Station_install,station_phone  " +
             ",MonCount,MonCapStd,monVolStd,monResStd,MonSerStd,MonVolLowToAvg,BattProducer,BattModel,BattProductDate,BattInUseDate,battGuarantDayCount,SignalId,CInterFaceId,Load_curr,install_user,DisCurrMax,SignalName,Station_install,station_phone  " +
             " From db_battinf.tb_battinf " +
             " order by StationId  ";
      List<BattInf> list=DAOHelper.executeQueryLimit(sql,DBUtil.getConn(), null,new CallBack() {
@@ -289,6 +296,7 @@
                  binf.setCInterFaceId(rs.getInt("cInterFaceId"));
                  binf.setStation_install(rs.getInt("station_install"));
                  binf.setLoad_curr(rs.getFloat("load_curr"));
                  binf.setInstall_user(rs.getString("install_user"));
                        binf.setDisCurrMax(rs.getFloat("disCurrMax"));
                        binf.setStation_phone(rs.getString("station_phone"));
                  list.add(binf);
@@ -309,7 +317,7 @@
      Page page=bmd.getPage();
      Connection conn= DBUtil.getConn();
      String numberSql=" SELECT FOUND_ROWS() number";
      String sql="select SQL_CALC_FOUND_ROWS distinct(StationId),StationId_ex,StationName1,StationName2,StationName3,StationName,FBSDeviceId  " +
      String sql="select SQL_CALC_FOUND_ROWS distinct(StationId),StationId_ex,StationName1,StationName2,StationName3,StationName5,StationName,FBSDeviceId  " +
             " From db_battinf.tb_battinf " +
             " limit ?,?";
      List<BattInf> list=DAOHelper.executeQueryLimit(sql,conn, new Object[]{(page.getPageCurr()-1)*page.getPageSize(),page.getPageSize()},new CallBack() {
@@ -325,6 +333,7 @@
                  binf.setStationName1(rs.getString("stationName1"));
                  binf.setStationName2(rs.getString("stationName2"));
                  binf.setStationName3(rs.getString("stationName3"));
                  binf.setStationName5(rs.getString("stationName5"));
                  binf.setFBSDeviceId(rs.getInt("fBSDeviceId"));
                  binf.setStationName(rs.getString("stationName"));
                  binf.setStationId_ex(rs.getString("stationId_ex"));
@@ -1044,7 +1053,7 @@
      return list;
   }
   //查设备总数
   //查设备总数(已经安装)
   /*public int serchByDeviceId(){
      String sql=" SELECT COUNT(DISTINCT fbsdeviceid) number FROM db_battinf.tb_battinf  limit 1";
      List<BattInf> list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{}, new CallBack() {
@@ -1074,11 +1083,11 @@
   public int serchByDeviceId(Object obj){
      User_inf uinf=(User_inf) obj;
      String sql=" SELECT COUNT(DISTINCT fbsdeviceid) number FROM db_battinf.tb_battinf  " +
                " left outer join db_user.tb_user_battgroup_baojigroup_battgroup on db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId " +
               " left outer join db_user.tb_user_battgroup_baojigroup_usr on db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id " +
               " left outer join db_user.tb_user_inf on tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid " +
               " where db_user.tb_user_inf.uid=? " +
                " limit 1";
               " where StationId in(" +
               " select distinct db_user.tb_user_battgroup_baojigroup_battgroup.StationId from db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr where db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id=db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id  " +
               " and db_user.tb_user_battgroup_baojigroup_usr.uId=? " +
               " ) " +
               " and db_battinf.tb_battinf.station_install=1";
      List<BattInf> list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() {
         
         public List getResults(ResultSet rs) {
@@ -1102,6 +1111,93 @@
         number=list.get(list.size()-1).getNum();
      }
      return number;
   }
   //查单体总数(已安装的单体)
   public int serchByInstall_count(Object obj){
      User_inf uinf=(User_inf) obj;
      String sql=" SELECT sum(moncount) as nums FROM db_battinf.tb_battinf  " +
               " where StationId in(" +
               " select distinct db_user.tb_user_battgroup_baojigroup_battgroup.StationId from db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr where db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id=db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id  " +
               " and db_user.tb_user_battgroup_baojigroup_usr.uId=? " +
               " ) " +
               " and db_battinf.tb_battinf.station_install=1";
      //System.out.println(sql);
      List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() {
         public List getResults(ResultSet rs) {
            List list=new ArrayList();
            int nums=0;//单体总数
            try {
               while(rs.next()){
                  nums=rs.getInt("nums");
                  list.add(nums);
               }
            } catch (SQLException e) {
               // TODO Auto-generated catch block
               e.printStackTrace();
            }
            return list;
         }
      });
      int number=0;//存放总数
      if(list!=null&&list.size()>0){
         number=(Integer) list.get(list.size()-1);
      }
      return number;
   }
   //查询设备总数(全部)
   public List serchByDeviceId_all(Object obj){
      User_inf uinf=(User_inf) obj;
      String sql=" SELECT DISTINCT fbsdeviceid,station_install,monvolstd FROM db_battinf.tb_battinf  " +
               "  where StationId in(" +
               " select distinct db_user.tb_user_battgroup_baojigroup_battgroup.StationId from db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr where db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id=db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id  " +
               " and db_user.tb_user_battgroup_baojigroup_usr.uId=? " +
               " ) ";
      List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() {
         public List getResults(ResultSet rs) {
            List list=new ArrayList();
            int num_2_install=0;//2v已安装
            int num_2=0;//2v全部
            int num_12_install=0;//12v已安装
            int num_12=0;//12v全部
            int num_install=0;//已安装
            int num=0;//全部
            try {
               while(rs.next()){
                  int insatll=rs.getInt("station_install");
                  float monvolstd=rs.getFloat("monvolstd");
                  if(insatll==1){
                     num_install+=1;
                     if(monvolstd==2.0){
                        num_2_install+=1;
                     }else{
                        num_12_install+=1;
                     }
                  }
                  if(monvolstd==2.0){
                     num_2+=1;
                  }else{
                     num_12+=1;
                  }
                  num+=1;
               }
            } catch (SQLException e) {
               // TODO Auto-generated catch block
               e.printStackTrace();
            }
            list.add(num_2_install);
            list.add(num_2);
            list.add(num_12_install);
            list.add(num_12);
            list.add(num_install);
            list.add(num);
            return list;
         }
      });
      return list;
   }
   //-----------根据蓄电池组查不重复的MonCount(monNum)(单体编号)
   public List serchByMonNum(Object obj){
@@ -1130,7 +1226,7 @@
      });
      return list;
   }
   //实时历史机历卡
   public List serchByBattgroupId(Object obj){
      BattInf binf=(BattInf)obj;
      String sql="select * from db_battinf.tb_battinf where battgroupid=?";
@@ -1231,7 +1327,7 @@
                 batt.setSignalId(rs.getString("SignalId"));
                 
                 batt.setCInterFaceId(Integer.parseInt(rs.getString("CInterFaceId")));
                 batt.setInstall_user(rs.getString("install_user"));
                 batt.setSignalName(rs.getString("SignalName"));
                 int BattGuarantDayCount=rs.getInt("BattGuarantDayCount")-ActionUtil.daysBetween(rs.getDate("BattInUseDate"), new Date());//剩余保修天数
                 batt.setBattGuarantDayCount(BattGuarantDayCount);
@@ -3315,7 +3411,7 @@
            " where db_user.tb_user_battgroup_baojigroup_battgroup.BattGroupId=db_battinf.tb_battinf.BattGroupId   " +
            " and db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id  " +
            " and db_user.tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid  " +
            " and db_user.tb_user_inf.uid=?" +
            " and db_user.tb_user_inf.uid=? and db_battinf.tb_battinf.Station_install=1 " +
            "  limit 1";
      List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() {
         
@@ -3979,9 +4075,9 @@
   //首页上根据stationid查询电池组的机历卡
   public List serchBattAllInfoByStationId(Object obj){
      BattInf binf=(BattInf) obj;
      String sql="select * from db_battinf.tb_battinf,db_battinf.tb_battinf_ex " +
            " where db_battinf.tb_battinf.stationId=db_battinf.tb_battinf_ex.stationid " +
            " and db_battinf.tb_battinf.stationId=? " +
      String sql="select * from db_battinf.tb_battinf " +
            " left outer join  db_battinf.tb_battinf_ex on db_battinf.tb_battinf.stationId=db_battinf.tb_battinf_ex.stationid " +
            " where db_battinf.tb_battinf.stationId=? " +
            " order by db_battinf.tb_battinf.battgroupid";
      List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binf.getStationId()}, new CallBack() {
         
@@ -4080,7 +4176,7 @@
                    batt.setSignalId(rs.getString("SignalId"));
                    
                    batt.setCInterFaceId(Integer.parseInt(rs.getString("CInterFaceId")));
                    batt.setInstall_user(rs.getString("install_user"));
                    batt.setSignalName(rs.getString("SignalName"));
                    int BattGuarantDayCount=rs.getInt("BattGuarantDayCount")-ActionUtil.daysBetween(rs.getDate("BattInUseDate"), new Date());//剩余保修天数
                    batt.setBattGuarantDayCount(BattGuarantDayCount);
@@ -4165,7 +4261,7 @@
      binf.setStationName3("");
      binf.setBattGroupName("");
      binf.setBattProducer("1");
      binf.setStationId("42000002");
      binf.setStationId("42000575");
      User_inf uinf=new User_inf();
      uinf.setUId(1002);
      
@@ -4194,12 +4290,14 @@
      //List<BattInf> list=biml.serchGroupByInfor(binf);
      //List<BattInf> list=biml.searchInform1(bmd);
      //<BattInf> list=biml.serchStationName5(binf);
      //List<BattInf> list=biml.serchBattAllInfoByStationId(binf);
      List<BattInf> list=biml.searchInform_ky();
      /*List<BattInf> list=biml.serchBattAllInfoByStationId(binf);
      //List<BattInf> list=biml.searchInform_ky();
      for (BattInf b : list) {
         System.out.println(b);
      }
      System.out.println(list.size());
      System.out.println(list.size());*/
      int nums=biml.serchByInstall_count(uinf);
      System.out.println(nums);
   }
   
    public List getResults(ResultSet rs) {
@@ -4233,7 +4331,7 @@
            binf.setBattProducer(rs.getString("battProducer"));
            binf.setBattProductDate(rs.getDate("battProductDate"));
            binf.setBattInUseDate(rs.getDate("battInUseDate"));
            //minf.setFault_type(rs.getString("fault_type"));
            if (rs.getString("maint_done_time") != null)
               mainf.setMaint_done_time(DAOHelper.sdf.parse(rs