预处理兼容pq/pms处理

This commit is contained in:
2023-09-21 09:15:48 +08:00
parent 79865cc395
commit d868558c6e
22 changed files with 771 additions and 508 deletions

View File

@@ -7,10 +7,13 @@ 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.common.utils.LogUtil;
import com.njcn.device.biz.pojo.dto.*;
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
import com.njcn.device.biz.pojo.po.Overlimit;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.pojo.po.LineDetail;
import com.njcn.device.pq.service.CommTerminalService;
import com.njcn.device.pq.service.LineService;
import com.njcn.web.controller.BaseController;
@@ -45,14 +48,16 @@ public class CommTerminalController extends BaseController {
private final LineMapper lineMapper;
/**
* 通过部门获取所有子集部门所拥有的监测点
* 通过部门获取所有子集部门所拥有的监测点基本信息
*
* @author cdf
* @date 2023/4/24
*/
@PostMapping("deptGetLineIds")
@ApiOperation("通过部门获取所有子集部门所拥有的监测点")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiImplicitParam(name = "deptGetLineParam", value = "请求体", required = true)
public HttpResult<List<DeptGetChildrenDTO>> deptGetLineList(@RequestBody @Validated DeptGetLineParam deptGetLineParam) {
TimeInterval timer = new TimeInterval();
@@ -68,6 +73,8 @@ public class CommTerminalController extends BaseController {
* @date 2023/5/10
*/
@PostMapping("getDeptChildrenByParent")
@ApiOperation("根据单位获取所有子单位信息")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiImplicitParam(name = "deptGetLineParam", value = "请求体", required = true)
public HttpResult<List<DeptGetBase>> getDeptChildrenByParent(@RequestBody @Validated DeptGetLineParam deptGetLineParam) {
TimeInterval timer = new TimeInterval();
@@ -78,12 +85,13 @@ public class CommTerminalController extends BaseController {
}
/**
* 根据单位获取监测点信息
* 根据单位获取监测点详细信息
* @author cdf
* @date 2023/5/10
*/
@PostMapping("deptGetLine")
@ApiOperation("根据单位获取监测点信息")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiImplicitParam(name = "deptGetLineParam", value = "请求体", required = true)
public HttpResult<List<DeptGetChildrenMoreDTO>> deptGetLine(@RequestBody @Validated DeptGetLineParam deptGetLineParam) {
TimeInterval timer = new TimeInterval();
@@ -103,6 +111,7 @@ public class CommTerminalController extends BaseController {
*/
@PostMapping("deptGetSubStation")
@ApiOperation("根据单位获取所有变电站")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiImplicitParam(name = "deptGetLineParam", value = "请求体", required = true)
public HttpResult<List<DeptGetSubStationDTO>> deptSubStation(@RequestBody @Validated DeptGetLineParam deptGetLineParam) {
TimeInterval timer = new TimeInterval();
@@ -119,6 +128,7 @@ public class CommTerminalController extends BaseController {
*/
@PostMapping("deptGetBusBar")
@ApiOperation("根据单位获取所有母线")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiImplicitParam(name = "deptGetLineParam", value = "请求体", required = true)
public HttpResult<List<DeptGetBusBarDTO>> deptBusBar(@RequestBody @Validated DeptGetLineParam deptGetLineParam) {
TimeInterval timer = new TimeInterval();
@@ -137,6 +147,7 @@ public class CommTerminalController extends BaseController {
*/
@PostMapping("deptGetDevice")
@ApiOperation("根据单位获取所有装置")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiImplicitParam(name = "deptGetLineParam", value = "请求体", required = true)
public HttpResult<List<DeptGetDeviceDTO>> deptGetDevice(@RequestBody @Validated DeptGetLineParam deptGetLineParam) {
TimeInterval timer = new TimeInterval();
@@ -153,6 +164,7 @@ public class CommTerminalController extends BaseController {
*/
@PostMapping("deptGetDeviceAndMonitor")
@ApiOperation("根据单位获取装置以及监测点")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiImplicitParam(name = "deptGetLineParam", value = "请求体", required = true)
public HttpResult<List<DeptGetDeviceDTO>> deptGetDeviceAndMonitor(@RequestBody @Validated DeptGetLineParam deptGetLineParam) {
TimeInterval timer = new TimeInterval();
@@ -169,6 +181,7 @@ public class CommTerminalController extends BaseController {
*/
@PostMapping("substationGetLine")
@ApiOperation("根据电站获取所有监测点")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiImplicitParam(name = "substationId", value = "请求体", required = true)
public HttpResult<LineDevGetBandDTO> substationGetLine(@RequestParam("substationId")String substationId) {
TimeInterval timer = new TimeInterval();
@@ -186,6 +199,7 @@ public class CommTerminalController extends BaseController {
*/
@PostMapping("busBarGetLine")
@ApiOperation("根据母线id获取监测点信息")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiImplicitParam(name = "busBarId", value = "请求体", required = true)
public HttpResult<LineDevGetBandDTO> busBarGetLine(@RequestParam("busBarId")String busBarId) {
TimeInterval timer = new TimeInterval();
@@ -229,4 +243,21 @@ public class CommTerminalController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
/**
* 根据监测点集合获取监测点详情
* @author cdf
* @date 2023/9/21
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getMonitorDetailList")
@ApiOperation("根据监测点集合获取监测点详情")
@ApiImplicitParam(name = "list", value = "监测点集合")
public HttpResult<List<LineDevGetDTO>> getMonitorDetailList(@RequestBody List<String> list) {
String methodDescribe = getMethodDescribe("getMonitorDetailList");
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, lineMapper.getMonitorListDetail(list), methodDescribe);
}
}

View File

@@ -5,6 +5,7 @@ import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO;
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
import com.njcn.device.biz.pojo.po.Overlimit;
import com.njcn.device.pq.pojo.advanced.UpDevVO;
@@ -436,6 +437,13 @@ public interface LineMapper extends BaseMapper<Line> {
List<LineDevGetDTO> getLineBySubStation(@Param("subId") String subId);
/**
* 根据监测点集合获取监测详细信息
* @author cdf
* @date 2023/9/20
*/
List<LineDevGetDTO> getMonitorListDetail(@Param("monitorIds") List<String> monitorIds);
/**
* 根据条件进行监测筛选出监测点id
*

View File

@@ -1105,6 +1105,20 @@
</select>
<select id="getMonitorListDetail" resultType="LineDevGetDTO">
select line.id pointId,dev.id devId,0 type,1 lineType,lineDetail.Time_Interval interval
from pq_line line
inner join pq_line_detail lineDetail on line.id = lineDetail.id
inner join pq_line subv on line.pid = subv.id
inner join pq_line dev on subv.pid = dev.id
where line.id in
<foreach collection="monitorIds" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</select>
<select id="getLineByIDs" resultType="java.lang.String">
SELECT DISTINCT
line.id

View File

@@ -36,6 +36,11 @@ public interface CommTerminalService {
*/
List<DeptGetChildrenMoreDTO> deptGetLine(DeptGetLineParam deptGetLineParam);
List<DeptGetChildrenMoreDTO> deptGetLineByIdList(List<String> monitorIds);
/**
* 根据单位获取所有变电站
* @author cdf

View File

@@ -18,9 +18,7 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -35,6 +33,7 @@ import java.util.stream.Stream;
@RequiredArgsConstructor
public class CommTerminalServiceImpl implements CommTerminalService {
//redis前缀
private final String commTerminal = "commTerminal#";
private final DeptLineService deptLineService;
@@ -94,13 +93,27 @@ public class CommTerminalServiceImpl implements CommTerminalService {
lineList.addAll(map.get(i));
}
});
deptGetChildrenMoreDTO.setLineBaseList(lineList);
//去重
ArrayList<LineDevGetDTO> collect = lineList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(
Comparator.comparing(LineDevGetDTO::getPointId)
)), ArrayList::new));
deptGetChildrenMoreDTO.setLineBaseList(collect);
}
result.add(deptGetChildrenMoreDTO);
});
return result;
}
@Override
public List<DeptGetChildrenMoreDTO> deptGetLineByIdList(List<String> monitorIds) {
List<DeptGetChildrenMoreDTO> result = new ArrayList<>();
lineMapper.getMonitorListDetail(monitorIds);
return null;
}
@Override
public List<DeptGetSubStationDTO> deptSubStation(DeptGetLineParam deptGetLineParam) {