package com.fgkj.services;
|
|
import com.fgkj.dto.*;
|
import com.fgkj.dto.ram.Fbs9100_state;
|
import com.fgkj.mapper.impl.*;
|
import com.fgkj.mapper.impl.ram.Fbs9100_stateMapper;
|
import com.fgkj.util.ActionUtil;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.ArrayList;
|
import java.util.Date;
|
import java.util.List;
|
@Service
|
public class BattMap_informationService {
|
|
@Resource
|
private BattMap_informationMapper mapper;
|
@Resource
|
private Battalarm_dataMapper battAlarmDataMapper;
|
@Resource
|
private BadBatt_monMapper badBattMonMapper;
|
@Resource
|
private BattDischarge_planMapper battDischargePlanMapper;
|
@Resource
|
private Fbs9100_stateMapper fbs9100StateMapper;
|
@Resource
|
private BattInfMapper battInfMapper;
|
|
ServiceModel model = new ServiceModel();
|
|
//9.1录入机房信息
|
public ServiceModel add(BattMap_information obj) {
|
ServiceModel model = new ServiceModel();
|
Boolean bl = true;
|
try {
|
bl = mapper.add(obj) > 0;
|
} catch (Exception e) {
|
e.printStackTrace();
|
model.setCode(0);
|
model.setMsg("添加失败!");
|
return model;
|
}
|
if (bl) {
|
model.setCode(1);
|
model.setMsg("添加成功!");
|
} else {
|
model.setCode(0);
|
model.setMsg("添加失败!");
|
}
|
return model;
|
}
|
|
//9.1录入机房信息
|
public ServiceModel addDev(BattMap_information obj){
|
ServiceModel model = new ServiceModel();
|
Boolean bl=true;
|
try {
|
bl=mapper.addDev(obj)>0;
|
} catch (Exception e) {
|
e.printStackTrace();
|
model.setCode(0);
|
model.setMsg("添加失败!");
|
return model;
|
}
|
if(bl){
|
model.setCode(1);
|
model.setMsg("添加成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("添加失败!");
|
}
|
return model;
|
}
|
public ServiceModel update(BattMap_information obj){
|
ServiceModel model = new ServiceModel();
|
Boolean bl=mapper.update(obj)>0;
|
if(bl){
|
model.setCode(1);
|
model.setMsg("修改成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("修改失败!");
|
}
|
return model;
|
}
|
|
//从地图上删除定位信息
|
public ServiceModel del(BattMap_information obj){
|
ServiceModel model = new ServiceModel();
|
Boolean bl=mapper.del(obj)>0;
|
if(bl){
|
model.setCode(1);
|
model.setMsg("删除成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("删除失败!");
|
}
|
return model;
|
}
|
|
//9.1百度地图定位查询电池组信息
|
public List searchAll(){
|
List<BattMap_information> list =mapper.searchAll();
|
List listAll=new ArrayList();//存放最后的结果
|
if(list!=null&&list.size()>0){
|
for(int i=0;i<list.size();i++){
|
ServiceModelElectri model = new ServiceModelElectri();
|
BattMap_information binformation=list.get(i);
|
int numAlarm=battAlarmDataMapper.serchByStationId(binformation);
|
int numBadBatt=badBattMonMapper.serchByStationId(binformation);
|
int numPlan=battDischargePlanMapper.serchByStationId(binformation);
|
model.setData(list.get(i));
|
//TODO perry
|
model.setCode(numAlarm); //告警总数
|
model.setSum(numBadBatt); //落后总数
|
model.setNewsum(numPlan); //延时总数
|
listAll.add(model);
|
}
|
}
|
return listAll;
|
}
|
|
//首页上查询用户管理的已经设置过位置的机房信息
|
public List searchUserManageStation(User_inf obj){
|
List<BattMap_information> list = mapper.serchInBattMapByUid(obj);
|
List listAll=new ArrayList();//存放最后的结果
|
String state="";
|
int numBadBatt=0;
|
int numAlarm=0;
|
int numPlan=0;
|
if(list!=null&&list.size()>0){
|
for(int i=0;i<list.size();i++){
|
state="item-normal";
|
ServiceModelElectri model=new ServiceModelElectri();
|
BattMap_information binformation = list.get(i);
|
if(binformation.getFbsDeviceId()/100000==6185){
|
BattInf binf=new BattInf();
|
binf.setFbsDeviceId(binformation.getFbsDeviceId());
|
List<Fbs9100_state> fbslist =fbs9100StateMapper.seachDevNow(binf);
|
if(fbslist!=null &&fbslist.size()>0){
|
Fbs9100_state fbs=fbslist.get(fbslist.size()-1);
|
if(fbs.getDev_61850alarms().contains("true")){
|
state="item-dev_alarm";
|
}else{
|
switch (fbs.getDev_workstate()) {
|
case 0:
|
state="item-online_charge";
|
break;
|
case 1:
|
state="item-pre_charge";
|
break;
|
case 2:
|
state="item-nuclear_cap";
|
break;
|
case 3:
|
state="item-nuclear_cap";
|
break;
|
default:
|
break;
|
}
|
}
|
|
}
|
}else{
|
numBadBatt=badBattMonMapper.serchByStationId(binformation); //落后总数
|
numAlarm=battAlarmDataMapper.serchByStationId(binformation); //告警总数
|
numPlan=battDischargePlanMapper.serchByStationId(binformation); //延迟总数
|
if(numBadBatt>0){
|
state="item-behind"; //落后机房
|
}else{
|
if(numAlarm > 0){
|
state="item-warn"; //告警机房
|
}else{
|
if(numPlan > 0){
|
state="item-timeout"; //延迟机房
|
}
|
}
|
}
|
}
|
model.setData(list.get(i));
|
model.setCode(numAlarm); //告警总数
|
model.setSum(numBadBatt); //落后总数
|
model.setNewsum(numPlan); //延时总数
|
model.setMsg(state); //61850状态
|
model.setMsgN(binformation.getFbsDeviceId().toString());
|
//System.out.println(model);
|
listAll.add(model);
|
}
|
}
|
return listAll;
|
}
|
|
//9.1百度地图定位根据省份查询所有该区域的机房
|
public List serchByCondition(BattMap_information obj){
|
List<BattMap_information> list =mapper.serchByCondition(obj);
|
// System.out.println("list = " + list);
|
|
List listAll=new ArrayList();//存放最后的结果
|
if(list!=null&&list.size()>0){
|
for(int i=0;i<list.size();i++){
|
ServiceModelElectri model=new ServiceModelElectri();
|
BattMap_information binformation=list.get(i);
|
// System.out.println("binformation = " + binformation);
|
int numAlarm=battAlarmDataMapper.serchByStationId(binformation);
|
int numBadBatt=badBattMonMapper.serchByStationId(binformation);
|
int numPlan=battDischargePlanMapper.serchByStationId(binformation);
|
model.setData(list.get(i));
|
model.setCode(numAlarm); //告警总数
|
model.setSum(numBadBatt); //落后总数
|
model.setNewsum(numPlan); //延时总数
|
listAll.add(model);
|
}
|
}
|
return listAll;
|
}
|
|
//9.1机房详情显示机房具体落后和告警的信息(机房信息内容画图)
|
public List serchMonNum(BattMap_information obj) {
|
List<BattInf> list = battInfMapper.serchMonNum(obj);
|
List listAll = new ArrayList();//存放指定机房的信息
|
if (list != null && list.size() > 0) {
|
for (int i = 0; i < list.size(); i++) {
|
BattInf binf = list.get(i);
|
ServiceModelElectri model = new ServiceModelElectri();
|
model.setCode(binf.getMonCount());//电池组单体个数
|
model.setNewsum(binf.getBattGroupId());
|
model.setMsg(binf.getBattGroupName());//电池组名称
|
List<BadBatt_mon> listb = badBattMonMapper.serchMonBad(binf);
|
|
String monBads = "";//存放指定电池组落后单体信息
|
if (listb != null && listb.size() > 0) {
|
monBads = listb.get(listb.size() - 1).getNote();
|
}
|
List<Battalarm_data> listbd = battAlarmDataMapper.serchMonAlarm(binf);
|
|
String monAlarms = "";//存放指定电池组告警单体信息
|
if (listbd != null && listbd.size() > 0) {
|
monAlarms = listbd.get(listbd.size() - 1).getNote();
|
}
|
model.setMsgN(monBads);
|
model.setMsgO(monAlarms);
|
listAll.add(model);
|
}
|
}
|
return listAll;
|
}
|
|
//9.1电池寿命管理
|
public ServiceModel serchByStationid(BattMap_information obj){
|
ServiceModel model= new ServiceModel();
|
List<BattInf> list=battInfMapper.serchByStationid(obj);
|
List listAll=new ArrayList();//存放指定机房的信息
|
if(list!=null && list.size()>0){
|
for(int i=0;i<list.size();i++){
|
BattInf binf=list.get(i);
|
Date battinusedate=binf.getBattInUseDate();
|
int dayM=ActionUtil.battInuseMonth(battinusedate);
|
binf.setNum(dayM);
|
}
|
model.setCode(1);
|
model.setMsg("查询成功!");
|
model.setData(list);
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
return model;
|
}
|
|
//9.1查询未添加物理信息的机房
|
public ServiceModel serchNotInBattMap(){
|
ServiceModel model= new ServiceModel();
|
List list=mapper.serchNotInBattMap();
|
if(list!=null&&list.size()>0){
|
model.setCode(1);
|
model.setMsg("查询成功!");
|
model.setData(list);
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
//System.out.println(model);
|
return model;
|
}
|
//9.1查询未添加物理信息的机房(用户管理的)
|
public ServiceModel serchNotInBattMapByUid(User_inf obj) {
|
ServiceModel model= new ServiceModel();
|
List list=mapper.serchNotInBattMapByUid(obj);
|
if(list!=null&&list.size()>0){
|
model.setCode(1);
|
model.setMsg("查询成功!");
|
model.setData(list);
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
//System.out.println(model);
|
return model;
|
}
|
|
//9.1查询已经添加物理信息的机房(用户管理的)
|
public ServiceModel serchInBattMapByUid(User_inf obj) {
|
ServiceModel model= new ServiceModel();
|
List list=mapper.serchInBattMapByUid(obj);
|
if(list!=null&&list.size()>0){
|
model.setCode(1);
|
model.setMsg("查询成功!");
|
model.setData(list);
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
//System.out.println(model);
|
return model;
|
}
|
|
//9.1查询机房所在的所有省份
|
public ServiceModel serchStationName1(){
|
ServiceModel model= new ServiceModel();
|
List list=mapper.serchStationName1();
|
//System.out.println(list.size());
|
if(list!=null&&list.size()>0){
|
model.setCode(1);
|
model.setData(list);
|
model.setMsg("查询成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
return model;
|
}
|
//9.1根据省份查询机房所在的所有城市
|
public ServiceModel serchStationName2(BattMap_information obj){
|
ServiceModel model= new ServiceModel();
|
List list=mapper.serchStationName2(obj);
|
//System.out.println(list.size());
|
if(list!=null&&list.size()>0){
|
model.setCode(1);
|
model.setData(list);
|
model.setMsg("查询成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
return model;
|
}
|
//根据省/市/区县查询所有的站点
|
public ServiceModel serchStationName3(BattInf obj){
|
ServiceModel model= new ServiceModel();
|
List list=mapper.serchStationName3(obj);
|
if(list!=null&&list.size()>0){
|
model.setCode(1);
|
model.setData(list);
|
model.setMsg("查询成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
return model;
|
}
|
//9.1根据省份和城市查询机房所在的所有机房
|
public ServiceModel serchStationName(BattMap_information obj){
|
ServiceModel model= new ServiceModel();
|
List list=mapper.serchStationName(obj);
|
//System.out.println(list.size());
|
if(list!=null&&list.size()>0){
|
model.setCode(1);
|
model.setData(list);
|
model.setMsg("查询成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
return model;
|
}
|
//9.1地图上根据维护区查询机房经纬度
|
public ServiceModel serchByInfo(BattMap_information obj) {
|
ServiceModel model = new ServiceModel();
|
List list=mapper.serchByInfo(obj);
|
if(list!=null&&list.size()>0){
|
model.setCode(1);
|
model.setData(list);
|
model.setMsg("查询成功!");
|
}else{
|
model.setCode(0);
|
model.setMsg("查询失败!");
|
}
|
return model;
|
}
|
//查询站点的经纬度
|
public ServiceModel serchAddressByStationName3(BattMap_information obj) {
|
ServiceModel model = new ServiceModel();
|
List list=mapper.serchAddressByStationName3(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) {
|
BattMap_informationService service=new BattMap_informationService();
|
User_inf uinf=new User_inf();
|
uinf.setuId(1002);
|
service.searchUserManageStation(uinf);
|
}
|
}
|