whycrzg
2021-02-23 351b9a53cb9ecebdf8f79db0117f540d9c42c2a4
src/main/java/com/fgkj/services/BattMap_informationService.java
@@ -1,40 +1,68 @@
package com.fgkj.services;
import com.fgkj.util.*;
import com.fgkj.dto.BattInf;
import com.fgkj.dto.BattMap_information;
import com.fgkj.dto.ServiceModel;
import com.fgkj.dto.User_inf;
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 org.springframework.beans.factory.annotation.Autowired;
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 {
   @Autowired
   @Resource
   private BattMap_informationMapper mapper;
   @Autowired
   @Resource
   private Battalarm_dataMapper battAlarmDataMapper;
   @Autowired
   @Resource
   private BadBatt_monMapper badBattMonMapper;
   @Autowired
   @Resource
   private BattDischarge_planMapper battDischargePlanMapper;
   @Autowired
   @Resource
   private Fbs9100_stateMapper fbs9100StateMapper;
   @Autowired
   @Resource
   private BattInfMapper battInfMapper;
   private ServiceModel model;
   ServiceModel model = new ServiceModel();
   
   //9.1录入机房信息
   public ServiceModel add(Object obj){
      Boolean bl=mapper.add(obj);
   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("添加成功!");
@@ -44,21 +72,9 @@
      }
      return model;
   }
   //9.1录入机房信息
   public ServiceModel addDev(Object obj){
      Boolean bl=mapper.addDev(obj);
      if(bl){
         model.setCode(1);
         model.setMsg("添加成功!");
      }else{
         model.setCode(0);
         model.setMsg("添加失败!");
      }
      return model;
   }
   public ServiceModel update(Object obj){
      Boolean bl=mapper.update(obj);
   public ServiceModel update(BattMap_information obj){
      ServiceModel model = new ServiceModel();
      Boolean bl=mapper.update(obj)>0;
      if(bl){
         model.setCode(1);
         model.setMsg("修改成功!");
@@ -70,8 +86,9 @@
   }
   
   //从地图上删除定位信息
   public ServiceModel del(Object obj){
      Boolean bl=mapper.del(obj);
   public ServiceModel del(BattMap_information obj){
      ServiceModel model = new ServiceModel();
      Boolean bl=mapper.del(obj)>0;
      if(bl){
         model.setCode(1);
         model.setMsg("删除成功!");
@@ -88,16 +105,16 @@
      List listAll=new ArrayList();//存放最后的结果
      if(list!=null&&list.size()>0){
         for(int i=0;i<list.size();i++){
            ServiceModel model=new ServiceModel();
            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);      //延时总数
             model.setCode(numAlarm);      //告警总数
             model.setSum(numBadBatt);      //落后总数
             model.setNewsum(numPlan);      //延时总数
            listAll.add(model);
         }
      }
@@ -105,7 +122,7 @@
   }
   
   //首页上查询用户管理的已经设置过位置的机房信息
   public List searchUserManageStation(Object obj){
   public List searchUserManageStation(User_inf obj){
      List<BattMap_information> list = mapper.serchInBattMapByUid(obj);
      List listAll=new ArrayList();//存放最后的结果
      String state="";
@@ -115,12 +132,36 @@
      if(list!=null&&list.size()>0){
         for(int i=0;i<list.size();i++){
            state="item-normal";
            ServiceModel model=new ServiceModel();
            ServiceModelElectri model=new ServiceModelElectri();
            BattMap_information binformation = list.get(i);
            if(binformation.getFBSDeviceId()/100000==6185){
            if(binformation.getFbsDeviceId()/100000==6185){
               BattInf binf=new BattInf();
               binf.setFBSDeviceId(binformation.getFBSDeviceId());
               state=fbs9100StateMapper.seachDevNow(binf);
               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);      //告警总数
@@ -137,13 +178,12 @@
                  }
               }
            }
            //TODO perry
            // model.setData(list.get(i));
            // model.setCode(numAlarm);      //告警总数
            // model.setSum(numBadBatt);      //落后总数
            // model.setNewsum(numPlan);      //延时总数
            // model.setMsg(state);            //61850状态
            // model.setMsgN(binformation.getFBSDeviceId().toString());
             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);
         }
@@ -152,21 +192,23 @@
   }
   
   //9.1百度地图定位根据省份查询所有该区域的机房
   public List serchByCondition(Object obj){
   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++){
               ServiceModel model=new ServiceModel();
               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);
               //TODO perry
               // model.setData(list.get(i));
               // model.setCode(numAlarm);      //告警总数
               // model.setSum(numBadBatt);      //落后总数
               // model.setNewsum(numPlan);      //延时总数
                model.setData(list.get(i));
                model.setCode(numAlarm);      //告警总数
                model.setSum(numBadBatt);      //落后总数
                model.setNewsum(numPlan);      //延时总数
               listAll.add(model);
            }
         }
@@ -174,29 +216,39 @@
      }
   
   //9.1机房详情显示机房具体落后和告警的信息(机房信息内容画图)
   public List serchMonNum(Object 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);
            ServiceModel model=new ServiceModel();
   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());//电池组单体个数
            //TODO perry
            // model.setNewsum(binf.getBattGroupId());
            // model.setMsg(binf.getBattGroupName());//电池组名称
            // String monBads=badBattMonMapper.serchMonBad(binf);
            // String monAlarms=battAlarmDataMapper.serchMonAlarm(binf);
             // model.setMsgN(monBads);
             // model.setMsgO(monAlarms);
             listAll.add(model);
            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(Object obj){
    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){  
@@ -207,16 +259,18 @@
            binf.setNum(dayM);
         }
         model.setCode(1);
         model.setMsg("查询成功!");
         model.setData(list);
      }else{
         model.setCode(0);
         model.setMsg("删除失败!");
         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);
@@ -230,7 +284,8 @@
      return model;
   }
   //9.1查询未添加物理信息的机房(用户管理的)
   public ServiceModel serchNotInBattMapByUid(Object obj) {
   public ServiceModel serchNotInBattMapByUid(User_inf obj) {
      ServiceModel model= new ServiceModel();
      List list=mapper.serchNotInBattMapByUid(obj);
      if(list!=null&&list.size()>0){
         model.setCode(1);
@@ -245,7 +300,8 @@
   }
   //9.1查询已经添加物理信息的机房(用户管理的)
   public ServiceModel serchInBattMapByUid(Object obj) {
   public ServiceModel serchInBattMapByUid(User_inf obj) {
      ServiceModel model= new ServiceModel();
      List list=mapper.serchInBattMapByUid(obj);
      if(list!=null&&list.size()>0){
         model.setCode(1);
@@ -261,6 +317,7 @@
   
   //9.1查询机房所在的所有省份
   public ServiceModel serchStationName1(){
      ServiceModel model= new ServiceModel();
      List list=mapper.serchStationName1();
      //System.out.println(list.size());
      if(list!=null&&list.size()>0){
@@ -274,7 +331,8 @@
      return model;
   }
   //9.1根据省份查询机房所在的所有城市
   public ServiceModel serchStationName2(Object obj){
   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){
@@ -288,7 +346,8 @@
      return model;
   }
   //根据省/市/区县查询所有的站点
   public ServiceModel serchStationName3(Object obj){
   public ServiceModel serchStationName3(BattInf obj){
      ServiceModel model= new ServiceModel();
      List list=mapper.serchStationName3(obj);
      if(list!=null&&list.size()>0){
         model.setCode(1);
@@ -301,7 +360,8 @@
      return model;
   }
   //9.1根据省份和城市查询机房所在的所有机房
   public ServiceModel serchStationName(Object obj){
   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){
@@ -315,7 +375,8 @@
         return model;
      }
   //9.1地图上根据维护区查询机房经纬度
   public ServiceModel serchByInfo(Object obj) {
   public ServiceModel serchByInfo(BattMap_information obj) {
      ServiceModel model = new ServiceModel();
      List list=mapper.serchByInfo(obj);
      if(list!=null&&list.size()>0){
         model.setCode(1);
@@ -328,7 +389,8 @@
      return model;
   }
   //查询站点的经纬度
   public ServiceModel serchAddressByStationName3(Object obj) {
   public ServiceModel serchAddressByStationName3(BattMap_information obj) {
      ServiceModel model = new ServiceModel();
      List list=mapper.serchAddressByStationName3(obj);
      if(list!=null&&list.size()>0){
         model.setCode(1);
@@ -346,7 +408,7 @@
   public static void main(String[] args) {
      BattMap_informationService service=new BattMap_informationService();
      User_inf uinf=new User_inf();
      uinf.setUId(1002);
      uinf.setuId(1002);
       service.searchUserManageStation(uinf);
   }
}