diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/controller/XrSeriousIllegalPersonRemListController.java b/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/controller/XrSeriousIllegalPersonRemListController.java index 96d6a10..f00dec8 100644 --- a/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/controller/XrSeriousIllegalPersonRemListController.java +++ b/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/controller/XrSeriousIllegalPersonRemListController.java @@ -9,6 +9,8 @@ import com.chinaweal.aiccs.aiccs.business.entity.XrOpinion; import com.chinaweal.aiccs.aiccs.business.entity.XrTaskList; import com.chinaweal.aiccs.aiccs.business.entity.dto.ApprovalFormDto; import com.chinaweal.aiccs.aiccs.business.entity.vo.XrTaskListVo; +import com.chinaweal.aiccs.aiccs.business.rules.model.NodeModel; +import com.chinaweal.aiccs.aiccs.business.rules.model.SequenceFlowModel; import com.chinaweal.aiccs.aiccs.business.service.IXrActivityService; import com.chinaweal.aiccs.aiccs.business.service.IXrOpinionService; import com.chinaweal.aiccs.aiccs.business.service.IXrTaskListService; @@ -20,6 +22,7 @@ import com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.dto.PersonSpeSaveIv import com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.dto.SeriousIllegalListQueryDto; import com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.dto.SeriousIllegalProcessRemDto; import com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.dto.SeriousIllegalSpeQueryDto; +import com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.vo.TaskCurrentInfoVo; import com.chinaweal.aiccs.aiccs.seriousillegalPerson.service.IXrSeriousIllegalPersonListService; import com.chinaweal.aiccs.aiccs.seriousillegalPerson.service.IXrSeriousIllegalPersonRemListService; import com.chinaweal.aiccs.common.base.controller.BaseController; @@ -140,6 +143,44 @@ public class XrSeriousIllegalPersonRemListController extends BaseController { return RestResult.ok(approvalDto); } + @ApiOperation(value = "6.下一步可执行流程清单", position = 6) + @GetMapping("/getNextStepList") + public RestResult> getNextStepList(@RequestParam @ApiParam("业务号") String bizSeqNo) { + // 根据业务号查询待办记录 + XrTaskList xrTaskList = iXrTaskListService.getOne( + new LambdaQueryWrapper().eq(XrTaskList::getBizSeqNo, bizSeqNo) + ); + if (xrTaskList == null) { + throw new BusinessException("未找到该业务的待办记录"); + } + // 查询下一步可执行的流程清单 + List nextStepList = iXrActivityService.findNextSequenceFlowList(xrTaskList.getTaskLikeId()); + return RestResult.ok(nextStepList); + } + + @ApiOperation(value = "7.查询当前待办信息", position = 7) + @GetMapping("/getCurrentTaskInfo") + public RestResult getCurrentTaskInfo(@RequestParam @ApiParam("业务号") String bizSeqNo) { + // 根据业务号查询待办记录 + XrTaskList xrTaskList = iXrTaskListService.getOne( + new LambdaQueryWrapper().eq(XrTaskList::getBizSeqNo, bizSeqNo) + ); + if (xrTaskList == null) { + throw new BusinessException("未找到该业务的待办记录"); + } + // 获取当前节点信息 + NodeModel currentNode = iXrActivityService.findCurrentNode(xrTaskList.getTaskLikeId()); + + // 封装返回结果 + TaskCurrentInfoVo result = new TaskCurrentInfoVo(); + result.setTaskList(xrTaskList); + result.setCurrentNode(currentNode); + if (currentNode != null) { + result.setCurrentNodeID(currentNode.getId()); + } + return RestResult.ok(result); + } + /** * 打印文书页面 */ diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/controller/XrSeriousIllegalPersonSpeListController.java b/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/controller/XrSeriousIllegalPersonSpeListController.java index 23e1298..74ec8fd 100644 --- a/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/controller/XrSeriousIllegalPersonSpeListController.java +++ b/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/controller/XrSeriousIllegalPersonSpeListController.java @@ -9,6 +9,8 @@ import com.chinaweal.aiccs.aiccs.business.entity.XrOpinion; import com.chinaweal.aiccs.aiccs.business.entity.XrTaskList; import com.chinaweal.aiccs.aiccs.business.entity.dto.ApprovalFormDto; import com.chinaweal.aiccs.aiccs.business.entity.vo.XrTaskListVo; +import com.chinaweal.aiccs.aiccs.business.rules.model.NodeModel; +import com.chinaweal.aiccs.aiccs.business.rules.model.SequenceFlowModel; import com.chinaweal.aiccs.aiccs.business.service.IXrActivityService; import com.chinaweal.aiccs.aiccs.business.service.IXrOpinionService; import com.chinaweal.aiccs.aiccs.business.service.IXrTaskListService; @@ -18,6 +20,7 @@ import com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.XrSeriousIllegalPer import com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.dto.PersonSpeSaveIvdDto; import com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.dto.SeriousIllegalProcessDto; import com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.dto.SeriousIllegalSpeQueryDto; +import com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.vo.TaskCurrentInfoVo; import com.chinaweal.aiccs.aiccs.seriousillegalPerson.service.IXrSeriousillegalPersonSpeListService; import com.chinaweal.aiccs.common.base.controller.BaseController; import com.chinaweal.aiccs.common.constant.BaseDataConstant; @@ -147,6 +150,44 @@ public class XrSeriousIllegalPersonSpeListController extends BaseController { return RestResult.ok(approvalDto); } + @ApiOperation(value = "6.下一步可执行流程清单", position = 6) + @GetMapping("/getNextStepList") + public RestResult> getNextStepList(@RequestParam @ApiParam("业务号") String bizSeqNo) { + // 根据业务号查询待办记录 + XrTaskList xrTaskList = iXrTaskListService.getOne( + new LambdaQueryWrapper().eq(XrTaskList::getBizSeqNo, bizSeqNo) + ); + if (xrTaskList == null) { + throw new BusinessException("未找到该业务的待办记录"); + } + // 查询下一步可执行的流程清单 + List nextStepList = iXrActivityService.findNextSequenceFlowList(xrTaskList.getTaskLikeId()); + return RestResult.ok(nextStepList); + } + + @ApiOperation(value = "7.查询当前待办信息", position = 7) + @GetMapping("/getCurrentTaskInfo") + public RestResult getCurrentTaskInfo(@RequestParam @ApiParam("业务号") String bizSeqNo) { + // 根据业务号查询待办记录 + XrTaskList xrTaskList = iXrTaskListService.getOne( + new LambdaQueryWrapper().eq(XrTaskList::getBizSeqNo, bizSeqNo) + ); + if (xrTaskList == null) { + throw new BusinessException("未找到该业务的待办记录"); + } + // 获取当前节点信息 + NodeModel currentNode = iXrActivityService.findCurrentNode(xrTaskList.getTaskLikeId()); + + // 封装返回结果 + TaskCurrentInfoVo result = new TaskCurrentInfoVo(); + result.setTaskList(xrTaskList); + result.setCurrentNode(currentNode); + if (currentNode != null) { + result.setCurrentNodeID(currentNode.getId()); + } + return RestResult.ok(result); + } + /** * 打印文书页面 */ diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/entity/vo/TaskCurrentInfoVo.java b/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/entity/vo/TaskCurrentInfoVo.java new file mode 100644 index 0000000..2a54465 --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/seriousillegalPerson/entity/vo/TaskCurrentInfoVo.java @@ -0,0 +1,27 @@ +package com.chinaweal.aiccs.aiccs.seriousillegalPerson.entity.vo; + +import com.chinaweal.aiccs.aiccs.business.entity.XrTaskList; +import com.chinaweal.aiccs.aiccs.business.rules.model.NodeModel; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 当前待办信息VO + * + * @author system + * @since 2026-03-18 + */ +@Data +@ApiModel("当前待办信息") +public class TaskCurrentInfoVo { + + @ApiModelProperty("待办信息") + private XrTaskList taskList; + + @ApiModelProperty("当前节点信息") + private NodeModel currentNode; + + @ApiModelProperty("当前节点ID") + private String currentNodeID; +} \ No newline at end of file diff --git a/src/main/resources/mybatis/mapper/aiccs/seriousillegalPerson/XrSeriousIllegalPersonRemListMapper.xml b/src/main/resources/mybatis/mapper/aiccs/seriousillegalPerson/XrSeriousIllegalPersonRemListMapper.xml index 14d1d7e..5370b6e 100644 --- a/src/main/resources/mybatis/mapper/aiccs/seriousillegalPerson/XrSeriousIllegalPersonRemListMapper.xml +++ b/src/main/resources/mybatis/mapper/aiccs/seriousillegalPerson/XrSeriousIllegalPersonRemListMapper.xml @@ -4,7 +4,9 @@ - select distinct - task.biz_seq_no as bizSeqNo, + SELECT DISTINCT * + FROM ( + SELECT task.biz_seq_no as bizSeqNo, biz.serill_rea as serillRea, biz.inv as inv, biz.cer_type as cerType, @@ -110,6 +111,7 @@ order by biz.update_time desc + ) a