1.pms无线趋势图实时数据功能

This commit is contained in:
cdf
2024-08-26 10:27:28 +08:00
parent 6dc1b415dc
commit 6236243284
5 changed files with 127 additions and 4 deletions

View File

@@ -1,6 +1,7 @@
package com.njcn.device.pms.service.majornetwork.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -18,7 +19,9 @@ import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;
@@ -44,6 +47,9 @@ public class PqsDeviceUnitServiceImpl extends ServiceImpl<PqsDeviceUnitMapper, P
.eq(PmsTerminal::getStatus, DataStateEnum.ENABLE.getCode())
.eq(StrUtil.isNotBlank(devFlag), PmsTerminal::getTerminalState, devFlag)
);
if(CollUtil.isEmpty(list)){
return pqsDeviceUnitVos;
}
List<String> terminal = list.stream().map(PmsTerminal::getId).collect(Collectors.toList());
//获取所有终端信息
List<PqsDeviceUnit> pqsDeviceUnits = this.listByIds(terminal);
@@ -61,12 +67,13 @@ public class PqsDeviceUnitServiceImpl extends ServiceImpl<PqsDeviceUnitMapper, P
subUnitVo.setId(subKey);
subUnitVo.setName(subValue.get(0).getPowerrName());
Map<String, List<PmsTerminal>> terMap = subValue.stream().collect(Collectors.groupingBy(PmsTerminal::getId));
List<DeviceUnitVo> terUnitVos = new ArrayList<>();
List<DeviceUnitVo.DeviceUnit> terUnitVos = new ArrayList<>();
terMap.forEach((terKey, terValue) -> {
for (PmsTerminal pmsTerminal : terValue) {
DeviceUnitVo terUnitVo = new DeviceUnitVo();
DeviceUnitVo.DeviceUnit terUnitVo = new DeviceUnitVo.DeviceUnit();
terUnitVo.setId(pmsTerminal.getId());
terUnitVo.setName(pmsTerminal.getName());
terUnitVo.setDevFlag(pmsTerminal.getTerminalState());
PqsDeviceUnit pqsDeviceUnit;
if (unitMap.containsKey(terKey)) {
pqsDeviceUnit = unitMap.get(terKey);

View File

@@ -0,0 +1,46 @@
package com.njcn.harmonic.pojo.po.pmsWifi;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
import lombok.Getter;
import lombok.Setter;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author xy
* @since 2024-08-25
*/
@Getter
@Setter
@TableName("pms_real_data")
public class MonitorRealData {
private static final long serialVersionUID = 1L;
@TableField("id")
private String id;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
@TableField("time_Id")
private LocalDateTime timeId;
@MppMultiId
@TableField("line_id")
private String lineId;
@MppMultiId
@TableField("value_type")
private String valueType;
@TableField("pms_content")
private String pmsContent;
}

View File

@@ -0,0 +1,56 @@
package com.njcn.harmonic.controller.pmsWifi;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.harmonic.mapper.pmsWifi.MonitorRealDataMapper;
import com.njcn.harmonic.pojo.param.UploadDataParam;
import com.njcn.harmonic.pojo.po.pmsWifi.MonitorRealData;
import com.njcn.harmonic.pojo.po.upload.RUploadCommPointBus;
import com.njcn.harmonic.service.upload.IRUploadCommPointBusService;
import com.njcn.influx.service.IDataVService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
* <p>
* 公共连接点母线电能质量统计 前端控制器
* </p>
*
* @author cdf
* @since 2024-08-15
*/
@RestController
@RequestMapping("/pmsWifi")
@RequiredArgsConstructor
public class PmsWifiController extends BaseController {
private final MonitorRealDataMapper monitorRealDataMapper;
private final IDataVService iDataVService;
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@GetMapping("/getPmsInfo")
@ApiOperation("查询最新的一条电能质量数据")
public HttpResult<MonitorRealData> getPmsInfo(@RequestParam String monitorId,@RequestParam String valueType) {
String methodDescribe = getMethodDescribe("getPmsInfo");
LambdaUpdateWrapper<MonitorRealData> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
lambdaUpdateWrapper.eq(MonitorRealData::getValueType,valueType).eq(MonitorRealData::getLineId,monitorId);
MonitorRealData monitorRealData = monitorRealDataMapper.selectOne(lambdaUpdateWrapper);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, monitorRealData, methodDescribe);
}
}

View File

@@ -28,7 +28,7 @@ import com.njcn.web.controller.BaseController;
* 公共连接点母线电能质量统计 前端控制器
* </p>
*
* @author xy
* @author cdf
* @since 2024-08-15
*/
@RestController

View File

@@ -0,0 +1,14 @@
package com.njcn.harmonic.mapper.pmsWifi;
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
import com.njcn.harmonic.pojo.po.pmsWifi.MonitorRealData;
/**
* roma
*
* @author cdf
* @date 2024/8/25
*/
public interface MonitorRealDataMapper extends MppBaseMapper<MonitorRealData> {
}