package com.whyc.webSocket; import com.whyc.config.WebSocketConfig; import com.whyc.dto.DeviceTypeDTO; import com.whyc.dto.Response; import com.whyc.dto.paramter.RealTimePar; import com.whyc.pojo.Battinf; import com.whyc.pojo.PeakStatistics; import com.whyc.pojo.PowerInf; import com.whyc.pojo.StationInf; import com.whyc.service.*; import com.whyc.util.ActionUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import javax.servlet.http.HttpSession; import javax.websocket.*; import javax.websocket.server.ServerEndpoint; import java.util.HashMap; import java.util.List; import java.util.Map; @Component @ServerEndpoint(value = "/RealTime", encoders = WebSocketEncoder.class, configurator = WebSocketConfig.class) public class RealTimeWebsocket { private volatile Thread thread; private static final int executeTime = 5000; private volatile boolean runFlag=true; private volatile Map threadMap = new HashMap<>(); private volatile Map threadFlagMap = new HashMap<>(); private static BattRtstateService rtstateservice; //组端 private static Fbs9100StateService f9100service; //fbs9100 private static BattRtdataService rtdataservice; //单体 private static Fbs9100sFodStateService fodservice; //除硫 private static BattRtalarmService rtalarmService; //电池告警 private static BattRsalarmService rsalarmService; //组端告警 private static Ld9StateService ld9Service; //ld9 private static Li9130BmsStateService li9130Service; //li9130、 private static Fbs9100SetparamService f9100setservice;//setparam private static Ess3100SysstateService ess3100Sysservice;//3100sys private static Ess3100PcsStateService ess3100Pcsservice;//3100pcs private static BattGtstateService gtsservice;//gts private static LithiumDataService lithiumservice;//Lithium private static PwrdevAcdcdataService pwrdevAcdcservice;//PwrdevAcdc private static Fbs9100InsulatstateService f9100Insulatstateservice;//Fbs9100Insulatstate private static Fbs9100ChargerstateService f9100Chargerstateservice;//Fbs9100Chargerstate private static Fbs9100sBuscoupleStateService fbs9100sBuscoupleStateService; private static BattInfService battInfService; private static BatttestdataInfService batttestDataInfService; private static PeakStatisticsService peakStatisticsService; private static KgdyStateService kgdyStateService; private static Fbs9140TopologyStateService fbs9140TopologyStateService; private static Fbs5100InverterInfoService fbs5100InverterInfoService; private static Fbs9100SetParamTempService fbs9100SetParamTempService; private static CheckDialogService checkDialogService; private static Fbs9100sStemnodeStateService fbs9100sStemnodeStateService; private static Dev6159PowerYxService dev6159PowerYxService; private static Dev6159PowerYcService dev6159PowerYcService; private static AcdcSecuityService acdcSecuityService; private static PowerInfService pinfService; private static Qgn618NbstateService qgnService; private Session session; private HttpSession httpSession; @Autowired public void setService(PowerInfService pinfService) { RealTimeWebsocket.pinfService = pinfService; } @Autowired public void setService(AcdcSecuityService acdcSecuityService) { RealTimeWebsocket.acdcSecuityService = acdcSecuityService; } @Autowired public void setQgn618NbstateService(Qgn618NbstateService qgnService) { RealTimeWebsocket.qgnService = qgnService; } @Autowired public void setService(BattRtstateService rtstateservice) { RealTimeWebsocket.rtstateservice = rtstateservice; } @Autowired public void setService(Fbs9100StateService f9100service) { RealTimeWebsocket.f9100service = f9100service; } @Autowired public void setService(BattRtdataService rtdataservice) { RealTimeWebsocket.rtdataservice = rtdataservice; } @Autowired public void setService(Fbs9100sFodStateService fodservice) { RealTimeWebsocket.fodservice = fodservice; } @Autowired public void setService(BattRtalarmService rtalarmService) { RealTimeWebsocket.rtalarmService = rtalarmService; } @Autowired public void setService(BattRsalarmService rsalarmService) { RealTimeWebsocket.rsalarmService = rsalarmService; } @Autowired public void setService(Ld9StateService ld9Service) { RealTimeWebsocket.ld9Service = ld9Service; } @Autowired public void setService(Li9130BmsStateService li9130Service) { RealTimeWebsocket.li9130Service = li9130Service; } @Autowired public void setService(Fbs9100SetparamService f9100setservice) { RealTimeWebsocket.f9100setservice = f9100setservice; } @Autowired public void setService(Ess3100PcsStateService ess3100Pcsservice) { RealTimeWebsocket.ess3100Pcsservice = ess3100Pcsservice; } @Autowired public void setService(BattGtstateService gtsservice) { RealTimeWebsocket.gtsservice = gtsservice; } @Autowired public void setService(LithiumDataService lithiumservice) { RealTimeWebsocket.lithiumservice = lithiumservice; } @Autowired public void setService(PwrdevAcdcdataService pwrdevAcdcservice) { RealTimeWebsocket.pwrdevAcdcservice = pwrdevAcdcservice; } @Autowired public void setService(Fbs9100InsulatstateService f9100Insulatstateservice) { RealTimeWebsocket.f9100Insulatstateservice = f9100Insulatstateservice; } @Autowired public void setService(Fbs9100ChargerstateService f9100Chargerstateservice) { RealTimeWebsocket.f9100Chargerstateservice = f9100Chargerstateservice; } @Autowired public void setService(Fbs9100sBuscoupleStateService fbs9100sBuscoupleStateService) { RealTimeWebsocket.fbs9100sBuscoupleStateService = fbs9100sBuscoupleStateService; } @Autowired public void setService(BattInfService battInfService) { RealTimeWebsocket.battInfService = battInfService; } @Autowired public void setService(BatttestdataInfService batttestDataInfService) { RealTimeWebsocket.batttestDataInfService = batttestDataInfService; } @Autowired public void setPeakStatisticsService(PeakStatisticsService peakStatisticsService) { RealTimeWebsocket.peakStatisticsService = peakStatisticsService; } @Autowired public void setKgdyStateService(KgdyStateService kgdyStateService) { RealTimeWebsocket.kgdyStateService = kgdyStateService; } @Autowired public void setFbs9140TopologyStateService(Fbs9140TopologyStateService fbs9140TopologyStateService) { RealTimeWebsocket.fbs9140TopologyStateService = fbs9140TopologyStateService; } @Autowired public void setFbs5100InverterInfoService(Fbs5100InverterInfoService fbs5100InverterInfoService) { RealTimeWebsocket.fbs5100InverterInfoService = fbs5100InverterInfoService; } @Autowired public void setFbs9100SetParamTempService(Fbs9100SetParamTempService fbs9100SetParamTempService) { RealTimeWebsocket.fbs9100SetParamTempService = fbs9100SetParamTempService; } @Autowired public void setCheckDialogService(CheckDialogService checkDialogService) { RealTimeWebsocket.checkDialogService = checkDialogService; } @Autowired public void setFbs9100sStemnodeStateService(Fbs9100sStemnodeStateService fbs9100sStemnodeStateService) { RealTimeWebsocket.fbs9100sStemnodeStateService = fbs9100sStemnodeStateService; } @Autowired public void setService(Dev6159PowerYxService dev6159PowerYxService) { RealTimeWebsocket.dev6159PowerYxService = dev6159PowerYxService; } @Autowired public void setService(Dev6159PowerYcService dev6159PowerYcService) { RealTimeWebsocket.dev6159PowerYcService = dev6159PowerYcService; } @OnOpen public void onOpen(Session session, EndpointConfig config) { this.session = session; this.httpSession = (HttpSession) config.getUserProperties().get("httpSession"); } @OnMessage public void onMessage(Session session, String message) { RealTimePar realTimePar = ActionUtil.getGson().fromJson(message, RealTimePar.class); realTimePar.setDevType(realTimePar.getDevId() / 100000); String lang = (String) this.httpSession.getAttribute("lang"); //String lang ="zh_cn"; thread = new Thread("Thread_RealTime") { @Override public void run() { while (runFlag && !isInterrupted()) { Thread thread = currentThread(); threadFlagMap.put(thread.getId(), true); try { Response res = new Response(); switch (realTimePar.getPageType()) { case "standard"://61850,61852 res = getStandard(realTimePar, lang); break; case "dbs": res = getDbs(realTimePar, lang); break; case "a059": res = getA059(realTimePar); break; case "enestorage": res = getEnestorage(realTimePar); break; case "btssreen": res = getBtssreen(realTimePar); break; case "power": res = getPower(realTimePar); break; case "isolating": res = getIsolating(realTimePar); break; case "charger": res = getCharger(realTimePar); break; case "power1": res = getPower1(realTimePar); break; case "totalInfo": res = getTotalInfo(realTimePar); break; case "fbo4830": res = getFbo4830(realTimePar); break; case "fbo4831": res = getFbo4831(realTimePar); break; case "fbo4815": res = getFbo4815(realTimePar); break; case "kgdy": res = getKgdy(realTimePar); break; case "paralle": res = getParalle(realTimePar, lang); break; case "paralle9149": res = getParalle9149(realTimePar, lang); break; case "inverter5100": res = getInverter5100(realTimePar); break; case "powerHr6159": res = getPowerHr6159(realTimePar); break; case "intellect61853": res = getIntellect61853(realTimePar); break; case "nibian6184": res = getNibian6184(realTimePar,lang); break; case "nibian6186": res = getNibian6186(realTimePar,lang); break; } //实时显示调整,增加电池数量,标称单体电压,铅酸还是锂电,放置于返回结果的data2 Battinf battinf = battInfService.getBattGroupInfoByBattGroupId(realTimePar.getBattGroupId()); Map> statisticList = peakStatisticsService.getTodayMapByBattGroupId(realTimePar.getBattGroupId()); res.setData2(battinf); res.setData3(statisticList); if (session.isOpen()) { //推送信息 synchronized (session) { session.getBasicRemote().sendObject(new Response().set(1, res)); } threadFlagMap.put(thread.getId(), false); } sleep(executeTime); } catch (Exception e) { interrupt(); } } } }; thread.start(); threadFlagMap.put(thread.getId(),true); //停止老的socket线程 Thread threadBefore = threadMap.get(session.getId()); if(threadBefore !=null && threadBefore.isAlive()){ while (threadFlagMap.get(threadBefore.getId())){ } threadBefore.interrupt(); } //将线程存储,便于调用定位 threadMap.put(session.getId(), this.thread); } @OnClose public void onClose(CloseReason closeReason){ System.err.println("closeReason = " + closeReason); runFlag = false; if (thread != null && thread.isAlive()) { thread.interrupt(); } threadMap.remove(session.getId()); } @OnError public void onError(Throwable error) { error.printStackTrace(); if (thread != null && thread.isAlive()) { thread.interrupt(); } threadMap.remove(session.getId()); } //只能61853的实时页面信息 public Response getIntellect61853(RealTimePar realTimePar) { Map res = new HashMap<>(); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); //查询电池组端信息2组数据同时获取分开放 List binfList=battInfService.getBattGroupInfoByFBSDeviceId(realTimePar.getDevId()); if(binfList!=null){ for (Battinf binf:binfList) { Response rtstateRes = rtstateservice.serchByCondition(binf.getBattGroupId()); res.put("rtstate"+binf.getGroupIndexInFBSDevice(), rtstateRes); //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(binf.getBattGroupId()); res.put("rtdata"+binf.getGroupIndexInFBSDevice(), rtdataRes); res.put("binf"+binf.getGroupIndexInFBSDevice(), binf); } } return new Response().set(1, res); } //kgdy的实时页面信息 public Response getKgdy(RealTimePar realTimePar) { Map res = new HashMap<>(); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); //查询电池组端信息 Response rtstateRes = rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate", rtstateRes); //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata", rtdataRes); //kgdy状态数据 Response kgdystateRes = kgdyStateService.serchByCondition(realTimePar.getDevId()); res.put("kgdystate", kgdystateRes); return new Response().set(1, res); } //FBO4830的实时页面信息 public Response getFbo4830(RealTimePar realTimePar) { Map res = new HashMap<>(); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); //查询电池组端信息 Response rtstateRes = rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate", rtstateRes); //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata", rtdataRes); //锂电池数据 Response li9130StateRes = li9130Service.search4830State(realTimePar.getDevId()); res.put("li9130State", li9130StateRes); //最后一次核容放电数据 /*Response tinfRes = batttestDataInfService.searchBattLastHrDataById(realTimePar.getBattGroupId(), realTimePar.getDevId()); res.put("tinfdata", tinfRes);*/ return new Response().set(1, res); } //FBO4831的实时页面信息 public Response getFbo4831(RealTimePar realTimePar) { Map res = new HashMap<>(); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); //查询电池组端信息 Response rtstateRes = rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate", rtstateRes); //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata", rtdataRes); //锂电池数据 /*Response li9130StateRes = li9130Service.search4830State(realTimePar.getDevId()); res.put("li9130State", li9130StateRes);*/ //最后一次核容放电数据 /*Response tinfRes = batttestDataInfService.searchBattLastHrDataById(realTimePar.getBattGroupId(), realTimePar.getDevId()); res.put("tinfdata", tinfRes);*/ return new Response().set(1, res); } //FBO4815的实时页面信息 public Response getFbo4815(RealTimePar realTimePar) { Map res = new HashMap<>(); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); //查询电池组端信息 Response rtstateRes = rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate", rtstateRes); //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata", rtdataRes); return new Response().set(1, res); } //电源与蓄电池核容一体机6159 public Response getPowerHr6159(RealTimePar realTimePar) { Map res = new HashMap<>(); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); //查询电池组端信息 Response rtstateRes = rtstateservice.serchPowerHr6159(realTimePar.getDevId()); res.put("rtstate", rtstateRes); //查询电池组单体信息 Response rtdataRes = rtdataservice.serchPowerHr6159(realTimePar.getDevId()); res.put("rtdata", rtdataRes); //通信电源核容一体机遥测实时状态 Response ycRes = dev6159PowerYcService.serchByCondition(realTimePar.getDevId()); res.put("ycdata", ycRes); //通信电源核容一体机遥信实时状态 Response yxRes = dev6159PowerYxService.serchByCondition(realTimePar.getDevId()); res.put("yxdata", yxRes); //取第一组电池信息 Response infRes = battInfService.getPowerHr6159(realTimePar.getDevId()); res.put("binf", infRes); return new Response().set(1, res); } //并联电源的实时页面信息 public Response getParalle(RealTimePar realTimePar, String lang) { Map res = new HashMap<>(); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); //查询电池组端信息 Response rtstateRes = rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate", rtstateRes); //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata", rtdataRes); //查询9140/9141信息 Response pologystateRes = fbs9140TopologyStateService.serchByCondition(realTimePar.getDevId()); res.put("pologystateRes", pologystateRes); //电池告警 Response rtalarmRes = rtalarmService.getInfo(realTimePar.getBattGroupId()); res.put("rtalarm", rtalarmRes); //组端告警 Response rsalarmRes = rsalarmService.getInfo(realTimePar.getBattGroupId()); res.put("rsalarm", rsalarmRes); //最后一次核容放电数据 Response tinfRes = batttestDataInfService.searchBattLastHrDataById(realTimePar.getBattGroupId(), realTimePar.getDevId(), lang); res.put("tinfdata", tinfRes); return new Response().set(1, res); } //并联电源的实时页面信息 public Response getParalle9149(RealTimePar realTimePar, String lang) { Map res = new HashMap<>(); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); //查询电池组端信息 Response rtstateRes = rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate", rtstateRes); //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata", rtdataRes); //查询9149信息 Response pologystateRes = fbs9140TopologyStateService.serchByCondition(realTimePar.getDevId()); res.put("pologystateRes", pologystateRes); //电池告警 Response rtalarmRes = rtalarmService.getInfo(realTimePar.getBattGroupId()); res.put("rtalarm", rtalarmRes); //组端告警 Response rsalarmRes = rsalarmService.getInfo(realTimePar.getBattGroupId()); res.put("rsalarm", rsalarmRes); //最后一次核容放电数据 Response tinfRes = batttestDataInfService.searchBattLastHrDataById(realTimePar.getBattGroupId(), realTimePar.getDevId(), lang); res.put("tinfdata", tinfRes); return new Response().set(1, res); } //配网5100 public Response getInverter5100(RealTimePar realTimePar) { Map res = new HashMap<>(); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); //查询tb_fbs5100_inverter_info信息 Response f5100stateRes = fbs5100InverterInfoService.serchByDevId(realTimePar.getDevId()); res.put("f5100stateRes", f5100stateRes); return new Response().set(1, res); } //标准的实时页面信息 public Response getStandard(RealTimePar realTimePar, String lang) { Map res = new HashMap<>(); if (realTimePar.getDevType() == DeviceTypeDTO.DEVICELD94019) {//ld-9 //ld-9数据 Response ld9Res = ld9Service.searchByDevId(realTimePar.getDevId()); res.put("ld9", ld9Res); } else if (realTimePar.getDevType() == DeviceTypeDTO.DEVICEBTS9120 || realTimePar.getDevType() == DeviceTypeDTO.DEVICEBTS9110) { //获取逆变的其他信息 Response fbs9100sBuscoupleState = fbs9100sBuscoupleStateService.serchByDevId(realTimePar.getDevId()); res.put("fbs9100sBuscoupleState", fbs9100sBuscoupleState); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); } else { //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); } //查询电池组端信息 Response rtstateRes = rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate", rtstateRes); if (realTimePar.getDevType() == DeviceTypeDTO.DEVICE9140 || realTimePar.getDevType() == DeviceTypeDTO.DEVICE9141) { //9140设备要将2组电池的组端信息都给他 Response rtstate9140Res = rtstateservice.serch9140Info(realTimePar.getDevId()); res.put("rtstate9140Res", rtstate9140Res); } //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata", rtdataRes); //查询fod信息 Response fodRes = fodservice.serchByCondition(realTimePar.getBattGroupId()); res.put("fod", fodRes); //电池告警 Response rtalarmRes = rtalarmService.getInfo(realTimePar.getBattGroupId()); res.put("rtalarm", rtalarmRes); //组端告警 Response rsalarmRes = rsalarmService.getInfo(realTimePar.getBattGroupId()); res.put("rsalarm", rsalarmRes); if (realTimePar.getDevType() == DeviceTypeDTO.DEVICE9130 || realTimePar.getDevType() == DeviceTypeDTO.DEVICE9131) {//正常锂电池 //锂电池数据 Response li9130Res = li9130Service.searchParam(realTimePar.getDevId(), realTimePar.getGroupNum()); res.put("li9130", li9130Res); } //最后一次核容放电数据 Response tinfRes = batttestDataInfService.searchBattLastHrDataById(realTimePar.getBattGroupId(), realTimePar.getDevId(), lang); res.put("tinfdata", tinfRes); if (realTimePar.getDevType() == DeviceTypeDTO.DEVICE6185) {//61850二次放电处理 //本年度上一次正常核容的放电记录编号 Response testNumber = batttestDataInfService.searchHrYear(realTimePar.getBattGroupId()); res.put("testNumber", testNumber); //该设备放电申请 Response Fbs9100SetParamTemp = fbs9100SetParamTempService.searchTemp(realTimePar.getBattGroupId()); res.put("Fbs9100SetParamTemp", Fbs9100SetParamTemp); //交直流屏信息 Response acdcSecuity = acdcSecuityService.searchAcdcSecuity(realTimePar.getDevId()); res.put("acdcSecuity", acdcSecuity); } if (realTimePar.getDevType() == DeviceTypeDTO.DEVICE9150 ) { //9150山东定制BTS设备获取干接点信息 Response fbs9150Res = fbs9100sStemnodeStateService.serch9150BtsInfo(realTimePar.getDevId()); res.put("fbs9150Res", fbs9150Res); } if(realTimePar.getStationId()!=null){ //根据机房id获取机房下电源信息 PowerInf pinf=pinfService.getPwrDevIdByStationId(realTimePar.getStationId()); if(pinf!=null){ //查询电源的ACDC信息(重庆bts4810(61850)需要用tb_pwrdev_acdcdata的实时负载电流和三相交流电压) Response pwrdevAcdcRes=pwrdevAcdcservice.getDataByDevId(pinf.getPowerDeviceId()); res.put("pwrdevAcdc",pwrdevAcdcRes); } } return new Response().set(1, res); } //6184 public Response getNibian6184(RealTimePar realTimePar, String lang) { Map res = new HashMap<>(); //获取逆变的其他信息 Response fbs9100sBuscoupleState = fbs9100sBuscoupleStateService.serchByDevId(realTimePar.getDevId()); res.put("fbs9100sBuscoupleState", fbs9100sBuscoupleState); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); //查询电池组端信息2组数据同时获取分开放 List binfList=battInfService.getBattGroupInfoByFBSDeviceId(realTimePar.getDevId()); if(binfList!=null){ for (Battinf binf:binfList) { Response rtstateRes = rtstateservice.serchByCondition(binf.getBattGroupId()); res.put("rtstate"+binf.getGroupIndexInFBSDevice(), rtstateRes); //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(binf.getBattGroupId()); res.put("rtdata"+binf.getGroupIndexInFBSDevice(), rtdataRes); res.put("binf"+binf.getGroupIndexInFBSDevice(), binf); } } //获取615全功能逆变假负载开关以及逆变模块实时 Response qgnRes= qgnService.serchByDevId(realTimePar.getDevId()); res.put("qgnRes", qgnRes); return new Response().set(1, res); } //6186 public Response getNibian6186(RealTimePar realTimePar, String lang) { Map res = new HashMap<>(); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); Response rtstateRes = rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate", rtstateRes); //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata", rtdataRes); //最后一次核容放电数据 Response tinfRes = batttestDataInfService.searchBattLastHrDataByIdDbs(realTimePar.getBattGroupId(), realTimePar.getDevId(), lang); res.put("tinfdata", tinfRes); return new Response().set(1, res); } //多宝山(dbs)页面信息 public Response getDbs(RealTimePar realTimePar, String lang) { Map res = new HashMap<>(); if (realTimePar.getDevType() == DeviceTypeDTO.DEVICELD94019) {//ld-9 //ld-9数据 Response ld9Res = ld9Service.searchByDevId(realTimePar.getDevId()); res.put("ld9", ld9Res); } else if (realTimePar.getDevType() == DeviceTypeDTO.DEVICEBTS9120 || realTimePar.getDevType() == DeviceTypeDTO.DEVICEBTS9110) { //获取逆变的其他信息 Response fbs9100sBuscoupleState = fbs9100sBuscoupleStateService.serchByDevId(realTimePar.getDevId()); res.put("fbs9100sBuscoupleState", fbs9100sBuscoupleState); //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); } else { //查询fbs9100信息 Response f9100stateRes = f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state", f9100stateRes); } //查询电池组端信息 Response rtstateRes = rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate", rtstateRes); if (realTimePar.getDevType() == DeviceTypeDTO.DEVICE9140 || realTimePar.getDevType() == DeviceTypeDTO.DEVICE9141) { //9140设备要将2组电池的组端信息都给他 Response rtstate9140Res = rtstateservice.serch9140Info(realTimePar.getDevId()); res.put("rtstate9140Res", rtstate9140Res); } //查询电池组单体信息 Response rtdataRes = rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata", rtdataRes); //查询fod信息 Response fodRes = fodservice.serchByCondition(realTimePar.getBattGroupId()); res.put("fod", fodRes); //电池告警 Response rtalarmRes = rtalarmService.getInfo(realTimePar.getBattGroupId()); res.put("rtalarm", rtalarmRes); //组端告警 Response rsalarmRes = rsalarmService.getInfo(realTimePar.getBattGroupId()); res.put("rsalarm", rsalarmRes); if (realTimePar.getDevType() == DeviceTypeDTO.DEVICE9130 || realTimePar.getDevType() == DeviceTypeDTO.DEVICE9131) {//正常锂电池 //锂电池数据 Response li9130Res = li9130Service.searchParam(realTimePar.getDevId(), realTimePar.getGroupNum()); res.put("li9130", li9130Res); } //最后一次核容放电数据 Response tinfRes = batttestDataInfService.searchBattLastHrDataByIdDbs(realTimePar.getBattGroupId(), realTimePar.getDevId(), lang); res.put("tinfdata", tinfRes); if (realTimePar.getDevType() == DeviceTypeDTO.DEVICE6185) {//61850二次放电处理 //本年度上一次正常核容的放电记录编号 Response testNumber = batttestDataInfService.searchHrYear(realTimePar.getBattGroupId()); res.put("testNumber", testNumber); //该设备放电申请 Response Fbs9100SetParamTemp = fbs9100SetParamTempService.searchTemp(realTimePar.getBattGroupId()); res.put("Fbs9100SetParamTemp", Fbs9100SetParamTemp); } return new Response().set(1, res); } //A059的实时页面信息 public Response getA059(RealTimePar realTimePar){ Map res=new HashMap<>(); //查询fbs9100信息 Response f9100stateRes=f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state",f9100stateRes); //查询电池组端信息 Response rtstateRes=rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate",rtstateRes); //查询电池组单体信息 Response rtdataRes=rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata",rtdataRes); //查询放电参数 Response setparamRes=f9100setservice.serchCharHighTmp(realTimePar.getDevId()); res.put("setparam",setparamRes); //根据设备id查询检测信息 Response dialogRes = checkDialogService.searchDialog(realTimePar.getDevId()); res.put("dialog", dialogRes); return new Response().set(1,res); } //储能的实时页面信息 public Response getEnestorage(RealTimePar realTimePar){ Map res=new HashMap<>(); //查询所有的系统状态信息 Response ess3100SysRes=ess3100Sysservice.searchAll(); res.put("ess3100Sys",ess3100SysRes); //查询所有的pcs状态信息 Response ess3100PcsRes=ess3100Pcsservice.searchAll(); res.put("ess3100Pcs",ess3100PcsRes); //根据电池组id查询储能电池组信息 Response gtsRes=gtsservice.serchByCondition(realTimePar.getBattGroupId()); res.put("gts",gtsRes); //查询电池组单体信息 Response rtdataRes=rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata",rtdataRes); return new Response().set(1,res); } //BTSSreen的实时页面信息 public Response getBtssreen(RealTimePar realTimePar){ Map res=new HashMap<>(); //查询电池组单体信息 Response rtdataRes=rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata",rtdataRes); //根据电池id查询锂电池信息 Response lithiumRes=lithiumservice.getInfoByBattGroupId(realTimePar.getBattGroupId()); res.put("lithium",lithiumRes); //查询电池组端信息 Response rtstateRes=rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate",rtstateRes); return new Response().set(1,res); } //电源信息的实时页面信息 public Response getPower(RealTimePar realTimePar){ Map res=new HashMap<>(); //查询电源的ACDC信息 Response pwrdevAcdcRes=pwrdevAcdcservice.getDataByDevId(realTimePar.getPowerDeviceId()); res.put("pwrdevAcdc",pwrdevAcdcRes); return new Response().set(1,res); } //获取绝缘装置的实时信息 public Response getIsolating(RealTimePar realTimePar){ Map res=new HashMap<>(); //获取绝缘装置的实时信息 Response f9100InsulatstateRes=f9100Insulatstateservice.getDataByDevId(realTimePar.getPowerDeviceId()); res.put("f9100Insulatstate",f9100InsulatstateRes); return new Response().set(1,res); } //获取充电机的实时信息 public Response getCharger(RealTimePar realTimePar){ Map res=new HashMap<>(); //获取充电机的实时信息 Response f9100ChargerstateRes=f9100Chargerstateservice.getDataByDevId(realTimePar.getPowerDeviceId()); res.put("f9100Chargerstate",f9100ChargerstateRes); return new Response().set(1,res); } //获取配电柜的实时数据 public Response getPower1(RealTimePar realTimePar){ Map res=new HashMap<>(); //获取配电柜的实时数据 Response pwrdevInfoRes=pwrdevAcdcservice.getPowerInfoById(realTimePar.getPowerDeviceId()); res.put("pwrdevInfo",pwrdevInfoRes); return new Response().set(1,res); } //TotalInfo 山西 public Response getTotalInfo(RealTimePar realTimePar){ Map res=new HashMap<>(); //查询电池组单体信息 Response rtdataRes=rtdataservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtdata",rtdataRes); //查询电池组端信息 Response rtstateRes=rtstateservice.serchByCondition(realTimePar.getBattGroupId()); res.put("rtstate",rtstateRes); //查询fbs9100信息 Response f9100stateRes=f9100service.serchContactorState(realTimePar.getDevId()); res.put("f9100state",f9100stateRes); //查询fod信息 Response fodRes=fodservice.serchByCondition(realTimePar.getBattGroupId()); res.put("fod",fodRes); //查询电源的ACDC信息 Response pwrdevAcdcRes=pwrdevAcdcservice.getDataByDevId(realTimePar.getPowerDeviceId()); res.put("pwrdevAcdc",pwrdevAcdcRes); return new Response().set(1,res); } }