车辆流程新版,更改status字段,新增title字段
Some checks are pending
Java CI with Maven / build (11) (push) Waiting to run
Java CI with Maven / build (17) (push) Waiting to run
Java CI with Maven / build (8) (push) Waiting to run
yudao-ui-admin CI / build (14.x) (push) Waiting to run
yudao-ui-admin CI / build (16.x) (push) Waiting to run
Some checks are pending
Java CI with Maven / build (11) (push) Waiting to run
Java CI with Maven / build (17) (push) Waiting to run
Java CI with Maven / build (8) (push) Waiting to run
yudao-ui-admin CI / build (14.x) (push) Waiting to run
yudao-ui-admin CI / build (16.x) (push) Waiting to run
This commit is contained in:
parent
87e22f4fd6
commit
21101a1ca1
@ -16,7 +16,7 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_
|
||||
public class ClglPageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "流程状态", example = "1")
|
||||
private Integer flowStatus;
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "id", example = "26309")
|
||||
private Long id;
|
||||
@ -27,6 +27,9 @@ public class ClglPageReqVO extends PageParam {
|
||||
@Schema(description = "申请人名字")
|
||||
private String carUserName;
|
||||
|
||||
@Schema(description = "标题")
|
||||
private String title;
|
||||
|
||||
@Schema(description = "部门")
|
||||
private Integer dept;
|
||||
|
||||
|
@ -21,7 +21,7 @@ public class ClglRespVO {
|
||||
private String processInstanceId;
|
||||
|
||||
@Schema(description = "流程状态", example = "1")
|
||||
private Integer flowStatus;
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "26309")
|
||||
@ExcelProperty("id")
|
||||
@ -35,6 +35,10 @@ public class ClglRespVO {
|
||||
@ExcelProperty("申请人名字")
|
||||
private String carUserName;
|
||||
|
||||
@Schema(description = "标题", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("标题")
|
||||
private String title;
|
||||
|
||||
@Schema(description = "部门", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("部门")
|
||||
private Integer dept;
|
||||
|
@ -11,6 +11,13 @@ import java.time.LocalDateTime;
|
||||
@Data
|
||||
public class ClglSaveReqVO {
|
||||
|
||||
@Schema(description = "流程定义key")
|
||||
private String processDefinitionKey;
|
||||
|
||||
@Schema(description = "当前创建路径")
|
||||
private String curfullpath;
|
||||
|
||||
|
||||
@Schema(description = "发起人自选审批人 Map", example = "{taskKey1: [1, 2]}")
|
||||
private Map<String, List<Long>> startUserSelectAssignees;
|
||||
|
||||
@ -30,6 +37,10 @@ public class ClglSaveReqVO {
|
||||
@NotNull(message = "申请人名字不能为空")
|
||||
private String carUserName;
|
||||
|
||||
@Schema(description = "标题", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@NotNull(message = "标题不能为空")
|
||||
private String title;
|
||||
|
||||
@Schema(description = "部门", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@NotNull(message = "部门不能为空")
|
||||
private Integer dept;
|
||||
|
@ -44,13 +44,17 @@ public class ClglDO extends BaseDO {
|
||||
* 枚举 {@link BpmTaskStatusEnum}
|
||||
* 考虑到简单,所以直接复用了 BpmProcessInstanceStatusEnum 枚举,也可以自己定义一个枚举哈
|
||||
*/
|
||||
private Integer flowStatus;
|
||||
private Integer status;
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@TableId
|
||||
private Long id;
|
||||
/**
|
||||
* title
|
||||
*/
|
||||
private String title;
|
||||
/**
|
||||
* 申请人id
|
||||
*/
|
||||
|
@ -22,6 +22,7 @@ public interface ClglMapper extends BaseMapperX<ClglDO> {
|
||||
.eqIfPresent(ClglDO::getId, reqVO.getId())
|
||||
.eqIfPresent(ClglDO::getCarUserId, reqVO.getCarUserId())
|
||||
.eqIfPresent(ClglDO::getCarUserName, reqVO.getCarUserName())
|
||||
.eqIfPresent(ClglDO::getTitle, reqVO.getTitle())
|
||||
.eqIfPresent(ClglDO::getDept, reqVO.getDept())
|
||||
.eqIfPresent(ClglDO::getDeptName, reqVO.getDeptName())
|
||||
.eqIfPresent(ClglDO::getCarType, reqVO.getCarType())
|
||||
@ -33,7 +34,7 @@ public interface ClglMapper extends BaseMapperX<ClglDO> {
|
||||
.eqIfPresent(ClglDO::getCarEndMileage, reqVO.getCarEndMileage())
|
||||
.eqIfPresent(ClglDO::getCarStatus, reqVO.getCarStatus())
|
||||
.eqIfPresent(ClglDO::getUserId, userId)
|
||||
.eqIfPresent(ClglDO::getFlowStatus, reqVO.getFlowStatus())
|
||||
.eqIfPresent(ClglDO::getStatus, reqVO.getStatus())
|
||||
.betweenIfPresent(ClglDO::getCreateTime, reqVO.getCreateTime())
|
||||
.orderByDesc(ClglDO::getId));
|
||||
}
|
||||
@ -42,6 +43,7 @@ public interface ClglMapper extends BaseMapperX<ClglDO> {
|
||||
.eqIfPresent(ClglDO::getId, reqVO.getId())
|
||||
.eqIfPresent(ClglDO::getCarUserId, reqVO.getCarUserId())
|
||||
.eqIfPresent(ClglDO::getCarUserName, reqVO.getCarUserName())
|
||||
.eqIfPresent(ClglDO::getTitle, reqVO.getTitle())
|
||||
.eqIfPresent(ClglDO::getDept, reqVO.getDept())
|
||||
.eqIfPresent(ClglDO::getDeptName, reqVO.getDeptName())
|
||||
.eqIfPresent(ClglDO::getCarType, reqVO.getCarType())
|
||||
@ -52,7 +54,7 @@ public interface ClglMapper extends BaseMapperX<ClglDO> {
|
||||
.eqIfPresent(ClglDO::getCarStartMileage, reqVO.getCarStartMileage())
|
||||
.eqIfPresent(ClglDO::getCarEndMileage, reqVO.getCarEndMileage())
|
||||
.eqIfPresent(ClglDO::getCarStatus, reqVO.getCarStatus())
|
||||
.eqIfPresent(ClglDO::getFlowStatus, reqVO.getFlowStatus())
|
||||
.eqIfPresent(ClglDO::getStatus, reqVO.getStatus())
|
||||
.betweenIfPresent(ClglDO::getCreateTime, reqVO.getCreateTime())
|
||||
.orderByDesc(ClglDO::getId));
|
||||
}
|
||||
|
@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.home.service.clgl;
|
||||
|
||||
import cn.iocoder.yudao.module.bpm.api.task.BpmProcessInstanceApi;
|
||||
import cn.iocoder.yudao.module.bpm.api.task.dto.BpmProcessInstanceCreateReqDTO;
|
||||
import cn.iocoder.yudao.module.bpm.dal.mysql.processinstancetodo.ProcessInstanceTodoMapper;
|
||||
import cn.iocoder.yudao.module.bpm.enums.task.BpmTaskStatusEnum;
|
||||
import org.springframework.stereotype.Service;
|
||||
import javax.annotation.Resource;
|
||||
@ -14,6 +15,7 @@ import cn.iocoder.yudao.module.home.dal.dataobject.clgl.ClglDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.module.bpm.dal.dataobject.processinstancetodo.ProcessInstanceTodoDO;
|
||||
|
||||
import cn.iocoder.yudao.module.home.dal.mysql.clgl.ClglMapper;
|
||||
|
||||
@ -29,18 +31,22 @@ import static cn.iocoder.yudao.module.home.enums.ErrorCodeConstants.*;
|
||||
@Service
|
||||
@Validated
|
||||
public class ClglServiceImpl implements ClglService {
|
||||
public static final String PROCESS_KEY = "car-001";
|
||||
// public static final String PROCESS_KEY = "car-001";
|
||||
public static String PROCESS_KEY = "";
|
||||
|
||||
@Resource
|
||||
private ClglMapper clglMapper;
|
||||
@Resource
|
||||
private ProcessInstanceTodoMapper processInstanceTodoMapper;
|
||||
@Resource
|
||||
private BpmProcessInstanceApi processInstanceApi;
|
||||
|
||||
@Override
|
||||
public Long createClgl(Long userId,ClglSaveReqVO createReqVO) {
|
||||
PROCESS_KEY = createReqVO.getProcessDefinitionKey();
|
||||
// 插入
|
||||
ClglDO clgl = BeanUtils.toBean(createReqVO, ClglDO.class)
|
||||
.setUserId(userId).setFlowStatus(BpmTaskStatusEnum.RUNNING.getStatus());
|
||||
.setUserId(userId).setStatus(BpmTaskStatusEnum.RUNNING.getStatus());
|
||||
clglMapper.insert(clgl);
|
||||
|
||||
// 发起 BPM 流程
|
||||
@ -51,6 +57,15 @@ public class ClglServiceImpl implements ClglService {
|
||||
.setStartUserSelectAssignees(createReqVO.getStartUserSelectAssignees()));
|
||||
// 将工作流的编号,更新到 OA 请假单中
|
||||
clglMapper.updateById(new ClglDO().setId(clgl.getId()).setProcessInstanceId(processInstanceId));
|
||||
|
||||
ProcessInstanceTodoDO todo = new ProcessInstanceTodoDO();
|
||||
todo.setTitle(createReqVO.getTitle());
|
||||
todo.setProcessKey(PROCESS_KEY);
|
||||
todo.setProcessInstanceId(processInstanceId);
|
||||
todo.setFormCustomCreatePath(createReqVO.getCurfullpath());
|
||||
todo.setStatus(0);
|
||||
processInstanceTodoMapper.insert(todo);
|
||||
|
||||
// 返回
|
||||
return clgl.getId();
|
||||
}
|
||||
@ -101,7 +116,7 @@ public class ClglServiceImpl implements ClglService {
|
||||
@Override
|
||||
public void updateClglStatus(Long id, Integer status) {
|
||||
validateLeaveExists(id);
|
||||
clglMapper.updateById(new ClglDO().setId(id).setFlowStatus(status));
|
||||
clglMapper.updateById(new ClglDO().setId(id).setStatus(status));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -112,7 +112,7 @@ public class ClglServiceImplTest extends BaseDbUnitTest {
|
||||
// mock 数据
|
||||
ClglDO dbClgl = randomPojo(ClglDO.class, o -> { // 等会查询到
|
||||
o.setId(null);
|
||||
o.setCarUser(null);
|
||||
o.setCarUserId(null);
|
||||
o.setDept(null);
|
||||
o.setCarType(null);
|
||||
o.setCarDriver(null);
|
||||
@ -128,7 +128,7 @@ public class ClglServiceImplTest extends BaseDbUnitTest {
|
||||
// 测试 id 不匹配
|
||||
clglMapper.insert(cloneIgnoreId(dbClgl, o -> o.setId(null)));
|
||||
// 测试 carUser 不匹配
|
||||
clglMapper.insert(cloneIgnoreId(dbClgl, o -> o.setCarUser(null)));
|
||||
clglMapper.insert(cloneIgnoreId(dbClgl, o -> o.setCarUserId(null)));
|
||||
// 测试 dept 不匹配
|
||||
clglMapper.insert(cloneIgnoreId(dbClgl, o -> o.setDept(null)));
|
||||
// 测试 carType 不匹配
|
||||
@ -152,7 +152,7 @@ public class ClglServiceImplTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
ClglPageReqVO reqVO = new ClglPageReqVO();
|
||||
reqVO.setId(null);
|
||||
reqVO.setCarUser(null);
|
||||
reqVO.setCarUserId(null);
|
||||
reqVO.setDept(null);
|
||||
reqVO.setCarType(null);
|
||||
reqVO.setCarDriver(null);
|
||||
|
Loading…
Reference in New Issue
Block a user