设备退运工作流程完成

This commit is contained in:
2024-05-14 15:20:47 +08:00
parent fc2f2d767a
commit d5f57a65bd
32 changed files with 506 additions and 47 deletions

View File

@@ -0,0 +1,26 @@
package com.njcn.device.biz.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
@Getter
@AllArgsConstructor
public enum RunFlagEnum {
RUNNING(0, "投运"),
CHECK(1, "检修"),
STOP(2, "停运"),
TEST(3, "调试"),
QUIT(4, "退运");
/**
* 状态
*/
private final Integer status;
/**
* 描述
*/
private final String desc;
}

View File

@@ -21,16 +21,16 @@
<dependencies>
<!--pq-device-boot和pms-device-boot只能选择一个-->
<!-- <dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>pq-device-boot</artifactId>
<version>${project.version}</version>
</dependency>
<!--<dependency>
<groupId>com.njcn</groupId>
<artifactId>pms-device-boot</artifactId>
<version>${project.version}</version>
</dependency>-->
<dependency>
<groupId>com.njcn</groupId>
<artifactId>pms-device-boot</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.njcn</groupId>

View File

@@ -9,6 +9,7 @@ import com.njcn.device.pq.pojo.param.OnlineRateParam;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.pq.pojo.po.LineDetail;
import com.njcn.device.biz.pojo.po.Overlimit;
import com.njcn.device.pq.pojo.po.line.LineInfoVO;
import com.njcn.device.pq.pojo.vo.*;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
@@ -71,6 +72,15 @@ public interface LineFeignClient {
@PostMapping("getLineDetailData")
HttpResult<LineDetailDataVO> getLineDetailData(@RequestParam("id") String id);
/**
* 根据监测点id获取装置详情
*
* @param id 装置id
* @return 装置详情
*/
@PostMapping("getDeviceDetailData")
HttpResult<DeviceVO> getDeviceDetailData(@RequestParam("id") String id);
/**
* 根据监测点id获取监测点越限
*
@@ -141,14 +151,13 @@ public interface LineFeignClient {
@PostMapping("getLineInfo")
HttpResult<List<PollutionLineDTO>> getLineInfo(@RequestBody PollutionParamDTO pollutionParamDTO);
/**
* 获取所有监测点
* @param id 监测点集合
* @return 结果
*/
@PostMapping("getLineSubGdDetail")
HttpResult<LineDetailVO> getLineSubGdDetail(@RequestParam("id") String id);
@PostMapping("getLineInfoVO")
HttpResult<LineInfoVO> getLineInfoVO(@RequestParam("id") String id);
/**
* 获取告警变电站信息
* @param list 变电站集合
@@ -325,5 +334,9 @@ public interface LineFeignClient {
HttpResult<List<LineDetailVO.Detail>> getLineDetailByIds(@RequestBody List<String> ids);
@PostMapping("/updateDeviceRunFlag")
void updateDeviceRunFlag(@RequestParam("deviceId")String deviceId, @RequestParam("status")Integer status);
@PostMapping("/updateLineRunFlag")
void updateLineRunFlag(@RequestParam("lineId")String lineId, @RequestParam("status")Integer status);
}

View File

@@ -10,6 +10,7 @@ import com.njcn.device.pq.pojo.param.OnlineRateParam;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.pq.pojo.po.LineDetail;
import com.njcn.device.biz.pojo.po.Overlimit;
import com.njcn.device.pq.pojo.po.line.LineInfoVO;
import com.njcn.device.pq.pojo.vo.*;
import com.njcn.device.biz.utils.DeviceEnumUtil;
import feign.hystrix.FallbackFactory;
@@ -63,6 +64,12 @@ public class LineFeignClientFallbackFactory implements FallbackFactory<LineFeign
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<DeviceVO> getDeviceDetailData(String id) {
log.error("{}异常,降级处理,异常为:{}", "根据装置Id获取装置详情 ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<LineOverLimitVO> getLineOverLimitData(String id) {
log.error("{}异常,降级处理,异常为:{}", "根据监测点Id获取监测点越限 ", throwable.toString());
@@ -117,6 +124,12 @@ public class LineFeignClientFallbackFactory implements FallbackFactory<LineFeign
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<LineInfoVO> getLineInfoVO(String id) {
log.error("{}异常,降级处理,异常为:{}", "监测点详细信息 ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<List<WarningSubstationDTO>> getWarningSub(List<String> list) {
log.error("{}异常,降级处理,异常为:{}", "变电站集合为 ", throwable.toString());
@@ -237,6 +250,18 @@ public class LineFeignClientFallbackFactory implements FallbackFactory<LineFeign
log.error("{}异常,降级处理,异常为:{}", "根据监测点id获取监测点集合: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public void updateDeviceRunFlag(String deviceId, Integer status) {
log.error("{}异常,降级处理,异常为:{}", "更新监测点运行状态: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public void updateLineRunFlag(String lineId, Integer status) {
log.error("{}异常,降级处理,异常为:{}", "更新监测点运行状态: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -175,4 +175,9 @@ public class LineDetail{
*/
private String actualArea;
/**
* 监测点运行状态0运行1检修2停运3调试4退运
*/
private Integer runFlag;
}

View File

@@ -0,0 +1,33 @@
package com.njcn.device.pq.pojo.po.line;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@Data
public class LineInfoVO implements Serializable {
@ApiModelProperty("供电公司名称")
private String gdName;
@ApiModelProperty("变电站名称")
private String subName;
@ApiModelProperty("终端名称")
private String devName;
@ApiModelProperty("网络参数")
private String ip;
@ApiModelProperty("监测点名称")
private String lineName;
@ApiModelProperty("母线名称")
private String volName;
/**
* 0运行1检修2停运3调试4退运
*/
@ApiModelProperty("监测点运行状态")
private Integer runFlag;
}

View File

@@ -26,6 +26,13 @@ public class DeviceVO implements Serializable {
*/
private String nodeId;
@ApiModelProperty("供电公司名称")
private String gdName;
@ApiModelProperty("变电站名称")
private String subName;
private String name;
/**

View File

@@ -14,6 +14,7 @@ import java.time.LocalDateTime;
*/
@Data
public class LineDetailVO implements Serializable {
@ApiModelProperty("供电公司名称")
private String gdName;
@@ -28,6 +29,15 @@ public class LineDetailVO implements Serializable {
@ApiModelProperty("监测点名称")
private String lineName;
@ApiModelProperty("母线名称")
private String volName;
/**
* 0运行1检修2停运3调试4退运
*/
@ApiModelProperty("监测点运行状态")
private Integer runFlag;
@Data
public static class Detail extends LineDetailVO implements Serializable{

View File

@@ -14,6 +14,7 @@ import com.njcn.device.pq.mapper.*;
import com.njcn.device.pq.pojo.dto.*;
import com.njcn.device.pq.pojo.param.*;
import com.njcn.device.pq.pojo.po.*;
import com.njcn.device.pq.pojo.po.line.LineInfoVO;
import com.njcn.device.pq.pojo.vo.*;
import com.njcn.device.pq.service.LineService;
import com.njcn.web.controller.BaseController;
@@ -51,7 +52,6 @@ public class LineController extends BaseController {
private final RStatIntegrityDMapper integrityDMapper;
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getLineDetailData")
@ApiOperation("根据监测点id获取监测点详情")
@@ -62,6 +62,17 @@ public class LineController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("根据装置id获取装置详情")
@ApiImplicitParam(name = "id", value = "装置id", required = true)
@PostMapping("/getDeviceDetailData")
HttpResult<DeviceVO> getDeviceDetailData(@RequestParam("id") String id){
String methodDescribe = getMethodDescribe("getDeviceDetailData");
DeviceVO result = lineService.getDeviceDetailData(id);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getLineOverLimitData")
@ApiOperation("根据监测点id获取越限详情")
@@ -194,6 +205,39 @@ public class LineController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getLineInfoVO")
@ApiOperation("根据监测点id集合获取详细信息")
@ApiIgnore
public HttpResult<LineDetailVO> getLineInfoVO(@RequestParam("id") String id) {
String methodDescribe = getMethodDescribe("getLineInfoVO");
LineDetailVO result = lineMapper.getLineInfoVO(id);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@PostMapping("/updateDeviceRunFlag")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("更新终端运行状态")
@ApiIgnore
public HttpResult<Boolean> updateDeviceRunFlag(@RequestParam("deviceId")String deviceId, @RequestParam("status")Integer status){
String methodDescribe = getMethodDescribe("updateDeviceRunFlag");
deviceMapper.updateDeviceRunFlag(deviceId,status);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
}
@PostMapping("/updateLineRunFlag")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("更新监测点运行状态")
@ApiIgnore
public HttpResult<Boolean> updateLineRunFlag(@RequestParam("lineId")String lineId, @RequestParam("status")Integer status){
String methodDescribe = getMethodDescribe("updateLineRunFlag");
lineDetailMapper.updateLineRunFlag(lineId,status);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getWarningSub")
@ApiOperation("获取告警变电站信息")

View File

@@ -73,4 +73,6 @@ public interface DeviceMapper extends BaseMapper<Device> {
* @Date: 2023/11/7 15:40
*/
List<DevDetail> selectDevByIds(@Param("ids") List<String> ids);
void updateDeviceRunFlag(@Param("id")String deviceId, @Param("runFlag")Integer status);
}

View File

@@ -51,4 +51,6 @@ public interface LineDetailMapper extends BaseMapper<LineDetail> {
LineDevGetDTO getMonitorDetail(@Param("monitorId")String monitorId);
void updateLineRunFlag(@Param("id")String lineId, @Param("runFlag")Integer status);
}

View File

@@ -543,4 +543,8 @@ public interface LineMapper extends BaseMapper<Line> {
List<String> getDeviceIdByPowerFlag(@Param("lineIds")List<String> lineIds, @Param("powerFlag")Integer manufacturer);
DeviceVO getDeviceDetailData(@Param("id")String id);
LineDetailVO getLineInfoVO(@Param("id")String id);
}

View File

@@ -247,4 +247,10 @@
AND line.id = lineDetail.id
</where>
</select>
<update id="updateDeviceRunFlag" >
update pq_device
set run_flag = #{runFlag}
where id = #{id}
</update>
</mapper>

View File

@@ -60,4 +60,10 @@
inner join pq_line_detail b on a.id=b.id
where a.id = #{monitorId}
</select>
<update id="updateLineRunFlag" >
update pq_line_detail
set run_flag = #{runFlag}
where id = #{id}
</update>
</mapper>

View File

@@ -1548,4 +1548,50 @@
t2.Power_Flag = #{powerFlag}
</select>
<select id="getLineInfoVO" resultType="LineDetailVO">
SELECT DISTINCT gd.NAME gdName,
substation.NAME subName,
device.NAME devName,
deviceDetail.ip ip,
line.NAME lineName,
voltage.name volName,
pq_line_detail.run_flag
FROM pq_line line,
pq_line_detail pq_line_detail,
pq_line voltage,
pq_line device,
pq_device deviceDetail,
pq_line substation,
pq_line gd
WHERE line.pid = voltage.id
AND line.id = pq_line_detail.id
AND voltage.pid = device.id
AND device.pid = substation.id
AND substation.pid = gd.id
AND device.id = deviceDetail.id
AND line.id = #{id}
</select>
<select id="getDeviceDetailData" resultType="DeviceVO">
SELECT
DISTINCT gd.NAME gdName,
substation.NAME subName,
pq_line.id devIndex,
pq_line.NAME NAME,
pq_device.Com_Flag,
pq_device.Dev_Type,
pq_device.IP,
pq_device.Run_Flag
FROM
pq_line pq_line,
pq_device pq_device,
pq_line substation,
pq_line gd
WHERE
pq_line.id = pq_device.id
AND pq_line.pid = substation.id
AND substation.pid = gd.id
AND pq_line.id = #{id}
</select>
</mapper>

View File

@@ -209,4 +209,6 @@ public interface LineService extends IService<Line> {
List<LineDetailVO.Detail> getLineDetailByIds(List<String> ids);
LineALLInfoDTO getLineAllDetail(String id);
DeviceVO getDeviceDetailData(String id);
}

View File

@@ -642,6 +642,11 @@ public class LineServiceImpl extends ServiceImpl<LineMapper, Line> implements Li
return lineALLInfoDTO;
}
@Override
public DeviceVO getDeviceDetailData(String id) {
return this.baseMapper.getDeviceDetailData(id);
}
@Override
public List<Overlimit> getOverLimitByList(PollutionParamDTO pollutionParamDTO) {
return overlimitMapper.selectBatchIds(pollutionParamDTO.getLineList());

View File

@@ -229,7 +229,6 @@ public class TerminalTreeServiceImpl implements TerminalTreeService {
@Override
public List<TerminalSelectTreeVO> getTerminalSelectTree(Integer level) {
List<TerminalSelectTreeVO> resultList = new ArrayList<>();
DeviceInfoParam deviceInfoParam = new DeviceInfoParam();
deviceInfoParam.setDeptIndex(RequestUtil.getDeptIndex());
deviceInfoParam.setServerName(ServerEnum.HARMONIC.getName());
@@ -251,13 +250,23 @@ public class TerminalTreeServiceImpl implements TerminalTreeService {
terminalSelectTreeVO.setLabel(map.get(line.getPid()).getName() + "_" + line.getName());
children.add(terminalSelectTreeVO);
}
} else {
List<Line> substationList = lineMapper.selectList(new LambdaQueryWrapper<Line>().in(Line::getId, generalDeviceDTO.getSubIndexes()));
List<Line> devList = lineMapper.selectList(new LambdaQueryWrapper<Line>().in(Line::getId, generalDeviceDTO.getDeviceIndexes()));
for (Line line : devList) {
for (Line sub : substationList) {
TerminalSelectTreeVO terminalSelectTreeVO = new TerminalSelectTreeVO();
terminalSelectTreeVO.setValue(line.getId());
terminalSelectTreeVO.setLabel(line.getName());
terminalSelectTreeVO.setValue(sub.getId());
terminalSelectTreeVO.setLabel(sub.getName());
//根据变电站获取其下面所有的装置
List<TerminalSelectTreeVO> devChildren = new ArrayList<>();
List<Line> subDev = devList.stream().filter(dev -> dev.getPids().contains(sub.getId())).collect(Collectors.toList());
for (Line line : subDev) {
TerminalSelectTreeVO terminalSelectTreeLineVO = new TerminalSelectTreeVO();
terminalSelectTreeLineVO.setValue(line.getId());
terminalSelectTreeLineVO.setLabel(line.getName());
devChildren.add(terminalSelectTreeLineVO);
}
terminalSelectTreeVO.setChildren(devChildren);
children.add(terminalSelectTreeVO);
}
}