物模型属性查询列表修改

This commit is contained in:
huguanghan 2024-10-28 15:18:10 +08:00
parent 9cdc1c7a41
commit 74116f72ae
2 changed files with 47 additions and 14 deletions

View File

@ -37,5 +37,5 @@ public interface SysEquipmentMapper extends BaseMapperPlus<SysEquipment, SysEqui
List<String> queryBelongLines(@Param("objectType") Long objectType);
List<WindTurbinesPageVo> queryAllWindList(@Param("objectType") Long objectType);
List<SysEquipmentVo> querySysEquipmentList(@Param("info") SysEquipmentDto sysEquipmentDto);
}

View File

@ -3,6 +3,8 @@ package com.das.modules.page.service;
import com.das.common.exceptions.ServiceException;
import com.das.modules.data.domain.SnapshotValueQueryParam;
import com.das.modules.data.service.DataService;
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.node.service.SysNodeService;
@ -20,7 +22,7 @@ import java.util.Map;
@Service
@Slf4j
public class WindTurbinesPageService {
private static final Long OBJECT_TYPE = 10002L;
private static final Integer OBJECT_TYPE = 10002;
@Autowired
SysEquipmentMapper sysEquipmentMapper;
@ -33,42 +35,73 @@ public class WindTurbinesPageService {
/**
* 获取风机机组所属线路列表
*
* @return 返回字符串数组
*/
public List<String> queryBelongLines() {
return sysEquipmentMapper.queryBelongLines(OBJECT_TYPE);
return sysEquipmentMapper.queryBelongLines(Long.valueOf(OBJECT_TYPE));
}
/**
* 获取风机页面数据
*
* @return 返回风机页面数据
*/
public List<WindTurbinesPageVo> queryAllWindTurbinesPages() {
List<WindTurbinesPageVo> windTurbinesPageVos = sysEquipmentMapper.queryAllWindList(OBJECT_TYPE);
SysEquipmentDto sysEquipmentDto = new SysEquipmentDto();
sysEquipmentDto.setObjectType(OBJECT_TYPE);
List<SysEquipmentVo> sysEquipmentVos = sysEquipmentMapper.querySysEquipmentList(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");
for (WindTurbinesPageVo item : windTurbinesPageVos){
for (SysEquipmentVo item : sysEquipmentVos) {
//构建查询属性参数
SnapshotValueQueryParam snapshotValueQueryParam = new SnapshotValueQueryParam();
snapshotValueQueryParam.setAttributes(attributesList);
snapshotValueQueryParam.setDeviceId(item.getIrn().toString());
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 = dataService.querySnapshotValues(paramList);
for (WindTurbinesPageVo item : windTurbinesPageVos) {
item.setAttributeMap(map.get(item.getIrn().toString()));