diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/controller/ActivitiController.java b/laws-modules/src/main/java/com/jero/modules/activiti/controller/ActivitiController.java index c2c276a3..ad67507b 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/controller/ActivitiController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/controller/ActivitiController.java @@ -6,12 +6,12 @@ import com.fasterxml.jackson.databind.node.ObjectNode; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.DictPoint; import com.jero.common.constant.enums.LanguageEnum; -import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.system.vo.LoginUser; import com.jero.common.util.MessageUtils; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.entity.ProcessNode; +import com.jero.modules.activiti.enums.FinishFlagEnum; import com.jero.modules.activiti.service.*; import com.jero.modules.laws.common.constant.ResultCommon; import io.swagger.annotations.*; @@ -155,11 +155,11 @@ public class ActivitiController { }else if ("其他起草人线下填写,上传".equals(taskName)){ } //更新审批表为完成,填充数据 - ProcessApprovalRecord approvalRecord = processApprovalRecordService.getByTaskId(taskId); + ProcessApprovalRecord approvalRecord = processApprovalRecordService.getToDoByTaskId(taskId); approvalRecord.setCommitFlag(commitFlag); approvalRecord.setCommitText(commitText); approvalRecord.setCommitFile(commitFile); - approvalRecord.setFinishFlag(YesOrNoEnum.YES.getInteger()); + approvalRecord.setFinishFlag(FinishFlagEnum.COMPLETE.getValue()); approvalRecord.setEndTime(new Date()); processApprovalRecordService.updateById(approvalRecord); //审批节点 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java b/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java index 9add1b25..53be5d15 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/controller/WorkCenterController.java @@ -7,7 +7,11 @@ import com.jero.common.api.vo.Result; import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.vo.LoginUser; import com.jero.modules.activiti.entity.ProcessAll; +import com.jero.modules.activiti.process.common.entity.ProcessDraft; +import com.jero.modules.activiti.process.common.service.ProcessDraftService; import com.jero.modules.activiti.service.ProcessAllService; +import com.jero.modules.activiti.vo.DelegateTaskParam; +import com.jero.modules.activiti.vo.ResolveTaskParam; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; @@ -38,6 +42,8 @@ public class WorkCenterController { @Resource private ProcessAllService processAllService; + @Resource + private ProcessDraftService processDraftService; @ApiOperation(value = "查询待办流程列表") @GetMapping("/getTodoList") @@ -102,6 +108,24 @@ public class WorkCenterController { return Result.OK(sentList); } + @ApiOperation(value = "查询草稿") + @GetMapping("/getDraftList") + public Result getDraftList(ProcessDraft processDraft, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String userId = loginUser.getId(); + queryWrapper.eq("create_by",userId); + Integer prcType = processDraft.getPrcType(); + queryWrapper.eq(prcType != null, "prc_type", prcType); + + Page page = new Page<>(pageNo, pageSize); + IPage sentList = processDraftService.page(page, queryWrapper); + return Result.OK(sentList); + } + @NotNull private QueryWrapper getProcessAllQueryWrapper(ProcessAll processAll) { String prcName = processAll.getPrcName(); @@ -126,4 +150,33 @@ public class WorkCenterController { processAllService.delete(processInstanceId); return Result.OK(); } + + /** + * 加签 + */ + @ApiOperation(value="加签") + @PostMapping("/delegateTask") + public Result delegateTask(@RequestBody DelegateTaskParam param) { + processAllService.delegateTask(param); + return Result.OK(); + } + + @ApiOperation(value="解决加签") + @PostMapping("/resolveTask") + public Result resolveTask(@RequestBody ResolveTaskParam param) { + processAllService.resolveTask(param); + return Result.OK(); + } + + /** + * 转签 + */ + @ApiOperation(value="转签") + @PostMapping("/transferTask") + public Result transferTask(@RequestBody DelegateTaskParam param) { + processAllService.transferTask(param); + return Result.OK(); + } + + } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java b/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java index c92d4bc2..b87e9595 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java @@ -4,22 +4,17 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.Date; import lombok.Data; -import org.springframework.format.annotation.DateTimeFormat; /** - * + *流程审批记录表 *@author liJiaRao - *@date 2023-10-16 15:49 + *@date 2023-10-20 16:42 */ -/** - * 流程审批记录表 - */ -@ApiModel(description="流程审批记录表") +@ApiModel(description = "流程审批记录表") @Data @TableName(value = "process_approval_record") public class ProcessApprovalRecord { @@ -27,115 +22,139 @@ public class ProcessApprovalRecord { * 主键 */ @TableId(value = "id", type = IdType.ASSIGN_ID) - @ApiModelProperty(value="主键") + @ApiModelProperty(value = "主键") private String id; /** * 任务id */ - @ApiModelProperty(value="任务id") + @TableField(value = "task_id") + @ApiModelProperty(value = "任务id") private String taskId; /** * 任务名称 */ - @ApiModelProperty(value="任务名称") + @TableField(value = "task_name") + @ApiModelProperty(value = "任务名称") private String taskName; /** * 流程实例id */ - @ApiModelProperty(value="流程实例id") + @TableField(value = "process_instance_id") + @ApiModelProperty(value = "流程实例id") private String processInstanceId; /** * 资源类型 */ - @ApiModelProperty(value="资源类型") + @TableField(value = "msg_type") + @ApiModelProperty(value = "资源类型") private String msgType; /** * 处理人id */ - @ApiModelProperty(value="处理人id") + @TableField(value = "user_id") + @ApiModelProperty(value = "处理人id") private String userId; /** * 信息 */ - @ApiModelProperty(value="信息") + @TableField(value = "mesg") + @ApiModelProperty(value = "信息") private String mesg; /** * 完成注记(0未完成,1完成) */ - @ApiModelProperty(value="完成注记(0未完成,1完成,2暂停)") + @TableField(value = "finish_flag") + @ApiModelProperty(value = "完成注记(0未完成,1完成)") private Integer finishFlag; /** * 项目id */ - @ApiModelProperty(value="项目id") + @TableField(value = "project_id") + @ApiModelProperty(value = "项目id") private String projectId; /** * 审批意见(0同意,1不同意) */ - @ApiModelProperty(value="审批意见(0同意,1不同意)") + @TableField(value = "commit_flag") + @ApiModelProperty(value = "审批意见(0同意,1不同意)") private Integer commitFlag; /** * 审批内容 */ - @ApiModelProperty(value="审批内容") + @TableField(value = "commit_text") + @ApiModelProperty(value = "审批内容") private String commitText; /** - * 附件 + * 审批附件 */ - @ApiModelProperty(value="附件") + @TableField(value = "commit_file") + @ApiModelProperty(value = "审批附件") private String commitFile; - /** - * 是否派发过加签任务 - */ - @ApiModelProperty(value="是否派发过加签任务") - private Integer hasDelegateTask; - - /** - * 是否加签任务 - */ - @ApiModelProperty(value="是否加签任务") - private Integer isDelegateTask; - - /** * 流程名称 */ - @ApiModelProperty(value="流程名称") + @TableField(value = "prc_name") + @ApiModelProperty(value = "流程名称") private String prcName; /** * 创建时间 */ - @ApiModelProperty(value="创建时间") - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @TableField(value = "create_time") + @ApiModelProperty(value = "创建时间") private Date createTime; /** * 更新时间 */ - @ApiModelProperty(value="更新时间") - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @TableField(value = "update_time") + @ApiModelProperty(value = "更新时间") private Date updateTime; /** * 完成时间 */ - @ApiModelProperty(value="完成时间") - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @TableField(value = "end_time") + @ApiModelProperty(value = "完成时间") private Date endTime; + + /** + * 是否派发过加签任务 + */ + @TableField(value = "has_delegate_task") + @ApiModelProperty(value = "是否派发过加签任务") + private Integer hasDelegateTask; + + /** + * 是否加签任务 + */ + @TableField(value = "is_delegate_task") + @ApiModelProperty(value = "是否加签任务") + private Integer isDelegateTask; + + /** + * 加签人 + */ + @TableField(value = "delegate_by") + @ApiModelProperty(value = "加签人") + private String delegateBy; + + /** + * 转办人 + */ + @TableField(value = "transfer_by") + @ApiModelProperty(value = "转办人") + private String transferBy; } \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java b/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java new file mode 100644 index 00000000..59c1c17a --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java @@ -0,0 +1,41 @@ +package com.jero.modules.activiti.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @author liJiaRao + * @date 2023-10-20 16:34 + */ +@Getter +@AllArgsConstructor +public enum FinishFlagEnum { + /** + * A + */ + INCOMPLETE("未完成", 0), + COMPLETE("完成", 1), + SUSPEND("暂停", 2), + ; + + private String name; + private Integer value; + + public static String getNameByValue(Integer value) { + for (FinishFlagEnum enumObject : values()) { + if (enumObject.getValue().equals(value)) { + return enumObject.getName(); + } + } + return null; + } + + public static Integer getValueByName(String name) { + for (FinishFlagEnum enumObject : values()) { + if (enumObject.getName().equals(name)) { + return enumObject.getValue(); + } + } + return null; + } +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/listener/CompleteListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/listener/CompleteListener.java index fc504213..a4c4892f 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/listener/CompleteListener.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/listener/CompleteListener.java @@ -3,6 +3,7 @@ package com.jero.modules.activiti.listener; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.modules.activiti.entity.ProcessApprovalRecord; +import com.jero.modules.activiti.enums.FinishFlagEnum; import com.jero.modules.activiti.service.ProcessApprovalRecordService; import com.jero.modules.activiti.util.SpringContextUtil; import org.activiti.engine.delegate.DelegateTask; @@ -15,7 +16,7 @@ import org.activiti.engine.delegate.TaskListener; public class CompleteListener implements TaskListener { @Override public void notify(DelegateTask delegateTask) { - //流程审批信息 + //流程审批信息转办 ProcessApprovalRecordService recordService = SpringContextUtil.getBean(ProcessApprovalRecordService.class); String taskId = delegateTask.getId(); @@ -25,7 +26,7 @@ public class CompleteListener implements TaskListener { wrapper.eq(ProcessApprovalRecord::getTaskId,taskId); wrapper.eq(ProcessApprovalRecord::getUserId,assignee); ProcessApprovalRecord approvalRecord = recordService.getOne(wrapper); - approvalRecord.setFinishFlag(YesOrNoEnum.YES.getInteger()); + approvalRecord.setFinishFlag(FinishFlagEnum.COMPLETE.getValue()); recordService.updateById(approvalRecord); System.out.println(taskId); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/listener/CreateListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/listener/CreateListener.java index dc0934ff..0b3390c6 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/listener/CreateListener.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/listener/CreateListener.java @@ -1,6 +1,7 @@ package com.jero.modules.activiti.listener; import com.jero.modules.activiti.entity.ProcessApprovalRecord; +import com.jero.modules.activiti.enums.FinishFlagEnum; import com.jero.modules.activiti.service.ProcessAllService; import com.jero.modules.activiti.service.ProcessApprovalRecordService; import com.jero.modules.activiti.util.SpringContextUtil; @@ -40,7 +41,7 @@ public class CreateListener implements TaskListener { approvalRecord.setTaskName(name); approvalRecord.setProcessInstanceId(processInstanceId); approvalRecord.setUserId(assignee); - approvalRecord.setFinishFlag(0); + approvalRecord.setFinishFlag(FinishFlagEnum.INCOMPLETE.getValue()); approvalRecord.setCreateTime(createTime); recordService.save(approvalRecord); // todo 对接统一平台生成待办任务 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/entity/ProcessDraft.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/entity/ProcessDraft.java index 0e9ab9a4..264c57f3 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/entity/ProcessDraft.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/entity/ProcessDraft.java @@ -18,7 +18,7 @@ public class ProcessDraft implements Serializable { /** * 主键ID */ - @TableId + @TableId(type = IdType.ASSIGN_ID) private String id; /** @@ -61,6 +61,21 @@ public class ProcessDraft implements Serializable { */ private String processKey; + /** + * 流程实例id + */ + private String processInstanceId; + + /** + * 项目类型 + */ + private Integer prcType; + + /** + * 项目id + */ + private String projectId; + @TableField(exist = false) private static final long serialVersionUID = 1L; } \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java index 1d550e4e..d3908ff9 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java @@ -2,15 +2,29 @@ package com.jero.modules.activiti.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.common.constant.enums.YesOrNoEnum; +import com.jero.common.exception.JeroBootException; +import com.jero.common.system.vo.LoginUser; import com.jero.modules.activiti.entity.ProcessApprovalRecord; +import com.jero.modules.activiti.enums.FinishFlagEnum; import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper; +import com.jero.modules.activiti.vo.DelegateTaskParam; +import com.jero.modules.activiti.vo.ResolveTaskParam; +import com.jero.modules.laws.common.constant.ResultCommon; import org.activiti.engine.RuntimeService; +import org.activiti.engine.TaskService; +import org.activiti.engine.task.Task; +import org.apache.shiro.SecurityUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.Date; import java.util.List; +import java.util.Objects; + import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.modules.activiti.mapper.ProcessAllMapper; import com.jero.modules.activiti.entity.ProcessAll; @@ -24,9 +38,11 @@ public class ProcessAllService extends ServiceImpl @Resource private ProcessAllMapper processAllMapper; @Resource - private ProcessApprovalRecordMapper processApprovalRecordMapper; + private ProcessApprovalRecordService approvalRecordService; @Resource private RuntimeService runtimeService; + @Resource + private TaskService taskService; public ProcessAll getByProcessInstanceId(String processInstanceId){ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); @@ -56,7 +72,7 @@ public class ProcessAllService extends ServiceImpl //删除审批表 LambdaQueryWrapper wrapper1 = new LambdaQueryWrapper<>(); wrapper1.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId); - processApprovalRecordMapper.delete(wrapper1); + approvalRecordService.remove(wrapper1); //业务表修改为草稿 Integer prcType = processAll.getPrcType(); WorkCenterService classByValue = null; @@ -72,4 +88,79 @@ public class ProcessAllService extends ServiceImpl public IPage getAllList(Page page, QueryWrapper queryWrapper) { return processAllMapper.getAllList(page,queryWrapper); } + + public void delegateTask(DelegateTaskParam param) { + String taskId = param.getTaskId(); + String userId = param.getUserId(); + + taskService.delegateTask(taskId, userId); + Task task = taskService.createTaskQuery().taskId(taskId).singleResult(); + String taskName = task.getName(); + String processInstanceId = task.getProcessInstanceId(); + //暂停之前的审批(未完成的任务id是之前的) + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(ProcessApprovalRecord::getTaskId, taskId); + updateWrapper.eq(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.INCOMPLETE.getValue()); + updateWrapper.set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.SUSPEND.getValue()); + updateWrapper.set(ProcessApprovalRecord::getHasDelegateTask, YesOrNoEnum.YES.getValue()); + approvalRecordService.update(updateWrapper); + //新增待审批记录 + ProcessApprovalRecord approvalRecord = new ProcessApprovalRecord(); + approvalRecord.setTaskId(taskId); + approvalRecord.setTaskName(taskName); + approvalRecord.setProcessInstanceId(processInstanceId); + approvalRecord.setUserId(userId); + approvalRecord.setFinishFlag(FinishFlagEnum.INCOMPLETE.getValue()); + approvalRecord.setCreateTime(new Date()); + approvalRecord.setIsDelegateTask(YesOrNoEnum.YES.getInteger()); + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + approvalRecord.setDelegateBy(loginUser.getId()); + + approvalRecordService.save(approvalRecord); + + + } + + public void resolveTask(ResolveTaskParam param) { + String taskId = param.getTaskId(); + String commitText = param.getCommitText(); + String commitFile = param.getCommitFile(); + + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + taskService.resolveTask(taskId); + + //完成之前的审批(未完成的任务id是之前的) + ProcessApprovalRecord approvalRecord = approvalRecordService.getToDoByTaskId(taskId); + + String userId = approvalRecord.getUserId(); + if (!Objects.equals(userId,loginUser.getId())){ + throw new JeroBootException(ResultCommon.TASK_HANDLER_ERROR); + } + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(ProcessApprovalRecord::getId, approvalRecord.getId()); + updateWrapper.set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.COMPLETE.getValue()); + updateWrapper.set(ProcessApprovalRecord::getCommitText, commitText); + updateWrapper.set(ProcessApprovalRecord::getCommitFile, commitFile); + approvalRecordService.update(updateWrapper); + // 启动暂停的任务 + LambdaUpdateWrapper updateWrapper1 = new LambdaUpdateWrapper<>(); + updateWrapper1.eq(ProcessApprovalRecord::getTaskId, taskId); + updateWrapper1.eq(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.SUSPEND.getValue()); + updateWrapper1.set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.INCOMPLETE.getValue()); + approvalRecordService.update(updateWrapper1); + } + + public void transferTask(DelegateTaskParam param) { + String taskId = param.getTaskId(); + String userId = param.getUserId(); + //获取审批(未完成的任务id是之前的) + ProcessApprovalRecord approvalRecord = approvalRecordService.getToDoByTaskId(taskId); + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(ProcessApprovalRecord::getId, approvalRecord.getId()); + updateWrapper.set(ProcessApprovalRecord::getTransferBy,loginUser.getId()); + updateWrapper.set(ProcessApprovalRecord::getUserId,userId); + approvalRecordService.update(updateWrapper); + } } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java index 2e1f8af6..829aab85 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java @@ -2,6 +2,7 @@ package com.jero.modules.activiti.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.jero.common.constant.enums.YesOrNoEnum; +import com.jero.modules.activiti.enums.FinishFlagEnum; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.List; @@ -16,10 +17,10 @@ import com.jero.modules.activiti.entity.ProcessApprovalRecord; @Service public class ProcessApprovalRecordService extends ServiceImpl { - public ProcessApprovalRecord getByTaskId(String taskId){ + public ProcessApprovalRecord getToDoByTaskId(String taskId){ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(ProcessApprovalRecord::getTaskId,taskId); - wrapper.eq(ProcessApprovalRecord::getIsDelegateTask, YesOrNoEnum.NO.getInteger()); + wrapper.eq(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.INCOMPLETE.getValue()); return this.getOne(wrapper); } } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/vo/DelegateTaskParam.java b/laws-modules/src/main/java/com/jero/modules/activiti/vo/DelegateTaskParam.java new file mode 100644 index 00000000..7822cd86 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/vo/DelegateTaskParam.java @@ -0,0 +1,17 @@ +package com.jero.modules.activiti.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @author liJiaRao + * @date 2023-10-20 16:52 + */ +@Data +public class DelegateTaskParam { + @ApiModelProperty(value = "任务id") + String taskId; + @ApiModelProperty(value = "用户id") + String userId; +} diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/vo/ResolveTaskParam.java b/laws-modules/src/main/java/com/jero/modules/activiti/vo/ResolveTaskParam.java new file mode 100644 index 00000000..7f841550 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/activiti/vo/ResolveTaskParam.java @@ -0,0 +1,18 @@ +package com.jero.modules.activiti.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author liJiaRao + * @date 2023-10-20 16:52 + */ +@Data +public class ResolveTaskParam { + @ApiModelProperty(value = "任务id") + String taskId; + @ApiModelProperty(value = "审批内容") + String commitText; + @ApiModelProperty(value = "审批附件") + String commitFile; +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/constant/ResultCommon.java b/laws-modules/src/main/java/com/jero/modules/laws/common/constant/ResultCommon.java index b1dd7938..2b42728e 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/constant/ResultCommon.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/constant/ResultCommon.java @@ -58,4 +58,8 @@ public class ResultCommon { public static final String IMPORT_ERROR = "import.error"; // 导入ZIP压缩包失败 public static final String PLEASE_UPLOAD_ZIP = "please.upload.zip.archive"; // 请上传Zip压缩包 + + public static final String TASK_HANDLER_ERROR = "task.handler.error"; // 只有处理人可以操作 + + } diff --git a/laws-single-startup/src/main/resources/i18n/messages.properties b/laws-single-startup/src/main/resources/i18n/messages.properties index 91b14f84..285665a0 100644 --- a/laws-single-startup/src/main/resources/i18n/messages.properties +++ b/laws-single-startup/src/main/resources/i18n/messages.properties @@ -44,4 +44,5 @@ horizontal.transgression=\u6C34\u5E73\u8D8A\u6743 select.level.two.tree.node=\u8BF7\u5148\u9009\u62E9\u4E8C\u7EA7\u53CA\u4EE5\u4E0B\u4F53\u7CFB export.error=\u5BFC\u51FA\u9519\u8BEF import.error=\u5BFC\u5165\u9519\u8BEF -please.upload.zip.archive=\u6570\u636E\u5BFC\u5165\u5931\u8D25\uFF0C\u8BF7\u4E0A\u4F20zip\u538B\u7F29\u5305 \ No newline at end of file +please.upload.zip.archive=\u6570\u636E\u5BFC\u5165\u5931\u8D25\uFF0C\u8BF7\u4E0A\u4F20zip\u538B\u7F29\u5305 +task.handler.error=\u53EA\u6709\u5904\u7406\u4EBA\u53EF\u4EE5\u64CD\u4F5C \ No newline at end of file diff --git a/laws-single-startup/src/main/resources/i18n/messages_en.properties b/laws-single-startup/src/main/resources/i18n/messages_en.properties index 3d6e49f1..7489612b 100644 --- a/laws-single-startup/src/main/resources/i18n/messages_en.properties +++ b/laws-single-startup/src/main/resources/i18n/messages_en.properties @@ -47,4 +47,5 @@ horizontal.transgression=Horizontal overstepping of authority select.level.two.tree.node=Please select a level 2 or lower system first export.error=Export error import.error=Import error -please.upload.zip.archive=Data import failed, please upload zip archive \ No newline at end of file +please.upload.zip.archive=Data import failed, please upload zip archive +task.handler.error=Only the handler can operate \ No newline at end of file diff --git a/laws-single-startup/src/main/resources/i18n/messages_zh.properties b/laws-single-startup/src/main/resources/i18n/messages_zh.properties index 78249242..c2c25fa0 100644 --- a/laws-single-startup/src/main/resources/i18n/messages_zh.properties +++ b/laws-single-startup/src/main/resources/i18n/messages_zh.properties @@ -46,4 +46,5 @@ horizontal.transgression=\u6C34\u5E73\u8D8A\u6743 select.level.two.tree.node=\u8BF7\u5148\u9009\u62E9\u4E8C\u7EA7\u53CA\u4EE5\u4E0B\u4F53\u7CFB` export.zip.archive.error=\u5BFC\u51FA\u9519\u8BEF import.zip.archive.error=\u5BFC\u5165\u9519\u8BEF -please.upload.zip.archive=\u6570\u636E\u5BFC\u5165\u5931\u8D25\uFF0C\u8BF7\u4E0A\u4F20zip\u538B\u7F29\u5305 \ No newline at end of file +please.upload.zip.archive=\u6570\u636E\u5BFC\u5165\u5931\u8D25\uFF0C\u8BF7\u4E0A\u4F20zip\u538B\u7F29\u5305 +task.handler.error=\u53EA\u6709\u5904\u7406\u4EBA\u53EF\u4EE5\u64CD\u4F5C \ No newline at end of file