package com.fgkj.dao.impl.Ld9;
|
|
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 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.dto.BattInf;
|
import com.fgkj.dto.LD9;
|
import com.fgkj.dto.LD9_setparam;
|
import com.fgkj.dto.LD9_state;
|
import com.fgkj.dto.ram.FBS9100;
|
import com.fgkj.dto.ram.Fbs9100_setparam;
|
|
public class LD9_setparamImpl implements BaseDAO,CallBack{
|
|
public List getResults(ResultSet rs) {
|
// TODO Auto-generated method stub
|
return null;
|
}
|
|
public boolean add(Object obj) {
|
// TODO Auto-generated method stub
|
return false;
|
}
|
//根据设备id修改参数(不用修改命令)
|
public boolean update(Object obj) {
|
LD9_setparam ld9=(LD9_setparam) obj;
|
String sql="update db_ram_db.tb_LD9_setparam set param_teststart_batt_num=?,param_cap=?,param_discharge_curr=?" +
|
",param_mon_curr_high=?,param_charge_curr=?,param_mon_curr_low=?,param_online_vol=?,param_charge_curr_low=?" +
|
",param_charge_cap_low=?,param_online_vol_recover=?,param_junheng_model=? where dev_id=? ";
|
boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{ld9.getParam_teststart_batt_num()
|
,ld9.getParam_cap(),ld9.getParam_discharge_curr(),ld9.getParam_mon_curr_high(),ld9.getParam_charge_curr(),ld9.getParam_mon_curr_low()
|
,ld9.getParam_online_vol(),ld9.getParam_charge_curr_low(),ld9.getParam_charge_cap_low(),ld9.getParam_online_vol_recover(),ld9.getParam_junheng_model()
|
,ld9.getDev_id()});
|
return bl;
|
}
|
|
public boolean del(Object obj) {
|
// TODO Auto-generated method stub
|
return false;
|
}
|
|
public List searchAll() {
|
// TODO Auto-generated method stub
|
return null;
|
}
|
//根据机房信息查询参数
|
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.StationName5,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_setparam.dev_id,db_ram_db.tb_LD9_setparam.op_cmd,db_ram_db.tb_LD9_setparam.param_teststart_batt_num,db_ram_db.tb_LD9_setparam.param_cap,param_discharge_curr" +
|
",db_ram_db.tb_LD9_setparam.param_mon_curr_high,db_ram_db.tb_LD9_setparam.param_charge_curr,db_ram_db.tb_LD9_setparam.param_mon_curr_low,db_ram_db.tb_LD9_setparam.param_online_vol" +
|
",db_ram_db.tb_LD9_setparam.param_charge_curr_low,db_ram_db.tb_LD9_setparam.param_charge_cap_low,db_ram_db.tb_LD9_setparam.param_online_vol_recover,db_ram_db.tb_LD9_setparam.param_module_address" +
|
",db_ram_db.tb_LD9_setparam.param_junheng_model" +
|
",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 " +
|
" from db_battinf.tb_battinf " +
|
" LEFT OUTER JOIN db_ram_db.tb_LD9_setparam on db_ram_db.tb_LD9_setparam.dev_id=db_battinf.tb_battinf.FBSDeviceId " +
|
" 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.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()){
|
LD9 ld9=new LD9();
|
BattInf binf=new BattInf();
|
binf.setBattGroupId(rs.getInt("battGroupId"));
|
binf.setStationName(rs.getString("stationName"));
|
binf.setStationName5(rs.getString("stationName5"));
|
binf.setFBSDeviceId(rs.getInt("fBSDeviceId"));
|
binf.setFbsDeviceIp(rs.getString("fbsDeviceIp"));
|
binf.setBattGroupName(rs.getString("battGroupName"));
|
binf.setMonCount(rs.getInt("monCount"));
|
binf.setMonVolStd(rs.getFloat("monVolStd"));
|
binf.setMonCapStd(rs.getFloat("monCapStd"));
|
binf.setGroupIndexInFBSDevice(rs.getInt("groupIndexInFBSDevice"));
|
ld9.setBinf(binf);
|
|
LD9_setparam ld9_param=new LD9_setparam();
|
ld9_param.setDev_id(rs.getInt("dev_id"));
|
ld9_param.setOp_cmd(rs.getInt("op_cmd"));
|
ld9_param.setParam_teststart_batt_num(rs.getInt("param_teststart_batt_num"));
|
ld9_param.setParam_cap(rs.getInt("param_cap"));
|
ld9_param.setParam_discharge_curr(rs.getFloat("param_discharge_curr"));
|
ld9_param.setParam_mon_curr_high(rs.getFloat("param_mon_curr_high"));
|
ld9_param.setParam_charge_curr(rs.getFloat("param_charge_curr"));
|
ld9_param.setParam_mon_curr_low(rs.getFloat("param_mon_curr_low"));
|
ld9_param.setParam_online_vol(rs.getFloat("param_online_vol"));
|
ld9_param.setParam_charge_curr_low(rs.getFloat("param_charge_curr_low"));
|
ld9_param.setParam_charge_cap_low(rs.getFloat("param_charge_cap_low"));
|
ld9_param.setParam_online_vol_recover(rs.getInt("param_online_vol_recover"));
|
ld9_param.setParam_module_address(rs.getInt("param_module_address"));
|
ld9_param.setParam_junheng_model(rs.getInt("param_junheng_model"));
|
ld9.setLd9_param(ld9_param);
|
|
LD9_state ld9_state=new LD9_state();
|
ld9_state.setSys_state(rs.getInt("sys_state"));
|
ld9_state.setSys_online_vol(rs.getFloat("sys_online_vol"));
|
ld9_state.setSys_group_vol(rs.getFloat("sys_group_vol"));
|
ld9_state.setDev_commcount(rs.getInt("dev_commcount"));
|
ld9_state.setTimelong(rs.getInt("timelong"));
|
list.add(ld9);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
//机房命令操作设备时的cmd和ack校验
|
public boolean sendCmdToLd9Dev(int cmd,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;
|
default: return false;
|
}
|
boolean res_exe = false;
|
String sql = "UPDATE db_ram_db.tb_LD9_setparam SET "
|
+ " op_cmd=? "
|
+ " 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_ld9_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) {
|
LD9_setparam ld9=(LD9_setparam) 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.MonCount,db_battinf.tb_battinf.MonVolStd,db_battinf.tb_battinf.MonCapStd" +
|
",db_ram_db.tb_LD9_setparam.dev_id,db_ram_db.tb_LD9_setparam.op_cmd,db_ram_db.tb_LD9_setparam.param_teststart_batt_num,db_ram_db.tb_LD9_setparam.param_cap,param_discharge_curr" +
|
",db_ram_db.tb_LD9_setparam.param_mon_curr_high,db_ram_db.tb_LD9_setparam.param_charge_curr,db_ram_db.tb_LD9_setparam.param_mon_curr_low,db_ram_db.tb_LD9_setparam.param_online_vol" +
|
",db_ram_db.tb_LD9_setparam.param_charge_curr_low,db_ram_db.tb_LD9_setparam.param_charge_cap_low,db_ram_db.tb_LD9_setparam.param_online_vol_recover,db_ram_db.tb_LD9_setparam.param_module_address" +
|
",db_ram_db.tb_LD9_setparam.param_junheng_model " +
|
" from db_battinf.tb_battinf " +
|
" LEFT OUTER JOIN db_ram_db.tb_LD9_setparam on db_ram_db.tb_LD9_setparam.dev_id=db_battinf.tb_battinf.FBSDeviceId " +
|
" where db_ram_db.tb_LD9_setparam.dev_id=? ";
|
List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{ld9.getDev_id()}, new CallBack() {
|
|
public List getResults(ResultSet rs) {
|
List list=new ArrayList();
|
try {
|
while(rs.next()){
|
LD9 ld9=new LD9();
|
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.setMonCount(rs.getInt("monCount"));
|
binf.setMonVolStd(rs.getFloat("monVolStd"));
|
binf.setMonCapStd(rs.getFloat("monCapStd"));
|
ld9.setBinf(binf);
|
|
LD9_setparam ld9_param=new LD9_setparam();
|
ld9_param.setDev_id(rs.getInt("dev_id"));
|
ld9_param.setOp_cmd(rs.getInt("op_cmd"));
|
ld9_param.setParam_teststart_batt_num(rs.getInt("param_teststart_batt_num"));
|
ld9_param.setParam_cap(rs.getInt("param_cap"));
|
ld9_param.setParam_discharge_curr(rs.getFloat("param_discharge_curr"));
|
ld9_param.setParam_mon_curr_high(rs.getFloat("param_mon_curr_high"));
|
ld9_param.setParam_charge_curr(rs.getFloat("param_charge_curr"));
|
ld9_param.setParam_mon_curr_low(rs.getFloat("param_mon_curr_low"));
|
ld9_param.setParam_online_vol(rs.getFloat("param_online_vol"));
|
ld9_param.setParam_charge_curr_low(rs.getFloat("param_charge_curr_low"));
|
ld9_param.setParam_charge_cap_low(rs.getFloat("param_charge_cap_low"));
|
ld9_param.setParam_online_vol_recover(rs.getInt("param_online_vol_recover"));
|
ld9_param.setParam_module_address(rs.getInt("param_module_address"));
|
ld9_param.setParam_junheng_model(rs.getInt("param_junheng_model"));
|
ld9.setLd9_param(ld9_param);
|
|
list.add(ld9);
|
}
|
} catch (SQLException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
return list;
|
}
|
});
|
return list;
|
}
|
public List serchByInfo(Object obj) {
|
// TODO Auto-generated method stub
|
return null;
|
}
|
|
}
|