1.调整终端管理下,终端和监测点模糊搜索

2.技术监督全景展示接口调整
This commit is contained in:
wr
2024-06-19 18:20:55 +08:00
parent 55b4501694
commit 1f3ea231ad
11 changed files with 178 additions and 48 deletions

View File

@@ -1,5 +1,6 @@
package com.njcn.supervision.service.device.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.text.StrPool;
@@ -18,8 +19,10 @@ import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.pq.api.LineFeignClient;
import com.njcn.device.pq.enums.RunFlagEnum;
import com.njcn.device.pq.pojo.param.DataParam;
import com.njcn.device.pq.pojo.po.line.LineInfoVO;
import com.njcn.device.pq.pojo.vo.DeviceVO;
import com.njcn.device.pq.pojo.vo.LineDetailVO;
import com.njcn.supervision.enums.SupervisionKeyEnum;
import com.njcn.supervision.enums.SupervisionUserStatusEnum;
import com.njcn.supervision.mapper.device.QuitRunningDeviceMapper;
@@ -37,10 +40,9 @@ import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
* <p>
@@ -138,6 +140,12 @@ public class QuitRunningDeviceServiceImpl extends ServiceImpl<QuitRunningDeviceM
@Override
public Page<QuitRunningDeviceVO> getQuitRunningDevice(QuitRunningDeviceParam.QuitRunningDeviceQueryParam quitRunningDeviceQueryParam) {
DataParam param=new DataParam();
param.setOrgId(RequestUtil.getDeptIndex());
param.setType(quitRunningDeviceQueryParam.getDeviceType());
param.setSearchValue(quitRunningDeviceQueryParam.getSearchValue());
List<LineDetailVO.Detail> lineDetail = lineFeignClient.getDeptDeviceDetailData(param).getData();
Map<String, LineDetailVO.Detail> mapDetail=new HashMap<>();
QueryWrapper<QuitRunningDeviceVO> quitRunningDeviceVOQueryWrapper = new QueryWrapper<>();
if (Objects.nonNull(quitRunningDeviceQueryParam)) {
//判断监测点/设备的选择
@@ -151,10 +159,15 @@ public class QuitRunningDeviceServiceImpl extends ServiceImpl<QuitRunningDeviceM
DateUtil.endOfDay(DateUtil.parse(quitRunningDeviceQueryParam.getSearchEndTime())));
//判断监测点/设备的选择
quitRunningDeviceVOQueryWrapper.eq("supervision_quit_running_device.device_type", quitRunningDeviceQueryParam.getDeviceType());
if(2==quitRunningDeviceQueryParam.getDeviceType()){
mapDetail.putAll(lineDetail.stream().collect(Collectors.toMap(LineDetailVO.Detail::getLineId, Function.identity())));
}else{
mapDetail.putAll(lineDetail.stream().collect(Collectors.toMap(LineDetailVO.Detail::getDevId,Function.identity(), (key1,key2)->key1)));
}
if (Objects.nonNull(quitRunningDeviceQueryParam.getStatus())) {
quitRunningDeviceVOQueryWrapper.eq("supervision_quit_running_device.status", quitRunningDeviceQueryParam.getStatus());
}
quitRunningDeviceVOQueryWrapper.in(CollUtil.isNotEmpty(mapDetail.keySet()),"supervision_quit_running_device.device_id", mapDetail.keySet());
}
//获取当前用户部门所有同事的id查看该部门下所有的数据
@@ -166,19 +179,23 @@ public class QuitRunningDeviceServiceImpl extends ServiceImpl<QuitRunningDeviceM
if (CollectionUtil.isNotEmpty(records)) {
for (QuitRunningDeviceVO record : records) {
if (record.getDeviceType() == 1) {
DeviceVO deviceVO = lineFeignClient.getDeviceDetailData(record.getDeviceId()).getData();
record.setDeviceName(deviceVO.getName());
record.setDeviceStatus(deviceVO.getRunFlag());
record.setGdName(deviceVO.getGdName());
record.setSubName(deviceVO.getSubName());
//获取装置详细信息
if(mapDetail.containsKey(record.getDeviceId())){
LineDetailVO.Detail detail = mapDetail.get(record.getDeviceId());
record.setDeviceName(detail.getDevName());
record.setDeviceStatus(detail.getRunFlag());
record.setGdName(detail.getGdName());
record.setSubName(detail.getSubName());
}
} else if (record.getDeviceType() == 2) {
//获取监测点详细信息
LineInfoVO lineInfoVO = lineFeignClient.getLineInfoVO(record.getDeviceId()).getData();
record.setDeviceStatus(lineInfoVO.getRunFlag());
record.setDeviceName(lineInfoVO.getVolName().concat("_").concat(lineInfoVO.getLineName()));
record.setGdName(lineInfoVO.getGdName());
record.setSubName(lineInfoVO.getSubName());
if(mapDetail.containsKey(record.getDeviceId())){
LineDetailVO.Detail detail = mapDetail.get(record.getDeviceId());
record.setDeviceName(detail.getVolName().concat("_").concat(detail.getLineName()));
record.setDeviceStatus(detail.getRunFlag());
record.setGdName(detail.getGdName());
record.setSubName(detail.getSubName());
}
}
}
}

View File

@@ -8,10 +8,12 @@ import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.supervision.pojo.po.device.LineWarning;
import com.njcn.supervision.pojo.po.leaflet.WarningLeaflet;
import com.njcn.supervision.pojo.po.problem.SupervisionUserComplaintPO;
import com.njcn.supervision.pojo.po.survey.SurveyTest;
import com.njcn.supervision.pojo.vo.gridDiagram.GridDiagramVO;
import com.njcn.supervision.service.device.ILineWarningService;
import com.njcn.supervision.service.gridDiagram.GridDiagramService;
import com.njcn.supervision.service.leaflet.IWarningLeafletService;
import com.njcn.supervision.service.problem.SupervisionUserComplaintPOService;
@@ -40,11 +42,10 @@ public class GridDiagramServiceImpl implements GridDiagramService {
private final ISurveyTestService surveyTestService;
private final DeptFeignClient deptFeignClient;
private final IWarningLeafletService warningLeafletService;
private final ILineWarningService lineWarningService;
@Override
public GridDiagramVO.Info getSupervisionData(StatisticsBizBaseParam param) {
GridDiagramVO.Info info = new GridDiagramVO.Info();
List<String> deptIds = deptFeignClient.getDepSonIdByDeptId(param.getId()).getData();
return supervisionDetailsAdd(null, deptIds, param);
}
@@ -90,13 +91,17 @@ public class GridDiagramServiceImpl implements GridDiagramService {
*/
private GridDiagramVO.Info supervisionDetailsAdd(DeptDTO deptDTO, List<String> ids, StatisticsBizBaseParam baseParam) {
GridDiagramVO.Info gridDiagramVO = new GridDiagramVO.Info();
if(ObjectUtil.isNotNull(deptDTO)){
if (ObjectUtil.isNotNull(deptDTO)) {
gridDiagramVO.setOrgName(deptDTO.getName());
}
//todo 在线监测问题
int onLineNum = 0;
//在线监测问题
List<LineWarning> lineWarningList = lineWarningService.list(new LambdaQueryWrapper<LineWarning>()
.in(LineWarning::getDeptId, ids)
.ge(StrUtil.isNotBlank(baseParam.getStartTime()), LineWarning::getCreateTime, DateUtil.beginOfDay(DateUtil.parse(baseParam.getStartTime())))
.le(StrUtil.isNotBlank(baseParam.getEndTime()), LineWarning::getCreateTime, DateUtil.endOfDay(DateUtil.parse(baseParam.getEndTime())))
);
gridDiagramVO.setOnLineNum(onLineNum);
gridDiagramVO.setOnLineNum(lineWarningList.size());
//用户投诉问题(添加出来就是有问题的)
List<SupervisionUserComplaintPO> userComplaintList = userComplaintPOService.list(new LambdaQueryWrapper<SupervisionUserComplaintPO>()
.in(SupervisionUserComplaintPO::getDutyOrgId, ids)
@@ -115,11 +120,13 @@ public class GridDiagramServiceImpl implements GridDiagramService {
);
gridDiagramVO.setSurveyNum(surveyTestList.size());
gridDiagramVO.setAbnormalNum(userComplaintList.size() + surveyTestList.size());
gridDiagramVO.setAbnormalNum(lineWarningList.size() + userComplaintList.size() + surveyTestList.size());
//根据问题单id查询已关联工单
List<String> problemIds = userComplaintList.stream().map(SupervisionUserComplaintPO::getId).collect(Collectors.toList());
problemIds.addAll(surveyTestList.stream().map(SurveyTest::getId).collect(Collectors.toList()));
problemIds.addAll(lineWarningList.stream().map(LineWarning::getId).collect(Collectors.toList()));
if (CollUtil.isNotEmpty(problemIds)) {
List<WarningLeaflet> list = warningLeafletService.list(new LambdaQueryWrapper<WarningLeaflet>()
.in(WarningLeaflet::getProblemId, problemIds)