package com.fgkj.services.ram;
|
|
import java.util.ArrayList;
|
import java.util.Calendar;
|
import java.util.List;
|
|
import com.fgkj.dao.BaseDAO;
|
import com.fgkj.dao.BaseDAOFactory;
|
import com.fgkj.dao.FBS9100_ComBase;
|
import com.fgkj.dao.impl.BattInfImpl;
|
import com.fgkj.dao.impl.Batt_rtdataDAOImpl;
|
import com.fgkj.dao.impl.ram.Fbs9100_setparamImpl;
|
import com.fgkj.dao.impl.ram.Fbs9100_stateImpl;
|
import com.fgkj.dto.BattInf;
|
import com.fgkj.dto.Batt_rtdata;
|
import com.fgkj.dto.ServiceModel;
|
import com.fgkj.dto.ram.Fbs9100_setparam;
|
|
public class Fbs9100_setparamService {
|
private ServiceModel model;
|
private BaseDAO dao;
|
|
public Fbs9100_setparamService() {
|
model=new ServiceModel();
|
dao=BaseDAOFactory.getBaseDAO(BaseDAO.FBS9100_SETPARAM);
|
}
|
//将需要放电的数据添加(或修改)放电参数表中
|
public ServiceModel addORupdate(Object obj) {
|
Fbs9100_setparam fsparam = (Fbs9100_setparam)obj;
|
//判断机房实时数据中该机房有没有连接到服务器
|
int flag=(new Fbs9100_stateImpl()).judgeSatationInState(fsparam.getDev_id());
|
if(flag==1){
|
//判断该机房是不是以前有过记录
|
Boolean bl=false;
|
int addORupdate=(new Fbs9100_setparamImpl()).judgeSatationInParam(fsparam.getDev_id());
|
if(addORupdate==0){
|
bl=dao.add(obj);
|
}else{
|
bl=dao.update(obj);
|
}
|
if(bl){
|
model.setCode(1);
|
model.setMsg("添加成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("设置9100参数失败,请检查网络!");
|
}
|
}else{
|
model.setCode(0);
|
model.setMsg("设置9100参数失败,请检查网络!");
|
}
|
//System.out.println(model);
|
return model;
|
|
}
|
|
public ServiceModel delete(Object obj) {
|
Boolean bl=dao.del(obj);
|
if(bl){
|
model.setCode(1);
|
model.setMsg("删除成功!");
|
}
|
else{
|
model.setMsg("删除失败!");
|
}
|
return model;
|
}
|
//弹出框的确定操作
|
public ServiceModel update(Object obj) {
|
Fbs9100_setparam fsparam=(Fbs9100_setparam) obj;
|
Boolean b=dao.update(obj);
|
if(b){
|
boolean bl=((Fbs9100_setparamImpl)dao).sendCmdToFBS9100Dev(fsparam.getNum(),fsparam.getTestCmd(), fsparam.getDev_id());
|
if(bl){
|
model.setCode(1);
|
model.setMsg("修改成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("设置9100参数失败,请检查网络!");
|
}
|
}else{
|
model.setCode(0);
|
model.setMsg("修改失败!");
|
}
|
return model;
|
}
|
//批量设置放电参数
|
public ServiceModel updatePro(Object obj) {
|
boolean bl=((Fbs9100_setparamImpl)dao).updatePro(obj);
|
if(bl) {
|
List<Fbs9100_setparam> list=(List<Fbs9100_setparam>) obj;
|
Calendar c = Calendar.getInstance();
|
//现在的时间(单位:毫秒)
|
long now_time = c.getTimeInMillis();
|
long time=0;
|
int success=0;
|
do {
|
for (int i = 0; i < list.size(); i++) {
|
Fbs9100_setparam fs=new Fbs9100_setparam();
|
fs=list.get(i);
|
if(fs.getNum()==0) {//前台传参设置
|
boolean b=((Fbs9100_setparamImpl)dao).getCmdAck(fs.getOp_cmd(), fs.getDev_id());
|
if(b) {
|
success+=1;
|
list.get(i).setNum(1);
|
}
|
}
|
}
|
if(success==list.size()) {
|
break;
|
}
|
Calendar cl = Calendar.getInstance();
|
long moment_time = cl.getTimeInMillis();
|
time=moment_time-now_time;
|
}while(time<=5*1000);
|
model.setData(list);
|
model.setCode(1);
|
model.setSum(success);
|
model.setMsg("修改成功!");
|
}else {
|
model.setCode(0);
|
model.setMsg("修改失败!");
|
}
|
return model;
|
}
|
//批量放电
|
public ServiceModel updatePro_dis(Object obj) {
|
boolean bl=((Fbs9100_setparamImpl)dao).updatePro_dis(obj);
|
if(bl) {
|
List<Fbs9100_setparam> list=(List<Fbs9100_setparam>) obj;
|
Calendar c = Calendar.getInstance();
|
//现在的时间(单位:毫秒)
|
long now_time = c.getTimeInMillis();
|
long time=0;
|
int success=0;
|
do {
|
for (int i = 0; i < list.size(); i++) {
|
Fbs9100_setparam fs=new Fbs9100_setparam();
|
fs=list.get(i);
|
if(fs.getNum()==0) {//前台传参设置
|
boolean b=((Fbs9100_setparamImpl)dao).getCmdAck(fs.getOp_cmd(), fs.getDev_id());
|
if(b) {
|
success+=1;
|
list.get(i).setNum(1);
|
}
|
}
|
}
|
if(success==list.size()) {
|
break;
|
}
|
Calendar cl = Calendar.getInstance();
|
long moment_time = cl.getTimeInMillis();
|
time=moment_time-now_time;
|
}while(time<=5*1000);
|
model.setData(list);
|
model.setCode(1);
|
model.setSum(success);
|
model.setMsg("启动放电成功!");
|
}else {
|
model.setCode(0);
|
model.setMsg("启动放电失败!");
|
}
|
return model;
|
}
|
//点击弹出框的设定按钮,修改ld6测试参数
|
public ServiceModel updateld6Param(Object obj){
|
Fbs9100_setparam fsparam=(Fbs9100_setparam) obj;
|
Boolean b=((Fbs9100_setparamImpl)dao).updateld6Param(obj);
|
if(b){
|
boolean bl=((Fbs9100_setparamImpl)dao).sendCmdToFBS9100Dev(fsparam.getNum(),fsparam.getTestCmd(),fsparam.getDev_id());
|
if(bl){
|
model.setCode(1);
|
model.setMsg("修改成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("设置ld6参数失败,请检查网络!");
|
}
|
}else{
|
model.setCode(0);
|
model.setMsg("修改失败!");
|
}
|
return model;
|
}
|
//点击弹出框的设定按钮,修改61850测试参数
|
public ServiceModel update61850Param(Object obj){
|
Fbs9100_setparam fsparam=(Fbs9100_setparam) obj;
|
Boolean b=((Fbs9100_setparamImpl)dao).update61850Param(obj);
|
if(b){
|
boolean bl=((Fbs9100_setparamImpl)dao).sendCmdToFBS9100Dev(fsparam.getNum(),fsparam.getTestCmd(),fsparam.getDev_id());
|
if(bl){
|
model.setCode(1);
|
model.setMsg("修改成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("设置61850参数失败,请检查网络!");
|
}
|
}else{
|
model.setCode(0);
|
model.setMsg("修改失败!");
|
}
|
return model;
|
}
|
|
//右键查看参数和弹出框的刷新按钮
|
public ServiceModel serchbyDev_id(Object obj) {
|
Fbs9100_setparam fsparam=(Fbs9100_setparam) obj;
|
boolean bl=((Fbs9100_setparamImpl)dao).sendCmdToFBS9100Dev(fsparam.getNum(),fsparam.getTestCmd(),fsparam.getDev_id());
|
//System.out.println(fsparam.getDev_id()+" "+bl);
|
List list=((Fbs9100_setparamImpl)dao).serchbyDev_id(obj);
|
if(bl){
|
model.setCode(1);
|
model.setData(list);
|
model.setMsg("查询成功!");
|
|
}else{
|
model.setCode(0);
|
model.setData(list);
|
model.setMsg("设置9100参数失败,请检查网络!");
|
}
|
//System.out.println(model.getData());
|
return model;
|
}
|
|
//根据机房编号和维护区查询放电机房的信息和放电参数
|
public ServiceModel serchByCondition(Object obj){
|
BattInf binf=(BattInf) obj;
|
int dev_id=(new BattInfImpl()).serchDev_id(binf);
|
boolean bl=((Fbs9100_setparamImpl)dao).sendCmdToFBS9100Dev(binf.getNum(),FBS9100_ComBase.CMD_TESTCMD_NULL, dev_id);
|
List list=dao.serchByCondition(obj);
|
if(bl){
|
model.setCode(1);
|
model.setData(list);
|
model.setMsg("查询成功!");
|
|
}else{
|
model.setCode(0);
|
model.setData(list);
|
model.setMsg("查询失败!");
|
}
|
return model;
|
}
|
|
//实时刷新放电表格的电池组状态(集合)
|
public ServiceModel serchByInfo(Object obj){
|
List list=dao.serchByInfo(obj);
|
if(list!=null && list.size()>0){
|
model.setCode(1);
|
model.setData(list);
|
model.setMsg("查询成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
//System.out.println(model);
|
return model;
|
}
|
|
//根据电池组id查询电池组内前五的内阻数据
|
public ServiceModel serchByThirdBatt(Object obj){
|
List list=(new Batt_rtdataDAOImpl()).serchByThirdBatt(obj);
|
if(list!=null&&list.size()>0){
|
model.setCode(1);
|
model.setData(list);
|
model.setMsg("查询成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
return model;
|
}
|
public static void main(String[] args) {
|
Fbs9100_setparamService fs = new Fbs9100_setparamService();
|
//fs.searchAll();
|
Fbs9100_setparam f=new Fbs9100_setparam();
|
|
f.setNum(41);
|
f.setDev_id(910000024);
|
ServiceModel model=fs.serchbyDev_id(f);
|
System.out.println(model);
|
/*Calendar c = Calendar.getInstance();
|
long now_time = c.getTimeInMillis();
|
System.out.println("now_time:"+now_time);
|
try {
|
Thread.sleep(10*1000);
|
} catch (InterruptedException e) {
|
// TODO Auto-generated catch block
|
e.printStackTrace();
|
}
|
Calendar cl = Calendar.getInstance();
|
long moment_time = cl.getTimeInMillis();
|
System.out.println("moment_time:"+moment_time);
|
System.err.println((moment_time-now_time));*/
|
}
|
|
}
|
|