退运流程的基础文件提交
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
package com.njcn.supervision.service.device;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.njcn.supervision.pojo.param.device.QuitRunningDeviceParam;
|
||||
import com.njcn.supervision.pojo.po.device.QuitRunningDevice;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author hongawen
|
||||
* @since 2024-05-13
|
||||
*/
|
||||
public interface IQuitRunningDeviceService extends IService<QuitRunningDevice> {
|
||||
|
||||
String addRunningDevice(QuitRunningDeviceParam quitRunningDeviceParam);
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
package com.njcn.supervision.service.device.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.njcn.bpm.api.BpmProcessFeignClient;
|
||||
import com.njcn.bpm.enums.BpmTaskStatusEnum;
|
||||
import com.njcn.bpm.pojo.dto.BpmProcessInstanceCreateReqDTO;
|
||||
import com.njcn.common.pojo.enums.common.DataStateEnum;
|
||||
import com.njcn.supervision.enums.UserNatureEnum;
|
||||
import com.njcn.supervision.mapper.mapper.QuitRunningDeviceMapper;
|
||||
import com.njcn.supervision.pojo.param.device.QuitRunningDeviceParam;
|
||||
import com.njcn.supervision.pojo.po.device.QuitRunningDevice;
|
||||
import com.njcn.supervision.pojo.po.user.UserReportPO;
|
||||
import com.njcn.supervision.pojo.po.user.UserReportProjectPO;
|
||||
import com.njcn.supervision.pojo.po.user.UserReportSensitivePO;
|
||||
import com.njcn.supervision.pojo.po.user.UserReportSubstationPO;
|
||||
import com.njcn.supervision.service.device.IQuitRunningDeviceService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author hongawen
|
||||
* @since 2024-05-13
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class QuitRunningDeviceServiceImpl extends ServiceImpl<QuitRunningDeviceMapper, QuitRunningDevice> implements IQuitRunningDeviceService {
|
||||
|
||||
private final BpmProcessFeignClient bpmProcessFeignClient;
|
||||
|
||||
/**
|
||||
* 设备退运对应的流程定义 KEY
|
||||
*/
|
||||
public static final String PROCESS_KEY = "quit_running_device";
|
||||
|
||||
@Override
|
||||
public String addRunningDevice(QuitRunningDeviceParam quitRunningDeviceParam) {
|
||||
//判断设备状态,是不是已经退运了
|
||||
checkDeviceStatus(quitRunningDeviceParam);
|
||||
QuitRunningDevice quitRunningDevice = new QuitRunningDevice();
|
||||
BeanUtils.copyProperties(quitRunningDeviceParam, quitRunningDevice);
|
||||
quitRunningDevice.setState(DataStateEnum.ENABLE.getCode());
|
||||
quitRunningDevice.setStatus(BpmTaskStatusEnum.RUNNING.getStatus());
|
||||
this.save(quitRunningDevice);
|
||||
// 发起 BPM 流程
|
||||
Map<String, Object> processInstanceVariables = new HashMap<>();
|
||||
BpmProcessInstanceCreateReqDTO bpmProcessInstanceCreateReqDTO = new BpmProcessInstanceCreateReqDTO();
|
||||
bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(PROCESS_KEY);
|
||||
bpmProcessInstanceCreateReqDTO.setBusinessKey(quitRunningDevice.getId());
|
||||
bpmProcessInstanceCreateReqDTO.setStartUserSelectAssignees(quitRunningDeviceParam.getStartUserSelectAssignees());
|
||||
bpmProcessInstanceCreateReqDTO.setVariables(processInstanceVariables);
|
||||
String processInstanceId = bpmProcessFeignClient.createProcessInstance(quitRunningDevice.getCreateBy(),bpmProcessInstanceCreateReqDTO).getData();
|
||||
// 将工作流的编号,更新到流程单中
|
||||
quitRunningDevice.setProcessInstanceId(processInstanceId);
|
||||
this.baseMapper.updateById(quitRunningDevice);
|
||||
return quitRunningDevice.getId();
|
||||
}
|
||||
|
||||
private void checkDeviceStatus(QuitRunningDeviceParam quitRunningDeviceParam) {
|
||||
//todo...
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user