设备退运工作流程完成

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

@@ -36,6 +36,12 @@
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>pq-device-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>common-web</artifactId>

View File

@@ -16,14 +16,12 @@ import com.njcn.supervision.service.device.IQuitRunningDeviceService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController;
import com.njcn.web.controller.BaseController;
/**
@@ -63,6 +61,25 @@ public class QuitRunningDeviceController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, runningDeviceId, methodDescribe);
}
@GetMapping("/updateDeviceStatus")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@Operation(summary = "更新退运装置流程状态")
public HttpResult<Object> updateDeviceStatus(String businessKey,Integer status) {
String methodDescribe = getMethodDescribe("updateDeviceStatus");
quitRunningDeviceService.updateDeviceStatus(businessKey,status);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@GetMapping("/getById")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@Operation(summary = "根据id获取设备的详细数据")
public HttpResult<QuitRunningDeviceVO> getById(String id) {
String methodDescribe = getMethodDescribe("getById");
QuitRunningDeviceVO quitRunningDeviceVO = quitRunningDeviceService.getVOById(id);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, quitRunningDeviceVO, methodDescribe);
}
}

View File

@@ -72,7 +72,7 @@ public class UserReportManageController extends BaseController {
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/removeUserReport")
@ApiOperation("查询干扰源用户")
@ApiOperation("删除干扰源用户记录")
public HttpResult<Boolean> removeUserReport(@RequestParam("ids") List<String> ids){
String methodDescribe = getMethodDescribe("removeUserReport");
Boolean flag = userReportPOService.removeUserReport(ids);
@@ -88,13 +88,16 @@ public class UserReportManageController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, userReportVO, methodDescribe);
}
@GetMapping("/updateUserReportStatus")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@Operation(summary = "根据id获取用户档案录入的详细数据")
@Operation(summary = "更新用户数据流程状态")
public HttpResult<Object> updateUserReportStatus(String businessKey,Integer status) {
String methodDescribe = getMethodDescribe("updateUserReportStatus");
userReportPOService.updateUserReportStatus(businessKey,status);
userReportPOService.updateUserReportStatus(businessKey,status);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
}

View File

@@ -4,14 +4,14 @@
<!--获取流程表单分页列表-->
<select id="page" resultType="QuitRunningDeviceVO">
SELECT
supervision_user_report.id,
supervision_user_report.device_id,
supervision_user_report.device_type,
supervision_user_report.property_no,
supervision_user_report.report_path,
supervision_user_report.process_instance_id,
supervision_user_report.create_time,
supervision_user_report.status
supervision_quit_running_device.id,
supervision_quit_running_device.device_id,
supervision_quit_running_device.device_type,
supervision_quit_running_device.property_no,
supervision_quit_running_device.report_path,
supervision_quit_running_device.process_instance_id,
supervision_quit_running_device.create_time,
supervision_quit_running_device.status
FROM supervision_quit_running_device supervision_quit_running_device
WHERE ${ew.sqlSegment}
</select>

View File

@@ -19,4 +19,8 @@ public interface IQuitRunningDeviceService extends IService<QuitRunningDevice> {
String addRunningDevice(QuitRunningDeviceParam quitRunningDeviceParam);
Page<QuitRunningDeviceVO> getQuitRunningDevice(QuitRunningDeviceParam.QuitRunningDeviceQueryParam quitRunningDeviceQueryParam);
void updateDeviceStatus(String businessKey, Integer status);
QuitRunningDeviceVO getVOById(String id);
}

View File

@@ -1,13 +1,21 @@
package com.njcn.supervision.service.device.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.bpm.api.BpmProcessFeignClient;
import com.njcn.bpm.enums.BpmProcessInstanceStatusEnum;
import com.njcn.bpm.enums.BpmTaskStatusEnum;
import com.njcn.bpm.pojo.dto.BpmProcessInstanceCreateReqDTO;
import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.device.biz.enums.RunFlagEnum;
import com.njcn.device.pq.api.LineFeignClient;
import com.njcn.device.pq.pojo.po.line.LineInfoVO;
import com.njcn.device.pq.pojo.vo.DeviceVO;
import com.njcn.device.pq.pojo.vo.LineDetailDataVO;
import com.njcn.device.pq.pojo.vo.LineDetailVO;
import com.njcn.supervision.mapper.device.QuitRunningDeviceMapper;
import com.njcn.supervision.pojo.param.device.QuitRunningDeviceParam;
import com.njcn.supervision.pojo.po.device.QuitRunningDevice;
@@ -19,6 +27,7 @@ import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -34,8 +43,12 @@ import java.util.Objects;
@RequiredArgsConstructor
public class QuitRunningDeviceServiceImpl extends ServiceImpl<QuitRunningDeviceMapper, QuitRunningDevice> implements IQuitRunningDeviceService {
private final BpmProcessFeignClient bpmProcessFeignClient;
private final LineFeignClient lineFeignClient;
/**
* 设备退运对应的流程定义 KEY
*/
@@ -80,7 +93,76 @@ public class QuitRunningDeviceServiceImpl extends ServiceImpl<QuitRunningDeviceM
}
quitRunningDeviceVOQueryWrapper.orderByDesc("supervision_quit_running_device.create_time");
//todo...根据设备id获取详细数据用于回显待会做
return this.baseMapper.page(new Page<>(PageFactory.getPageNum(quitRunningDeviceQueryParam), PageFactory.getPageSize(quitRunningDeviceQueryParam)), quitRunningDeviceVOQueryWrapper);
Page<QuitRunningDeviceVO> page = this.baseMapper.page(new Page<>(PageFactory.getPageNum(quitRunningDeviceQueryParam), PageFactory.getPageSize(quitRunningDeviceQueryParam)), quitRunningDeviceVOQueryWrapper);
List<QuitRunningDeviceVO> records = page.getRecords();
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());
//获取装置详细信息
}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());
}
}
}
page.setRecords(records);
return page;
}
/**
* 监听该流程的状态
*/
@Override
public void updateDeviceStatus(String businessKey, Integer status) {
QuitRunningDevice quitRunningDevice = this.baseMapper.selectById(businessKey);
//如果状态为审批通过
if(status.equals(BpmProcessInstanceStatusEnum.APPROVE.getStatus())){
//通过,则需要远程将该装置调整为退运
if(quitRunningDevice.getDeviceType() == 1){
//修改装置
lineFeignClient.updateDeviceRunFlag(quitRunningDevice.getDeviceId(), RunFlagEnum.QUIT.getStatus());
}else if(quitRunningDevice.getDeviceType() == 2){
//修改监测点
lineFeignClient.updateLineRunFlag(quitRunningDevice.getDeviceId(),RunFlagEnum.QUIT.getStatus());
}
}
quitRunningDevice.setStatus(status);
this.updateById(quitRunningDevice);
}
@Override
public QuitRunningDeviceVO getVOById(String id) {
QuitRunningDevice quitRunningDevice = this.baseMapper.selectById(id);
QuitRunningDeviceVO quitRunningDeviceVO = new QuitRunningDeviceVO();
BeanUtils.copyProperties(quitRunningDevice, quitRunningDeviceVO);
//通过,则需要远程将该装置调整为退运
if(quitRunningDeviceVO.getDeviceType() == 1){
DeviceVO deviceVO = lineFeignClient.getDeviceDetailData(quitRunningDeviceVO.getDeviceId()).getData();
quitRunningDeviceVO.setDeviceName(deviceVO.getName());
quitRunningDeviceVO.setDeviceStatus(deviceVO.getRunFlag());
quitRunningDeviceVO.setGdName(deviceVO.getGdName());
quitRunningDeviceVO.setSubName(deviceVO.getSubName());
//获取装置详细信息
}else if(quitRunningDeviceVO.getDeviceType() == 2){
//获取监测点详细信息
LineInfoVO lineInfoVO = lineFeignClient.getLineInfoVO(quitRunningDeviceVO.getDeviceId()).getData();
quitRunningDeviceVO.setDeviceStatus(lineInfoVO.getRunFlag());
quitRunningDeviceVO.setDeviceName(lineInfoVO.getVolName().concat("_").concat(lineInfoVO.getLineName()));
quitRunningDeviceVO.setGdName(lineInfoVO.getGdName());
quitRunningDeviceVO.setSubName(lineInfoVO.getSubName());
quitRunningDeviceVO.setVolName(lineInfoVO.getVolName());
}
return quitRunningDeviceVO;
}
private void checkDeviceStatus(QuitRunningDeviceParam quitRunningDeviceParam) {