package com.fgkj.dao.impl.ram;
|
|
import java.sql.Connection;
|
import java.sql.PreparedStatement;
|
import java.sql.ResultSet;
|
import java.sql.SQLException;
|
import java.util.ArrayList;
|
import java.util.List;
|
import sun.security.jca.GetInstance;
|
|
import com.fgkj.dao.BaseDAO;
|
import com.fgkj.dao.CallBack;
|
import com.fgkj.dao.DAOHelper;
|
import com.fgkj.dao.FBS9100_ComBase;
|
import com.fgkj.db.DBUtil;
|
import com.fgkj.db.IDatabaseName;
|
import com.fgkj.dto.BattInf;
|
import com.fgkj.dto.ram.FBS9100;
|
import com.fgkj.dto.ram.Fbs9100_setparam;
|
import com.fgkj.dto.ram.Fbs9100_state;
|
|
public class Fbs9100_setparamImpl implements BaseDAO,CallBack{
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Fbs9100_setparam fsetparam=new Fbs9100_setparam();
|
fsetparam.setNum(rs.getInt("num"));
|
fsetparam.setDev_ip(rs.getString("dev_ip"));
|
fsetparam.setDev_id(rs.getInt("dev_id"));
|
fsetparam.setOp_cmd(rs.getInt("op_cmd"));
|
fsetparam.setTestCmd(rs.getInt("testCmd"));
|
fsetparam.setHourRate(rs.getInt("HourRate"));
|
fsetparam.setDisCurr(rs.getFloat("DisCurr"));
|
fsetparam.setDisCap(rs.getFloat("DisCap"));
|
fsetparam.setDisTime(rs.getInt("DisTime"));
|
fsetparam.setGroupVol_Low(rs.getFloat("groupVol_Low"));
|
fsetparam.setMonomerVol_Low(rs.getFloat("monomerVol_Low"));
|
fsetparam.setMonomerLowCount(rs.getInt("monomerLowCount"));
|
fsetparam.setBattGroupNum(rs.getInt("battGroupNum"));
|
fsetparam.setOnlineLowAction(rs.getInt("onlineVolLowAction"));
|
fsetparam.setDCVolHighLimit(rs.getFloat("dCVolHighLimit"));
|
fsetparam.setChargeCurrSet(rs.getFloat("chargeCurrSet"));
|
list.add(fsetparam);
|
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
|
//将需要放电的数据添加放电参数表中
|
public boolean add(Object obj) {
|
Fbs9100_setparam fsparam=(Fbs9100_setparam) obj;
|
String sql="insert into db_ram_db.tb_Fbs9100_setparam(dev_ip,dev_id,op_cmd,testCmd,HourRate," +
|
"DisCurr,DisCap,DisTime,groupVol_Low,monomerVol_Low,monomerLowCount,battGroupNum," +
|
"onlineLowAction,dCVolHighLimit,chargeCurrSet) values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
|
Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{fsparam.getDev_ip(),
|
fsparam.getDev_id(),fsparam.getOp_cmd(),fsparam.getTestCmd(),fsparam.getHourRate(),fsparam.getDisCurr(),fsparam.getDisCap(),fsparam.getDisTime(),
|
fsparam.getGroupVol_Low(),fsparam.getMonomerVol_Low(),fsparam.getMonomerLowCount(),fsparam.getBattGroupNum(),fsparam.getOnlineLowAction(),
|
fsparam.getDCVolHighLimit(),fsparam.getChargeCurrSet()});
|
|
return bl;
|
}
|
|
//修改放电参数表中
|
public boolean update(Object obj) {
|
Fbs9100_setparam fs=(Fbs9100_setparam) obj;
|
String sql="update db_ram_db.tb_Fbs9100_setparam set testCmd=?,HourRate=?," +
|
"DisCurr=?,DisCap=?,DisTime=?,groupVol_Low=?,monomerVol_Low=?,monomerLowCount=?,battGroupNum=?," +
|
"onlineVolLowAction=?,dCVolHighLimit=?,chargeCurrSet=?,MonomerTmp_High=? where dev_id=?";
|
Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{
|
fs.getTestCmd(),fs.getHourRate(),fs.getDisCurr(),fs.getDisCap(),fs.getDisTime(),
|
fs.getGroupVol_Low(),fs.getMonomerVol_Low(),fs.getMonomerLowCount(),fs.getBattGroupNum(),fs.getOnlineLowAction(),
|
fs.getDCVolHighLimit(),fs.getChargeCurrSet(),fs.getMonomerTmp_High(),fs.getDev_id()});
|
return bl;
|
}
|
//离线养护功能
|
public boolean updateMaintain(Object obj) {
|
Fbs9100_setparam fs=(Fbs9100_setparam) obj;
|
//String sql="update db_ram_db.tb_Fbs9100_setparam set MonomerTmp_High=?,OnLineVol_Low=?,OffLineYH_Cycle=? where dev_id=?";
|
String sql=" replace into db_ram_db.tb_fbs9100_setparam(dev_id,MonomerTmp_High,OnLineVol_Low,OffLineYH_Cycle) values(?,?,?,?)";
|
Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{
|
fs.getDev_id(),fs.getMonomerTmp_High(),fs.getOnLineVol_Low(),fs.getOffLineYH_Cycle()});
|
return bl;
|
}
|
//修改放电参数表中ld6
|
public boolean updateld6Param(Object obj) {
|
Fbs9100_setparam fs=(Fbs9100_setparam) obj;
|
String sql="update db_ram_db.tb_Fbs9100_setparam set testCmd=?,GroupVol_LOW=?," +
|
"MonomerVol_LOW=?,MonomerLowCount=?,MonomerTmp_High=?,DisTime=?,DisCap=?,AutoTestStartVol=?" +
|
" where dev_id=?";
|
Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{
|
fs.getTestCmd(),fs.getGroupVol_Low(),fs.getMonomerVol_Low(),fs.getMonomerLowCount(),
|
fs.getMonomerTmp_High(),fs.getDisTime(),fs.getDisCap(),fs.getAutoTestStartVol(),
|
fs.getDev_id()});
|
return bl;
|
}
|
|
//修改61850的放电参数
|
public boolean update61850Param(Object obj) {
|
Fbs9100_setparam fs=(Fbs9100_setparam) obj;
|
String sql="update db_ram_db.tb_Fbs9100_setparam set testCmd=?," +
|
"DisCurr=?,DisCap=?,DisTime=?,MonomerTmp_High=?,groupVol_Low=?,monomerVol_Low=? " +
|
"where dev_id=?";
|
Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{
|
fs.getTestCmd(),fs.getDisCurr(),fs.getDisCap(),fs.getDisTime(),fs.getMonomerTmp_High(),fs.getGroupVol_Low(),fs.getMonomerVol_Low(),fs.getDev_id()});
|
return bl;
|
}
|
|
|
public boolean del(Object obj) {
|
Fbs9100_setparam fs=(Fbs9100_setparam) obj;
|
String sql="delete from db_ram_db.tb_Fbs9100_setparam where num=?";
|
Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{fs.getNum()});
|
return bl;
|
}
|
|
public List searchAll() {
|
String sql="select * from db_ram_db.tb_Fbs9100_setparam";
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new Fbs9100_setparamImpl());
|
return list;
|
}
|
//判断该机房是不是以前有过记录
|
public int judgeSatationInParam(int dev_id) {
|
String sql=" SELECT count(num) as nums from db_ram_db.tb_Fbs9100_setparam where dev_id=? LIMIT 1 ";
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{dev_id}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
int nums=rs.getInt("nums");
|
list.add(nums);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
int flag=0;//返回的标识符
|
if(list!=null&&list.size()>0){
|
int nums=(Integer) list.get(list.size()-1);
|
if(nums>0){
|
flag=1;
|
}else{
|
flag=0;
|
}
|
}
|
return flag;
|
}
|
|
//根据机房编号和维护区查询放电机房的信息和放电参数
|
public List serchByCondition(Object obj) {
|
BattInf binf=(BattInf) obj;
|
String sql="select db_battinf.tb_battinf.battgroupid,db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.FBSDeviceId,db_battinf.tb_battinf.FBSDeviceIp,db_battinf.tb_battinf.BattGroupName" +
|
",db_battinf.tb_battinf.GroupIndexInFBSDevice,db_battinf.tb_battinf.MonCount,db_battinf.tb_battinf.MonVolStd,db_battinf.tb_battinf.MonCapStd" +
|
",db_ram_db.tb_fbs9100_setparam.HourRate,db_ram_db.tb_fbs9100_setparam.DisCurr,db_ram_db.tb_fbs9100_setparam.DisCap" +
|
",db_ram_db.tb_fbs9100_setparam.DisTime,db_ram_db.tb_fbs9100_setparam.GroupVol_LOW,db_ram_db.tb_fbs9100_setparam.MonomerVol_LOW" +
|
",db_ram_db.tb_fbs9100_setparam.MonomerLowCount,db_ram_db.tb_fbs9100_setparam.OnlineVolLowAction" +
|
",db_ram_db.tb_fbs9100_setparam.dCVolHighLimit,db_ram_db.tb_fbs9100_setparam.chargeCurrSet"+
|
",db_ram_db.tb_fbs9100_setparam.battgroupnum,db_ram_db.tb_fbs9100_setparam.testcmd,db_ram_db.tb_fbs9100_setparam.MonomerTmp_High,db_ram_db.tb_fbs9100_setparam.AutoTestStartVol " +
|
",db_ram_db.tb_fbs9100_state.dev_testtype,db_ram_db.tb_fbs9100_state.dev_alarmstate,db_ram_db.tb_fbs9100_state.dev_captest_cap" +
|
",db_ram_db.tb_fbs9100_state.dev_captest_curr,db_ram_db.tb_fbs9100_state.dev_captest_groupvol,db_ram_db.tb_fbs9100_state.dev_captest_onlinevol " +
|
",db_ram_db.tb_fbs9100_state.dev_captest_timelong,db_ram_db.tb_fbs9100_state.dev_commcount,db_ram_db.tb_fbs9100_state.dev_testgroupnum " +
|
",db_ram_db.tb_fbs9100_state.dev_conresist,db_ram_db.tb_fbs9100_state.dev_concurr,db_ram_db.tb_fbs9100_state.dev_condvoldp,db_ram_db.tb_fbs9100_state.dev_condcurr" +
|
",db_ram_db.tb_fbs9100_state.dev_61850alarms" +
|
" FROM db_battinf.tb_battinf " +
|
" LEFT OUTER JOIN db_ram_db.tb_fbs9100_setparam on db_ram_db.tb_fbs9100_setparam.dev_id=db_battinf.tb_battinf.FBSDeviceId " +
|
" LEFT OUTER JOIN db_ram_db.tb_fbs9100_state on db_ram_db.tb_fbs9100_state.dev_id=db_battinf.tb_battinf.FBSDeviceId " +
|
" where db_battinf.tb_battinf.StationName1 like ? and db_battinf.tb_battinf.StationName LIKE ? " +
|
" and db_battinf.tb_battinf.battgroupid=? ";
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{"%"+binf.getStationName1()+"%","%"+binf.getStationName()+"%",binf.getBattGroupId()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
FBS9100 fbs9100=new FBS9100();
|
BattInf binf=new BattInf();
|
binf.setBattGroupId(rs.getInt("battGroupId"));
|
binf.setStationName(rs.getString("stationName"));
|
binf.setFBSDeviceId(rs.getInt("fBSDeviceId"));
|
binf.setFbsDeviceIp(rs.getString("fbsDeviceIp"));
|
binf.setBattGroupName(rs.getString("battGroupName"));
|
binf.setGroupIndexInFBSDevice(rs.getInt("groupIndexInFBSDevice"));
|
binf.setMonCount(rs.getInt("monCount"));
|
binf.setMonVolStd(rs.getFloat("monVolStd"));
|
binf.setMonCapStd(rs.getFloat("monCapStd"));
|
fbs9100.setBinf(binf);
|
|
Fbs9100_setparam fsparam=new Fbs9100_setparam();
|
fsparam.setHourRate(rs.getInt("hourRate"));
|
fsparam.setDisCurr(rs.getFloat("disCurr"));
|
fsparam.setDisCap(rs.getFloat("disCap"));
|
fsparam.setDisTime(rs.getInt("disTime"));
|
fsparam.setGroupVol_Low(rs.getFloat("groupVol_Low"));
|
fsparam.setMonomerVol_Low(rs.getFloat("monomerVol_Low"));
|
fsparam.setMonomerLowCount(rs.getInt("monomerLowCount"));
|
fsparam.setOnlineLowAction(rs.getInt("onlineVolLowAction"));
|
fsparam.setDCVolHighLimit(rs.getFloat("dCVolHighLimit"));
|
fsparam.setChargeCurrSet(rs.getFloat("chargeCurrSet"));
|
fsparam.setBattGroupNum(rs.getInt("battGroupNum"));
|
fsparam.setTestCmd(rs.getInt("testCmd"));
|
fsparam.setMonomerTmp_High(rs.getFloat("monomerTmp_High"));
|
fsparam.setAutoTestStartVol(rs.getFloat("autoTestStartVol"));
|
fbs9100.setFsparam(fsparam);
|
|
Fbs9100_state fstate=new Fbs9100_state();
|
fstate.setDev_testtype(rs.getInt("dev_testtype"));
|
fstate.setDev_alarmstate(rs.getInt("dev_alarmstate"));
|
fstate.setDev_captest_cap(rs.getFloat("dev_captest_cap"));
|
fstate.setDev_captest_curr(rs.getFloat("dev_captest_curr"));
|
fstate.setDev_captest_groupvol(rs.getFloat("dev_captest_groupvol"));
|
fstate.setDev_captest_onlinevol(rs.getFloat("dev_captest_onlinevol"));
|
fstate.setDev_captest_timelong(rs.getInt("dev_captest_timelong"));
|
fstate.setDev_commcount(rs.getInt("dev_commcount"));
|
fstate.setDev_testgroupnum(rs.getInt("dev_testgroupnum"));
|
fstate.setDev_conresist(rs.getFloat("dev_conresist"));
|
fstate.setDev_concurr(rs.getFloat("dev_concurr"));
|
fstate.setDev_condcurr(rs.getFloat("dev_condcurr"));
|
fstate.setDev_condcurr(rs.getFloat("dev_condcurr"));
|
fstate.setDev_61850alarms(rs.getString("dev_61850alarms"));
|
|
fbs9100.setFstate(fstate);
|
list.add(fbs9100);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
//根据设备id查询设备的放电参数
|
public List serchdevParam(Object obj) {
|
BattInf binf=(BattInf) obj;
|
String sql="select db_ram_db.tb_fbs9100_setparam.dev_id,db_ram_db.tb_fbs9100_setparam.HourRate,db_ram_db.tb_fbs9100_setparam.DisCurr,db_ram_db.tb_fbs9100_setparam.DisCap " +
|
",db_ram_db.tb_fbs9100_setparam.DisTime,db_ram_db.tb_fbs9100_setparam.GroupVol_LOW,db_ram_db.tb_fbs9100_setparam.MonomerVol_LOW" +
|
",db_ram_db.tb_fbs9100_setparam.MonomerLowCount,db_ram_db.tb_fbs9100_setparam.OnlineVolLowAction " +
|
",db_ram_db.tb_fbs9100_setparam.dCVolHighLimit,db_ram_db.tb_fbs9100_setparam.chargeCurrSet "+
|
",db_ram_db.tb_fbs9100_setparam.battgroupnum,db_ram_db.tb_fbs9100_setparam.testcmd,db_ram_db.tb_fbs9100_setparam.MonomerTmp_High,db_ram_db.tb_fbs9100_setparam.AutoTestStartVol " +
|
" FROM db_ram_db.tb_fbs9100_setparam " +
|
" where db_ram_db.tb_fbs9100_setparam.dev_id=? ";
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{binf.getFBSDeviceId()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
Fbs9100_setparam fsparam=new Fbs9100_setparam();
|
fsparam.setDev_id(rs.getInt("dev_id"));
|
fsparam.setHourRate(rs.getInt("hourRate"));
|
fsparam.setDisCurr(rs.getFloat("disCurr"));
|
fsparam.setDisCap(rs.getFloat("disCap"));
|
fsparam.setDisTime(rs.getInt("disTime"));
|
fsparam.setGroupVol_Low(rs.getFloat("groupVol_Low"));
|
fsparam.setMonomerVol_Low(rs.getFloat("monomerVol_Low"));
|
fsparam.setMonomerLowCount(rs.getInt("monomerLowCount"));
|
fsparam.setOnlineLowAction(rs.getInt("onlineVolLowAction"));
|
fsparam.setDCVolHighLimit(rs.getFloat("dCVolHighLimit"));
|
fsparam.setChargeCurrSet(rs.getFloat("chargeCurrSet"));
|
fsparam.setBattGroupNum(rs.getInt("battGroupNum"));
|
fsparam.setTestCmd(rs.getInt("testCmd"));
|
fsparam.setMonomerTmp_High(rs.getFloat("monomerTmp_High"));
|
fsparam.setAutoTestStartVol(rs.getFloat("autoTestStartVol"));
|
|
list.add(fsparam);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
//机房命令操作设备时的cmd和ack校验 test_type -->默认启动测试的类型
|
public boolean sendCmdToFBS9100Dev(int cmd,int test_type,int dev_id)
|
{
|
int m_cmd = cmd;
|
int m_cmd_ack = cmd;
|
switch(m_cmd) {
|
case FBS9100_ComBase.CMD_Start: m_cmd_ack = FBS9100_ComBase.CMD_StartAck; break;
|
case FBS9100_ComBase.CMD_Stop: m_cmd_ack = FBS9100_ComBase.CMD_StopAck; break;
|
case FBS9100_ComBase.CMD_SetDischargeParm: m_cmd_ack = FBS9100_ComBase.CMD_SetDischargeParmAck; break;
|
case FBS9100_ComBase.CMD_GetDischargeParm: m_cmd_ack = FBS9100_ComBase.CMD_GetDischargeParmAck; break;
|
case FBS9100_ComBase.CMd_SetIp_Tem: m_cmd_ack = FBS9100_ComBase.CMd_SetIpAck; break;
|
case FBS9100_ComBase.CMd_SetIp_Per: m_cmd_ack = FBS9100_ComBase.CMd_SetIpAck; break;
|
case FBS9100_ComBase.CMD_GetOffLineYHParam: m_cmd_ack = FBS9100_ComBase.CMD_GetOffLineYHParam_ACK; break;
|
case FBS9100_ComBase.CMD_SetOffLineYHParam: m_cmd_ack = FBS9100_ComBase.CMD_SetOffLineYHParam_ACK; break;
|
case FBS9100_ComBase.CMD_StartOffLine: m_cmd_ack = FBS9100_ComBase.CMD_StartOffLine_ACK; break;
|
case FBS9100_ComBase.CMD_StopOffLine: m_cmd_ack = FBS9100_ComBase.CMD_StopOffLine_ACK; break;
|
case FBS9100_ComBase.CMD_ResetSystem: m_cmd_ack = FBS9100_ComBase.CMD_ResetSystemAck; break;
|
default: return false;
|
}
|
String sql_end = "";
|
if(test_type > 0 && cmd == FBS9100_ComBase.CMD_Start){ //启动测试时未点击设定参数按钮,会出现启动内阻测试bug修复
|
sql_end = ",TestCmd="+test_type;
|
}
|
boolean res_exe = false;
|
String sql = "UPDATE db_ram_db.tb_fbs9100_setparam SET "
|
+ " op_cmd=? "+sql_end
|
+ " WHERE dev_id=? ";
|
Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{m_cmd,dev_id});
|
if(true == bl)
|
{
|
sql = "SELECT op_cmd FROM db_ram_db.tb_fbs9100_setparam "+
|
" WHERE dev_id="+dev_id;
|
Connection conn=DBUtil.getConn();
|
PreparedStatement ps = null;
|
ResultSet rs = null;
|
for(int n=0; n<20; n++)
|
{
|
try {
|
ps = conn.prepareStatement(sql);
|
rs=ps.executeQuery();
|
if(rs.next())
|
{
|
if(rs.getInt("op_cmd") == m_cmd_ack)
|
{
|
res_exe = true;
|
break;
|
}
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
|
try {
|
Thread.sleep(250);
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
}
|
DBUtil.close(rs, ps, conn);
|
}
|
return res_exe;
|
}
|
//根据dev_id查询弹出框中的数据
|
public List serchbyDev_id(Object obj) {
|
Fbs9100_setparam fsparam=(Fbs9100_setparam) obj;
|
String sql=" select db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.FBSDeviceId,db_battinf.tb_battinf.FBSDeviceIp,db_battinf.tb_battinf.BattGroupName" +
|
",db_battinf.tb_battinf.GroupIndexInFBSDevice,db_battinf.tb_battinf.MonCount,db_battinf.tb_battinf.MonVolStd,db_battinf.tb_battinf.MonCapStd" +
|
",db_ram_db.tb_fbs9100_setparam.HourRate,db_ram_db.tb_fbs9100_setparam.DisCurr,db_ram_db.tb_fbs9100_setparam.DisCap" +
|
",db_ram_db.tb_fbs9100_setparam.DisTime,db_ram_db.tb_fbs9100_setparam.GroupVol_LOW,db_ram_db.tb_fbs9100_setparam.MonomerVol_LOW " +
|
",db_ram_db.tb_fbs9100_setparam.MonomerLowCount,db_ram_db.tb_fbs9100_setparam.OnlineVolLowAction " +
|
",db_ram_db.tb_fbs9100_setparam.dCVolHighLimit,db_ram_db.tb_fbs9100_setparam.chargeCurrSet,db_ram_db.tb_fbs9100_setparam.battgroupnum " +
|
",db_ram_db.tb_fbs9100_setparam.testcmd,db_ram_db.tb_fbs9100_setparam.testcmd,db_ram_db.tb_fbs9100_setparam.MonomerTmp_High " +
|
",db_ram_db.tb_fbs9100_setparam.AutoTestStartVol,db_ram_db.tb_fbs9100_setparam.OnLineVol_Low,db_ram_db.tb_fbs9100_setparam.OffLineYH_Cycle " +
|
" FROM db_battinf.tb_battinf " +
|
" LEFT OUTER JOIN db_ram_db.tb_fbs9100_setparam on db_ram_db.tb_fbs9100_setparam.dev_id=db_battinf.tb_battinf.FBSDeviceId " +
|
" WHERE db_battinf.tb_battinf.FBSDeviceId=? limit 1";
|
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{fsparam.getDev_id()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
FBS9100 fbs9100=new FBS9100();
|
BattInf binf=new BattInf();
|
binf.setStationName(rs.getString("stationName"));
|
binf.setFBSDeviceId(rs.getInt("fBSDeviceId"));
|
binf.setFbsDeviceIp(rs.getString("fbsDeviceIp"));
|
binf.setBattGroupName(rs.getString("battGroupName"));
|
binf.setGroupIndexInFBSDevice(rs.getInt("groupIndexInFBSDevice"));
|
binf.setMonCount(rs.getInt("monCount"));
|
binf.setMonVolStd(rs.getFloat("monVolStd"));
|
binf.setMonCapStd(rs.getFloat("monCapStd"));
|
fbs9100.setBinf(binf);
|
|
Fbs9100_setparam fsparam=new Fbs9100_setparam();
|
fsparam.setHourRate(rs.getInt("hourRate"));
|
fsparam.setDisCurr(rs.getFloat("disCurr"));
|
fsparam.setDisCap(rs.getFloat("disCap"));
|
fsparam.setDisTime(rs.getInt("disTime"));
|
fsparam.setGroupVol_Low(rs.getFloat("groupVol_Low"));
|
fsparam.setMonomerVol_Low(rs.getFloat("monomerVol_Low"));
|
fsparam.setMonomerLowCount(rs.getInt("monomerLowCount"));
|
fsparam.setOnlineLowAction(rs.getInt("onlineVolLowAction"));
|
fsparam.setDCVolHighLimit(rs.getFloat("dCVolHighLimit"));
|
fsparam.setChargeCurrSet(rs.getFloat("chargeCurrSet"));
|
fsparam.setBattGroupNum(rs.getInt("battGroupNum"));
|
fsparam.setTestCmd(rs.getInt("testCmd"));
|
fsparam.setMonomerTmp_High(rs.getFloat("monomerTmp_High"));
|
fsparam.setAutoTestStartVol(rs.getFloat("autoTestStartVol"));
|
fsparam.setOnLineVol_Low(rs.getFloat("onLineVol_Low"));
|
fsparam.setOffLineYH_Cycle(rs.getInt("offLineYH_Cycle"));
|
fbs9100.setFsparam(fsparam);
|
|
list.add(fbs9100);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
|
//实时刷新放电表格的电池组状态(集合)
|
public List serchByInfo(Object obj) {
|
List<BattInf> listB=(List<BattInf>) obj;
|
List listAll=new ArrayList();//存放最后的结果
|
if(listB!=null&&listB.size()>0){
|
for (int i=0;i<listB.size();i++) {
|
BattInf b=listB.get(i);
|
Connection conn=DBUtil.getConn();
|
PreparedStatement ps = null;
|
ResultSet rs = null;
|
String sql="";
|
String FBS9100sql="select DISTINCT db_battinf.tb_battinf.battgroupid,db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.FBSDeviceId,db_battinf.tb_battinf.FBSDeviceIp,db_battinf.tb_battinf.BattGroupName" +
|
",db_battinf.tb_battinf.GroupIndexInFBSDevice,db_battinf.tb_battinf.MonCount,db_battinf.tb_battinf.MonVolStd,db_battinf.tb_battinf.MonCapStd" +
|
",db_ram_db.tb_fbs9100_state.dev_testtype,db_ram_db.tb_fbs9100_state.dev_alarmstate,db_ram_db.tb_fbs9100_state.dev_captest_cap" +
|
",db_ram_db.tb_fbs9100_state.dev_captest_curr,db_ram_db.tb_fbs9100_state.dev_captest_groupvol,db_ram_db.tb_fbs9100_state.dev_captest_onlinevol" +
|
",db_ram_db.tb_fbs9100_state.dev_captest_timelong,db_ram_db.tb_fbs9100_state.dev_commcount,db_ram_db.tb_fbs9100_state.dev_testgroupnum " +
|
",db_ram_db.tb_fbs9100_state.dev_restest_moncount,db_ram_db.tb_fbs9100_state.dev_restest_monindex,db_ram_db.tb_fbs9100_state.dev_workstate,db_ram_db.tb_fbs9100_state.dev_res_test_state,db_ram_db.tb_fbs9100_state.num" +
|
",db_ram_db.tb_fbs9100_state.dev_61850alarms " +
|
" FROM db_battinf.tb_battinf " +
|
" LEFT OUTER JOIN db_ram_db.tb_fbs9100_state on db_ram_db.tb_fbs9100_state.dev_id=db_battinf.tb_battinf.FBSDeviceId " +
|
" where db_battinf.tb_battinf.FBSDeviceId="+b.getFBSDeviceId()+" and db_battinf.tb_battinf.battgroupid="+b.getBattGroupId()+" limit 1";
|
|
String BTS61850sql="select db_battinf.tb_battinf.battgroupid,db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.FBSDeviceId,db_battinf.tb_battinf.FBSDeviceIp,db_battinf.tb_battinf.BattGroupName" +
|
",db_battinf.tb_battinf.MonCount,db_battinf.tb_battinf.MonVolStd,db_battinf.tb_battinf.MonCapStd,db_battinf.tb_battinf.GroupIndexInFBSDevice " +
|
",db_ram_db.tb_bts_61850_state.stc_workstate,db_ram_db.tb_bts_61850_state.dev_captest_online,db_ram_db.tb_bts_61850_state.dev_captest_groupvol,db_ram_db.tb_bts_61850_state.dev_commcount,db_ram_db.tb_bts_61850_state.timelong" +
|
",db_ram_db.tb_bts_61850_state.alam_tmp,db_ram_db.tb_bts_61850_state.alam_relay,db_ram_db.tb_bts_61850_state.alam_comm " +
|
" from db_battinf.tb_battinf " +
|
" LEFT OUTER JOIN db_ram_db.tb_bts_61850_state on db_ram_db.tb_bts_61850_state.FBSDeviceId=db_battinf.tb_battinf.FBSDeviceId " +
|
" where db_battinf.tb_battinf.FBSDeviceId="+b.getFBSDeviceId()+" and db_battinf.tb_battinf.battgroupid="+b.getBattGroupId()+" limit 1";
|
|
String LD9sql="select db_battinf.tb_battinf.battgroupid,db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.FBSDeviceId,db_battinf.tb_battinf.FBSDeviceIp,db_battinf.tb_battinf.BattGroupName" +
|
",db_battinf.tb_battinf.MonCount,db_battinf.tb_battinf.MonVolStd,db_battinf.tb_battinf.MonCapStd,db_battinf.tb_battinf.GroupIndexInFBSDevice " +
|
",db_ram_db.tb_LD9_state.sys_state,db_ram_db.tb_LD9_state.sys_online_vol,db_ram_db.tb_LD9_state.sys_group_vol,db_ram_db.tb_LD9_state.dev_commcount,db_ram_db.tb_LD9_state.timelong,db_ram_db.tb_ld9_state.sys_stop_reason " +
|
" from db_battinf.tb_battinf " +
|
" LEFT OUTER JOIN db_ram_db.tb_LD9_state on db_ram_db.tb_LD9_state.dev_id=db_battinf.tb_battinf.FBSDeviceId " +
|
" where db_battinf.tb_battinf.FBSDeviceId="+b.getFBSDeviceId()+" and db_battinf.tb_battinf.battgroupid="+b.getBattGroupId()+" limit 1";
|
String FBS9600sql="select db_battinf.tb_battinf.battgroupid,db_battinf.tb_battinf.StationName,db_battinf.tb_battinf.FBSDeviceId,db_battinf.tb_battinf.FBSDeviceIp,FbsDeviceName,db_battinf.tb_battinf.BattGroupName" +
|
",db_battinf.tb_battinf.GroupIndexInFBSDevice,db_battinf.tb_battinf.MonCount,db_battinf.tb_battinf.MonVolStd,db_battinf.tb_battinf.MonCapStd" +
|
",db_ram_db.tb_fbs9600_state.dev_ip,db_ram_db.tb_fbs9600_state.dev_id,db_ram_db.tb_fbs9600_state.op_cmd" +
|
",db_ram_db.tb_fbs9600_state.dev_commcount,db_ram_db.tb_fbs9600_state.dev_errcommcount " +
|
" FROM db_battinf.tb_battinf " +
|
" LEFT OUTER JOIN db_ram_db.tb_fbs9600_state on db_ram_db.tb_fbs9600_state.dev_id=db_battinf.tb_battinf.FBSDeviceId " +
|
" where db_battinf.tb_battinf.FBSDeviceId="+b.getFBSDeviceId()+" and db_battinf.tb_battinf.battgroupid="+b.getBattGroupId()+" limit 1";
|
//System.out.println(b.getFBSDeviceId()+" 111");
|
if(b.getFBSDeviceId()/100000==9100||b.getFBSDeviceId()/100000==910||b.getFBSDeviceId()/100000==4016){
|
sql=FBS9100sql;
|
}else if(b.getFBSDeviceId()/100000==6185){
|
//sql=BTS61850sql;
|
sql=FBS9100sql;
|
}else if(b.getFBSDeviceId()/100000==4019){
|
sql=LD9sql;
|
}else if(b.getFBSDeviceId()/100000==9611||b.getFBSDeviceId()/100000==9600||b.getFBSDeviceId()/100000==9616){
|
sql=FBS9600sql;
|
}
|
try {
|
//System.out.println(sql);
|
ps = conn.prepareStatement(sql);
|
ps.setQueryTimeout(600);
|
rs=ps.executeQuery();
|
while(rs.next()){
|
FBS9100 fbs9100=new FBS9100();
|
BattInf binf=new BattInf();
|
binf.setBattGroupId(rs.getInt("battGroupId"));
|
binf.setStationName(rs.getString("stationName"));
|
binf.setFBSDeviceId(rs.getInt("fBSDeviceId"));
|
binf.setFbsDeviceIp(rs.getString("fbsDeviceIp"));
|
binf.setBattGroupName(rs.getString("battGroupName"));
|
binf.setGroupIndexInFBSDevice(rs.getInt("groupIndexInFBSDevice"));
|
binf.setMonCount(rs.getInt("monCount"));
|
binf.setMonVolStd(rs.getFloat("monVolStd"));
|
binf.setMonCapStd(rs.getFloat("monCapStd"));
|
fbs9100.setBinf(binf);
|
|
Fbs9100_state fstate=new Fbs9100_state();
|
if(binf.getFBSDeviceId()/100000==9100||binf.getFBSDeviceId()/100000==910||b.getFBSDeviceId()/100000==4016){
|
fstate.setNum(rs.getInt("num"));
|
fstate.setDev_testtype(rs.getInt("dev_testtype"));
|
fstate.setDev_workstate(rs.getInt("dev_workstate"));
|
fstate.setDev_alarmstate(rs.getInt("dev_alarmstate"));
|
fstate.setDev_res_test_state(rs.getInt("dev_res_test_state"));
|
fstate.setDev_captest_cap(rs.getFloat("dev_captest_cap"));
|
fstate.setDev_captest_curr(rs.getFloat("dev_captest_curr"));
|
fstate.setDev_captest_groupvol(rs.getFloat("dev_captest_groupvol"));
|
fstate.setDev_captest_onlinevol(rs.getFloat("dev_captest_onlinevol"));
|
fstate.setDev_captest_timelong(rs.getInt("dev_captest_timelong"));
|
fstate.setDev_commcount(rs.getInt("dev_commcount"));
|
fstate.setDev_testgroupnum(rs.getInt("dev_testgroupnum"));
|
fstate.setDev_restest_moncount(rs.getInt("dev_restest_moncount"));
|
fstate.setDev_restest_monindex(rs.getInt("dev_restest_monindex"));
|
|
}else if(binf.getFBSDeviceId()/100000==6185){
|
|
fstate.setDev_alarmstate(rs.getInt("dev_alarmstate"));
|
fstate.setDev_workstate(rs.getInt("dev_workstate"));
|
fstate.setDev_captest_groupvol(rs.getFloat("dev_captest_groupvol"));
|
fstate.setDev_captest_onlinevol(rs.getFloat("dev_captest_onlinevol"));
|
fstate.setDev_captest_timelong(rs.getInt("dev_captest_timelong"));
|
fstate.setDev_commcount(rs.getInt("dev_commcount"));
|
fstate.setNote("");
|
fstate.setDev_61850alarms(rs.getString("dev_61850alarms"));
|
fstate.setDev_captest_curr(rs.getFloat("dev_captest_curr"));
|
/*String alarmstr="";
|
if(rs.getInt("alam_tmp")==1){
|
if(alarmstr.length()>0){
|
alarmstr+="/";
|
}
|
alarmstr+="设备过温告警";
|
};
|
if(rs.getInt("alam_relay")==1){
|
if(alarmstr.length()>0){
|
alarmstr+="/";
|
}
|
alarmstr+="继电器K1告警";
|
};
|
if(rs.getInt("alam_comm")==1){
|
if(alarmstr.length()>0){
|
alarmstr+="/";
|
}
|
alarmstr+="通讯告警";
|
};
|
fstate.setDev_workstate(rs.getInt("stc_workstate"));
|
fstate.setDev_captest_groupvol(rs.getFloat("dev_captest_groupvol"));
|
fstate.setDev_captest_onlinevol(rs.getFloat("dev_captest_online"));
|
fstate.setDev_captest_timelong(rs.getInt("timelong"));
|
fstate.setDev_commcount(rs.getInt("dev_commcount"));
|
fstate.setNote(alarmstr);*/
|
}else if(binf.getFBSDeviceId()/100000==4019){
|
fstate.setDev_workstate(rs.getInt("sys_state"));
|
fstate.setDev_captest_groupvol(rs.getFloat("sys_group_vol"));
|
fstate.setDev_captest_onlinevol(rs.getFloat("sys_online_vol"));
|
fstate.setDev_captest_timelong(rs.getInt("timelong"));
|
fstate.setDev_commcount(rs.getInt("dev_commcount"));
|
fstate.setDev_alarmstate(rs.getInt("sys_stop_reason"));
|
}else if(binf.getFBSDeviceId()/100000==9611){
|
fstate.setDev_commcount(rs.getInt("dev_commcount"));
|
}
|
fbs9100.setFstate(fstate);
|
listAll.add(fbs9100);
|
}
|
|
} catch (SQLException e) {
|
e.printStackTrace();
|
}
|
DBUtil.close(rs, ps, conn);
|
}
|
|
}
|
return listAll;
|
}
|
|
public static void main(String[] args) {
|
Fbs9100_setparamImpl fi=new Fbs9100_setparamImpl();
|
|
BattInf binf=new BattInf();
|
binf.setStationName("");
|
binf.setStationName1("");
|
binf.setBattGroupId(1000011);
|
List<FBS9100> list=fi.serchByCondition(binf);
|
System.out.println(list.size());
|
for(FBS9100 f:list){
|
System.out.println(f);
|
}
|
}
|
|
|
}
|