风机列表服务代码结构调整
This commit is contained in:
parent
79eac71645
commit
60495b1b9c
@ -1,11 +1,8 @@
|
|||||||
package com.das.modules.page.controller;
|
package com.das.modules.page.controller;
|
||||||
|
|
||||||
import com.das.common.result.R;
|
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.domian.WindTurbinesPageVo;
|
||||||
import com.das.modules.page.service.WindTurbinesPageService;
|
import com.das.modules.page.service.WindTurbinesPageService;
|
||||||
import jakarta.servlet.http.HttpServletRequest;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
@ -1,123 +1,10 @@
|
|||||||
package com.das.modules.page.service;
|
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 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.List;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.concurrent.TimeUnit;
|
|
||||||
|
|
||||||
@Transactional(rollbackFor = Exception.class)
|
public interface WindTurbinesPageService {
|
||||||
@Service
|
public List<String> queryBelongLines();
|
||||||
@Slf4j
|
public List<WindTurbinesPageVo> queryAllWindTurbinesPages();
|
||||||
public class WindTurbinesPageService {
|
|
||||||
|
|
||||||
@Autowired
|
|
||||||
SysEquipmentMapper sysEquipmentMapper;
|
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private DataServiceImpl dataServiceImpl;
|
|
||||||
|
|
||||||
@Autowired
|
|
||||||
OperationService optService;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取风机机组所属线路列表
|
|
||||||
*
|
|
||||||
* @return 返回字符串数组
|
|
||||||
*/
|
|
||||||
public List<String> queryBelongLines() {
|
|
||||||
return sysEquipmentMapper.queryBelongLines(EquipmentTypeIds.EQUIPMENT_TYPE_STATION_WTG);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取风机页面数据
|
|
||||||
*
|
|
||||||
* @return 返回风机页面数据
|
|
||||||
*/
|
|
||||||
public List<WindTurbinesPageVo> queryAllWindTurbinesPages() {
|
|
||||||
StopWatch stopWatch = new StopWatch();
|
|
||||||
stopWatch.start("获取风机页面数据");
|
|
||||||
SysEquipmentDto sysEquipmentDto = new SysEquipmentDto();
|
|
||||||
sysEquipmentDto.setObjectType(EquipmentTypeIds.EQUIPMENT_TYPE_STATION_WTG);
|
|
||||||
List<SysEquipmentVo> sysEquipmentVos = sysEquipmentMapper.queryEquipmentListInPage(sysEquipmentDto);
|
|
||||||
//风机返回数据列表
|
|
||||||
List<WindTurbinesPageVo> windTurbinesPageVos = new ArrayList<>();
|
|
||||||
List<SnapshotValueQueryParam> paramList = new ArrayList<>();
|
|
||||||
//构建需要查询的物模型属性
|
|
||||||
List<String> 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<String, Map<String, Object>> 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;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -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<String> queryBelongLines() {
|
||||||
|
return sysEquipmentMapper.queryBelongLines(EquipmentTypeIds.EQUIPMENT_TYPE_STATION_WTG);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取风机页面数据
|
||||||
|
*
|
||||||
|
* @return 返回风机页面数据
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<WindTurbinesPageVo> queryAllWindTurbinesPages() {
|
||||||
|
StopWatch stopWatch = new StopWatch();
|
||||||
|
stopWatch.start("获取风机页面数据");
|
||||||
|
SysEquipmentDto sysEquipmentDto = new SysEquipmentDto();
|
||||||
|
sysEquipmentDto.setObjectType(EquipmentTypeIds.EQUIPMENT_TYPE_STATION_WTG);
|
||||||
|
List<SysEquipmentVo> sysEquipmentVos = sysEquipmentMapper.queryEquipmentListInPage(sysEquipmentDto);
|
||||||
|
//风机返回数据列表
|
||||||
|
List<WindTurbinesPageVo> windTurbinesPageVos = new ArrayList<>();
|
||||||
|
List<SnapshotValueQueryParam> paramList = new ArrayList<>();
|
||||||
|
//构建需要查询的物模型属性
|
||||||
|
List<String> 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<String, Map<String, Object>> 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;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user