From 60495b1b9c222238d3abf7b055a7c1d77b8fba4e Mon Sep 17 00:00:00 2001 From: houwei Date: Tue, 5 Nov 2024 16:30:49 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A3=8E=E6=9C=BA=E5=88=97=E8=A1=A8=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E4=BB=A3=E7=A0=81=E7=BB=93=E6=9E=84=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WindTurbinesPageController.java | 3 - .../page/service/WindTurbinesPageService.java | 119 +---------------- .../impl/WindTurbinesPageServiceImpl.java | 122 ++++++++++++++++++ 3 files changed, 125 insertions(+), 119 deletions(-) create mode 100644 das/src/main/java/com/das/modules/page/service/impl/WindTurbinesPageServiceImpl.java diff --git a/das/src/main/java/com/das/modules/page/controller/WindTurbinesPageController.java b/das/src/main/java/com/das/modules/page/controller/WindTurbinesPageController.java index 6f5bf445..6c11be54 100644 --- a/das/src/main/java/com/das/modules/page/controller/WindTurbinesPageController.java +++ b/das/src/main/java/com/das/modules/page/controller/WindTurbinesPageController.java @@ -1,11 +1,8 @@ package com.das.modules.page.controller; import com.das.common.result.R; -import com.das.modules.node.domain.dto.DeviceCommandDto; -import com.das.modules.operation.domain.dto.CommandInfoDto; import com.das.modules.page.domian.WindTurbinesPageVo; import com.das.modules.page.service.WindTurbinesPageService; -import jakarta.servlet.http.HttpServletRequest; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; diff --git a/das/src/main/java/com/das/modules/page/service/WindTurbinesPageService.java b/das/src/main/java/com/das/modules/page/service/WindTurbinesPageService.java index 0e617cc7..3a84462b 100644 --- a/das/src/main/java/com/das/modules/page/service/WindTurbinesPageService.java +++ b/das/src/main/java/com/das/modules/page/service/WindTurbinesPageService.java @@ -1,123 +1,10 @@ package com.das.modules.page.service; -import com.das.common.constant.EquipmentTypeIds; -import com.das.common.exceptions.ServiceException; -import com.das.modules.data.domain.SnapshotValueQueryParam; -import com.das.modules.data.service.impl.DataServiceImpl; -import com.das.modules.equipment.domain.dto.SysEquipmentDto; -import com.das.modules.equipment.domain.vo.SysEquipmentVo; -import com.das.modules.equipment.mapper.SysEquipmentMapper; -import com.das.modules.node.domain.dto.DeviceCommandDto; -import com.das.modules.operation.domain.dto.CommandInfoDto; -import com.das.modules.operation.service.OperationService; import com.das.modules.page.domian.WindTurbinesPageVo; -import jakarta.servlet.http.HttpServletRequest; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.StopWatch; -import java.util.ArrayList; import java.util.List; -import java.util.Map; -import java.util.concurrent.TimeUnit; -@Transactional(rollbackFor = Exception.class) -@Service -@Slf4j -public class WindTurbinesPageService { - - @Autowired - SysEquipmentMapper sysEquipmentMapper; - - @Autowired - private DataServiceImpl dataServiceImpl; - - @Autowired - OperationService optService; - - /** - * 获取风机机组所属线路列表 - * - * @return 返回字符串数组 - */ - public List queryBelongLines() { - return sysEquipmentMapper.queryBelongLines(EquipmentTypeIds.EQUIPMENT_TYPE_STATION_WTG); - } - - - /** - * 获取风机页面数据 - * - * @return 返回风机页面数据 - */ - public List queryAllWindTurbinesPages() { - StopWatch stopWatch = new StopWatch(); - stopWatch.start("获取风机页面数据"); - SysEquipmentDto sysEquipmentDto = new SysEquipmentDto(); - sysEquipmentDto.setObjectType(EquipmentTypeIds.EQUIPMENT_TYPE_STATION_WTG); - List sysEquipmentVos = sysEquipmentMapper.queryEquipmentListInPage(sysEquipmentDto); - //风机返回数据列表 - List windTurbinesPageVos = new ArrayList<>(); - List paramList = new ArrayList<>(); - //构建需要查询的物模型属性 - List attributesList = new ArrayList<>(); - //风速 - attributesList.add("iwindspeed"); - //风机状态 - attributesList.add("iturbineoperationmode"); - //有功功率(MW) - attributesList.add("igenpower"); - //日发电量(kwh) - attributesList.add("ikwhthisday"); - //总发电量(万kwh) - attributesList.add("ikwhoverall"); - //机舱角度 - attributesList.add("ivanedirection"); - //叶轮转速(rmp) - attributesList.add("irotorspeed"); - //发电机转速(rmp) - attributesList.add("igenspeed"); - //机舱温度(℃) - attributesList.add("itempnacelle_1sec"); - //主油路压力(kpa) - attributesList.add("ihydrpress"); - //变桨角度ipitchangle1,ipitchangle2,ipitchangle3(取最小值) - attributesList.add("ipitchangle1"); - attributesList.add("ipitchangle2"); - attributesList.add("ipitchangle3"); - //解缆状态 - attributesList.add("iyplevel"); - //电网故障停机 - attributesList.add("gridlostdetected"); - //是否锁定 - attributesList.add("Locked"); - - for (SysEquipmentVo item : sysEquipmentVos) { - //构建查询属性参数 - SnapshotValueQueryParam snapshotValueQueryParam = new SnapshotValueQueryParam(); - snapshotValueQueryParam.setAttributes(attributesList); - snapshotValueQueryParam.setDeviceId(item.getId().toString()); - paramList.add(snapshotValueQueryParam); - //构建风机数据返回 - WindTurbinesPageVo windTurbinesPageVo = new WindTurbinesPageVo(); - windTurbinesPageVo.setIrn(item.getId()); - windTurbinesPageVo.setName(item.getName()); - windTurbinesPageVo.setModel(item.getModel()); - windTurbinesPageVo.setModelId(item.getIotModelId()); - windTurbinesPageVo.setBelongLine(item.getBelongLine()); - windTurbinesPageVos.add(windTurbinesPageVo); - - } - //获取设备测点数据 - Map> map = dataServiceImpl.querySnapshotValues(paramList); - for (WindTurbinesPageVo item : windTurbinesPageVos) { - item.setAttributeMap(map.get(item.getIrn().toString())); - } - stopWatch.stop(); - //监控查询时间 - log.debug(stopWatch.prettyPrint(TimeUnit.SECONDS)); - return windTurbinesPageVos; - } +public interface WindTurbinesPageService { + public List queryBelongLines(); + public List queryAllWindTurbinesPages(); } diff --git a/das/src/main/java/com/das/modules/page/service/impl/WindTurbinesPageServiceImpl.java b/das/src/main/java/com/das/modules/page/service/impl/WindTurbinesPageServiceImpl.java new file mode 100644 index 00000000..76eb01a0 --- /dev/null +++ b/das/src/main/java/com/das/modules/page/service/impl/WindTurbinesPageServiceImpl.java @@ -0,0 +1,122 @@ +package com.das.modules.page.service.impl; + +import com.das.common.constant.EquipmentTypeIds; +import com.das.modules.data.domain.SnapshotValueQueryParam; +import com.das.modules.data.service.impl.DataServiceImpl; +import com.das.modules.equipment.domain.dto.SysEquipmentDto; +import com.das.modules.equipment.domain.vo.SysEquipmentVo; +import com.das.modules.equipment.mapper.SysEquipmentMapper; +import com.das.modules.operation.service.OperationService; +import com.das.modules.page.domian.WindTurbinesPageVo; +import com.das.modules.page.service.WindTurbinesPageService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.StopWatch; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.concurrent.TimeUnit; + +@Transactional(rollbackFor = Exception.class) +@Service +@Slf4j +public class WindTurbinesPageServiceImpl implements WindTurbinesPageService { + + @Autowired + SysEquipmentMapper sysEquipmentMapper; + + @Autowired + private DataServiceImpl dataServiceImpl; + + @Autowired + OperationService optService; + + /** + * 获取风机机组所属线路列表 + * + * @return 返回字符串数组 + */ + @Override + public List queryBelongLines() { + return sysEquipmentMapper.queryBelongLines(EquipmentTypeIds.EQUIPMENT_TYPE_STATION_WTG); + } + + + /** + * 获取风机页面数据 + * + * @return 返回风机页面数据 + */ + @Override + public List queryAllWindTurbinesPages() { + StopWatch stopWatch = new StopWatch(); + stopWatch.start("获取风机页面数据"); + SysEquipmentDto sysEquipmentDto = new SysEquipmentDto(); + sysEquipmentDto.setObjectType(EquipmentTypeIds.EQUIPMENT_TYPE_STATION_WTG); + List sysEquipmentVos = sysEquipmentMapper.queryEquipmentListInPage(sysEquipmentDto); + //风机返回数据列表 + List windTurbinesPageVos = new ArrayList<>(); + List paramList = new ArrayList<>(); + //构建需要查询的物模型属性 + List attributesList = new ArrayList<>(); + //风速 + attributesList.add("iwindspeed"); + //风机状态 + attributesList.add("iturbineoperationmode"); + //有功功率(MW) + attributesList.add("igenpower"); + //日发电量(kwh) + attributesList.add("ikwhthisday"); + //总发电量(万kwh) + attributesList.add("ikwhoverall"); + //机舱角度 + attributesList.add("ivanedirection"); + //叶轮转速(rmp) + attributesList.add("irotorspeed"); + //发电机转速(rmp) + attributesList.add("igenspeed"); + //机舱温度(℃) + attributesList.add("itempnacelle_1sec"); + //主油路压力(kpa) + attributesList.add("ihydrpress"); + //变桨角度ipitchangle1,ipitchangle2,ipitchangle3(取最小值) + attributesList.add("ipitchangle1"); + attributesList.add("ipitchangle2"); + attributesList.add("ipitchangle3"); + //解缆状态 + attributesList.add("iyplevel"); + //电网故障停机 + attributesList.add("gridlostdetected"); + //是否锁定 + attributesList.add("Locked"); + + for (SysEquipmentVo item : sysEquipmentVos) { + //构建查询属性参数 + SnapshotValueQueryParam snapshotValueQueryParam = new SnapshotValueQueryParam(); + snapshotValueQueryParam.setAttributes(attributesList); + snapshotValueQueryParam.setDeviceId(item.getId().toString()); + paramList.add(snapshotValueQueryParam); + //构建风机数据返回 + WindTurbinesPageVo windTurbinesPageVo = new WindTurbinesPageVo(); + windTurbinesPageVo.setIrn(item.getId()); + windTurbinesPageVo.setName(item.getName()); + windTurbinesPageVo.setModel(item.getModel()); + windTurbinesPageVo.setModelId(item.getIotModelId()); + windTurbinesPageVo.setBelongLine(item.getBelongLine()); + windTurbinesPageVos.add(windTurbinesPageVo); + + } + //获取设备测点数据 + Map> map = dataServiceImpl.querySnapshotValues(paramList); + for (WindTurbinesPageVo item : windTurbinesPageVos) { + item.setAttributeMap(map.get(item.getIrn().toString())); + } + stopWatch.stop(); + //监控查询时间 + log.debug(stopWatch.prettyPrint(TimeUnit.SECONDS)); + return windTurbinesPageVos; + } +}