81041
2019-01-15 253879d0d562db0290a67160d30d3f15e8e7bf09
gx_tieta/src/com/fgkj/dao/impl/ram/Fbs9100_stateImpl.java
@@ -4,6 +4,7 @@
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import com.fgkj.dao.BaseDAO;
import com.fgkj.dao.CallBack;
@@ -21,6 +22,7 @@
import com.fgkj.dto.ram.Fbs9600_state;
import com.fgkj.services.User_logService;
import com.sun.corba.se.spi.orbutil.fsm.FSM;
import com.sun.org.apache.bcel.internal.generic.LSTORE;
public class Fbs9100_stateImpl implements BaseDAO,CallBack{
   public List getResults(ResultSet rs) {
@@ -412,7 +414,7 @@
    //实时监测界面根据dev_alarmstate状态判断接触器状态
   public List serchContactorState(Object obj) {
      Fbs9100_state fs=(Fbs9100_state) obj;
      String sql="select dev_id,dev_alarmstate,dev_workstate,record_datetime,dev_temp,dev_res_test_state,dev_testtype,dev_testgroupnum,dev_conresist,dev_concurr,dev_condvoldp,dev_condcurr,dev_61850alarms,dev_last_captest_stop_type,batt_online_state,dev_commcount,dev_errcommcount  from db_ram_db.tb_fbs9100_state where dev_id=? limit 1";
      String sql="select dev_id,dev_version,dev_alarmstate,dev_workstate,record_datetime,dev_temp,dev_res_test_state,dev_testtype,dev_testgroupnum,dev_conresist,dev_concurr,dev_condvoldp,dev_condcurr,dev_61850alarms,dev_last_captest_stop_type,batt_online_state,dev_commcount,dev_errcommcount  from db_ram_db.tb_fbs9100_state where dev_id=? limit 1";
      List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{fs.getDev_id()},new CallBack() {
         
         public List getResults(ResultSet rs) {
@@ -431,6 +433,7 @@
                  }else{
                     ContactorState="开关闭合";
                  }
                  fstate.setDev_version(rs.getString("dev_version"));
                  fstate.setRecord_datetime(rs.getString("record_datetime"));
                  fstate.setDev_testgroupnum(rs.getInt("dev_testgroupnum"));         //被测电池组号
                  fstate.setDev_alarmstate(rs.getInt("dev_alarmstate"));
@@ -449,6 +452,7 @@
                  fstate.setBatt_online_state(rs.getInt("batt_online_state"));
                  fstate.setDev_commcount(rs.getInt("dev_commcount"));
                  fstate.setDev_errcommcount(rs.getInt("dev_errcommcount"));
                  fstate.setNote(DAOHelper.sdf.format(new Date()));
                  list.add(fstate);
               }
            } catch (SQLException e) {
@@ -895,8 +899,8 @@
       String sql="select distinct dev_id,dev_alarmstate,dev_workstate,dev_temp,dev_version,dev_res_test_state,dev_testtype,dev_testgroupnum "
             + ",dev_captest_onlinevol,dev_captest_groupvol,dev_captest_curr,dev_captest_cap,dev_captest_timelong "
             + ",dev_conresist,dev_concurr,dev_condvoldp,dev_condcurr,dev_61850alarms,dev_last_captest_stop_type "
             + ",db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.StationName1,db_battinf.tb_battinf.StationName2,db_battinf.tb_battinf.StationName3,db_battinf.tb_battinf.StationName5 "
             + ",db_battinf.tb_battinf.MonVolStd,db_battinf.tb_battinf.BattGroupId,db_battinf.tb_battinf.battgroupname "
             + ",db_battinf.tb_battinf.battgroupid,db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.StationName1,db_battinf.tb_battinf.StationName2,db_battinf.tb_battinf.StationName3,db_battinf.tb_battinf.StationName5 "
             + ",db_battinf.tb_battinf.MonVolStd,db_battinf.tb_battinf.BattGroupId,db_battinf.tb_battinf.battgroupname,db_battinf.tb_battinf.moncapstd,db_battinf.tb_battinf.moncount "
             + " from db_ram_db.tb_fbs9100_state,db_battinf.tb_battinf,db_user.tb_user_battgroup_baojigroup_battgroup,db_user.tb_user_battgroup_baojigroup_usr "
             + " where   dev_workstate="+FBS9100_ComBase.DISCHARGE
             + " and db_battinf.tb_battinf.fbsdeviceId=db_ram_db.tb_fbs9100_state.dev_id    "
@@ -905,7 +909,28 @@
             + " 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_battgroup_baojigroup_usr.uId=?  "
             + " and db_battinf.tb_battinf.MonVolStd=? ";
       List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[] {binf.getNum(),binf.getMonVolStd()}, new CallBack() {
       //条件
      String sql0=" and db_battinf.tb_battinf.stationid=? "; //具体机房
      String sql1=" and db_battinf.tb_battinf.stationname1=? ";//省
      String sql2=" and db_battinf.tb_battinf.stationname2=? ";//市
      String sql5=" and db_battinf.tb_battinf.stationname5=? ";//区县
      switch (binf.getNum()) {
      case 0:
         sql+=sql0;
         break;
        case 1:
           sql+=sql1;
         break;
        case 2:
           sql+=sql2;
         break;
        case 5:
           sql+=sql5;
          break;
      default:
         return null;
      }
       List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[] {binf.getBattGroupId(),binf.getMonVolStd(),binf.getStationName()}, new CallBack() {
         
         @Override
         public List getResults(ResultSet rs) {
@@ -927,7 +952,7 @@
                  fstate.setDev_captest_curr(rs.getFloat("dev_captest_curr"));
                  fstate.setDev_captest_cap(rs.getFloat("dev_captest_cap"));
                  fstate.setDev_captest_timelong(rs.getInt("dev_captest_timelong"));
                  fstate.setBattgroupid(rs.getInt("battgroupid"));
                  fstate.setDev_conresist(rs.getFloat("dev_conresist"));
                  fstate.setDev_concurr(rs.getFloat("dev_concurr"));
                  fstate.setDev_condcurr(rs.getFloat("dev_condcurr"));
@@ -942,6 +967,8 @@
                  fstate.setStationName5(rs.getString("stationName5"));
                  fstate.setBattgroupid(rs.getInt("battgroupid"));
                  fstate.setMonvolstd(rs.getInt("monvolstd"));
                  fstate.setMoncapstd(rs.getInt("moncapstd"));
                  fstate.setMoncount(rs.getInt("moncount"));
                  fstate.setNote(rs.getString("battgroupname"));
                  list.add(fstate);
               }
@@ -953,6 +980,84 @@
         }
      });
      return list;
    }
    //实时刷新批量设置放电参数
    public List  freshenDischarge(Object obj) {
       List<BattInf> list=(List<BattInf>) obj;
       List listAll=new ArrayList();
       for (int i = 0; i < list.size(); i++) {
          BattInf binf=list.get(i);
         String sql="select distinct dev_id,dev_alarmstate,dev_workstate,dev_temp,dev_res_test_state,dev_testtype,dev_testgroupnum " +
                " ,dev_captest_onlinevol,dev_captest_groupvol,dev_captest_curr,dev_captest_cap,dev_captest_timelong,dev_commcount" +
                " ,dev_conresist,dev_concurr,dev_condvoldp,dev_condcurr,dev_61850alarms,dev_last_captest_stop_type  " +
                " ,db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.StationName1,db_battinf.tb_battinf.StationName2,db_battinf.tb_battinf.StationName3,db_battinf.tb_battinf.StationName5,db_battinf.tb_battinf.FbsDeviceName   " +
                " ,db_ram_db.tb_batt_rtstate.batt_test_tlong,db_ram_db.tb_batt_rtstate.online_vol,db_ram_db.tb_batt_rtstate.group_curr,db_ram_db.tb_batt_rtstate.group_vol,db_ram_db.tb_batt_rtstate.batt_test_cap " +
                " from db_ram_db.tb_fbs9100_state,db_battinf.tb_battinf  ,db_ram_db.tb_batt_rtstate"+
                " where  db_battinf.tb_battinf.battgroupid=? "+
                " and db_battinf.tb_battinf.fbsdeviceId=db_ram_db.tb_fbs9100_state.dev_id  " +
                " and db_battinf.tb_battinf.battgroupid=db_ram_db.tb_batt_rtstate.battgroupid  limit 1";
         List listB=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binf.getBattGroupId()}, new CallBack() {
            public List getResults(ResultSet rs) {
               List list=new ArrayList();
               try {
                  while(rs.next()){
                     Fbs9100_state fstate=new Fbs9100_state();
                     int dev_alarmstate=rs.getInt("dev_alarmstate");
                     String ContactorState="开关闭合";
                     if(dev_alarmstate==1 ||
                        dev_alarmstate==2 ||
                        dev_alarmstate==3 ||
                        dev_alarmstate==4 ||
                        dev_alarmstate==6 ){
                        ContactorState="开关断开";
                     }else{
                        ContactorState="开关闭合";
                     }
                     fstate.setDev_testgroupnum(rs.getInt("dev_testgroupnum"));         //被测电池组号
                     fstate.setDev_alarmstate(rs.getInt("dev_alarmstate"));
                     fstate.setDev_res_test_state(rs.getInt("dev_res_test_state"));
                     fstate.setDev_testtype(rs.getInt("dev_testtype"));
                     fstate.setNote(ContactorState);
                     fstate.setDev_workstate(rs.getInt("dev_workstate"));
                     fstate.setDev_id(rs.getInt("dev_id"));
                     //这五个参数都是batt_rtstate中的数据
                     fstate.setDev_captest_onlinevol(rs.getFloat("online_vol"));
                     fstate.setDev_captest_groupvol(rs.getFloat("group_vol"));
                     fstate.setDev_captest_curr(rs.getFloat("group_curr"));
                     fstate.setDev_captest_cap(rs.getFloat("batt_test_cap"));
                     fstate.setDev_captest_timelong(rs.getInt("batt_test_tlong"));//实际放电时常
                     fstate.setDev_commcount(rs.getInt("dev_commcount"));
                     fstate.setDev_conresist(rs.getFloat("dev_conresist"));
                     fstate.setDev_concurr(rs.getFloat("dev_concurr"));
                     fstate.setDev_condcurr(rs.getFloat("dev_condcurr"));
                     fstate.setDev_condvoldp(rs.getFloat("dev_condvoldp"));
                     fstate.setDev_61850alarms(rs.getString("dev_61850alarms"));
                     fstate.setDev_last_captest_stop_type(rs.getInt("dev_last_captest_stop_type"));
                     fstate.setDev_temp(rs.getFloat("dev_temp"));
                     fstate.setStationName(rs.getString("stationName"));
                     fstate.setStationName1(rs.getString("stationName1"));
                     fstate.setStationName2(rs.getString("stationName2"));
                     fstate.setStationName3(rs.getString("stationName3"));
                     fstate.setStationName5(rs.getString("stationName5"));
                     fstate.setDeviceName(rs.getString("FbsDeviceName"));
                     list.add(fstate);
                  }
               } catch (SQLException e) {
                  // TODO Auto-generated catch block
                  e.printStackTrace();
               }
               return list;
            }
         });
         if(listB!=null&&listB.size()>0) {
            listAll.add(listB);
         }
       }
      return listAll;
    }
   public static void main(String[] args) {
       Fbs9100_stateImpl fi=new Fbs9100_stateImpl();
@@ -971,8 +1076,10 @@
       p.setPageCurr(1);
       fs.setPage(p);
       BattInf binf=new BattInf();
       binf.setNum(1002);
       binf.setMonVolStd(12f);
       binf.setNum(1);
       binf.setBattGroupId(1001879);
       binf.setStationName("广西省");
       binf.setMonVolStd(2f);
       /*List<Fbs9100_state> list=fi.serchByCondition(fs);
      System.out.println(list.size());
      for(Fbs9100_state f:list){
@@ -997,11 +1104,15 @@
      for(Fbs9100_state f:list){
         System.out.println(f);
      }*/
       List<Fbs9100_state> list=fi.seachDischarge(binf);
       /*List<Fbs9100_state> list=fi.seachDischarge(binf);
      System.out.println(list.size());
      for(Fbs9100_state f:list){
         System.out.println(f);
      }
      }*/
       List listb=new ArrayList();
       listb.add(binf);
       List listAll=fi.freshenDischarge(listb);
      System.out.println(listAll.size());
   }
}