From 853c8ba11072eae475273864e61733ae7294f004 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期四, 25 九月 2025 11:55:44 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java | 57 ++++++++++++++++++++++++++------------------------------- 1 files changed, 26 insertions(+), 31 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java index c973ef5..cd68061 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java @@ -84,6 +84,8 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; +import lombok.extern.slf4j.Slf4j; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -108,7 +110,8 @@ */ @RestController @RequestMapping("/oa-approval-flow-audit") -@Api(tags = "我审批的/我发起的/通用审批接口") +@Api(tags = "我审批的-我发起的-通用审批接口") +@Slf4j public class OaApprovalFlowAuditController { @Resource private OaApprovalTodoService approvalTodoService; @@ -243,7 +246,7 @@ } SysUser sysUser = userMap.get(approvalApplication.getApplicantUserId().longValue()); if (sysUser!=null){ - approvalTodoVO.setApplyUserName(sysUser.getUserName()); + approvalTodoVO.setApplyUserName(sysUser.getNickName()); TDept tDept = deptMap.get(Integer.parseInt(sysUser.getDeptId())); if (tDept!=null){ approvalTodoVO.setApplyDeptName(tDept.getDeptName()); @@ -421,7 +424,7 @@ } SysUser sysUser = userMap.get(approvalApplication.getApplicantUserId().longValue()); if (sysUser!=null){ - approvalTodoVO.setApplyUserName(sysUser.getUserName()); + approvalTodoVO.setApplyUserName(sysUser.getNickName()); TDept tDept = deptMap.get(Integer.parseInt(sysUser.getDeptId())); if (tDept!=null){ approvalTodoVO.setApplyDeptName(tDept.getDeptName()); @@ -526,25 +529,13 @@ res.setRecords(resList); return R.ok(res); } - OaApprovalFlowAudit approvalFlowAudit = approvalFlowAuditMap.get(approvalFlowNode.getId()); - if (approvalFlowAudit!=null){ - approvalFlowNodeVO.setFlowName(approvalFlowAudit.getFlowName()); - approvalFlowNodeVO.setUserName(approvalFlowAudit.getUserName()); - approvalFlowNodeVO.setSignPicUrl(approvalFlowAudit.getSignPicUrl()); - approvalFlowNodeVO.setApprovalStatus(approvalFlowAudit.getApprovalStatus()); - }else{ - approvalFlowNodeVO.setFlowName(approvalFlowNode.getFlowName()); - } - approvalFlowNodeListVOS.add(approvalFlowNodeVO); - } - return approvalFlowNodeListVOS; - } @Log(title = "审批-通用审批接口", businessType = BusinessType.INSERT) @ApiOperation(value = "通用审批接口") @PostMapping(value = "/audit") + @Transactional public R addLeave(@RequestBody AuditDTO dto) { OaApprovalApplications approvalApplications = approvalApplicationsService.getById(dto.getApprovalApplicationId()); @@ -561,14 +552,14 @@ approvalTodoService.updateById(approvalTodo); OaApproval approval = approvalService.getById(approvalApplications.getApprovalId()); - if (dto.getApprovalStatus()==0){ + if (dto.getApprovalStatus() == 0) { // 中断审批流程 approvalApplications.setApprovalStatus(3); approvalApplicationsService.updateById(approvalApplications); // 删除除当前审批人该申请单的未处理的所有待办 approvalTodoService.remove(new LambdaQueryWrapper<OaApprovalTodo>() .eq(OaApprovalTodo::getApplicationId, approvalApplications.getId()) - .eq(OaApprovalTodo::getStatus,0)); + .eq(OaApprovalTodo::getStatus, 0)); } OaApprovalFlowNode oaApprovalFlowNode = approvalFlowNodeService.getById(currentFlowNodeId); OaApprovalFlowAudit approvalFlowAudit = new OaApprovalFlowAudit(); @@ -583,20 +574,21 @@ approvalFlowAudit.setReason(dto.getReason()); approvalFlowAuditService.save(approvalFlowAudit); List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery().eq(OaApprovalFlowNode::getApprovalId, approval.getId()) + .eq(OaApprovalFlowNode::getStatus,1) .orderByAsc(OaApprovalFlowNode::getSortOrder).list(); - if (dto.getApprovalStatus()==1){ + if (dto.getApprovalStatus() == 1) { // 判断当前是否处于最后一个节点 - if(approvalApplications.getCurrentFlowNodeId().equals(approvalFlowNodes.get(approvalFlowNodes.size()-1).getId())){ + if (approvalApplications.getCurrentFlowNodeId().equals(approvalFlowNodes.get(approvalFlowNodes.size() - 1).getId())) { // 审批通过 审批流程结束 approvalApplications.setApprovalStatus(2); approvalApplicationsService.updateById(approvalApplications); - if (approval.getApprovalCategory()==10||approval.getApprovalCategory()==7 - ||approval.getApprovalCategory()==8||approval.getApprovalCategory()==9){ + if (approval.getApprovalCategory() == 10 || approval.getApprovalCategory() == 7 + || approval.getApprovalCategory() == 8 || approval.getApprovalCategory() == 9) { List<OaApprovalApplicationAssetItem> approvalApplicationAssetItems = approvalApplicationAssetItemService.lambdaQuery() .eq(OaApprovalApplicationAssetItem::getApprovalApplicationId, approvalApplications.getId()).list(); List<Integer> AssetMainIds = approvalApplicationAssetItems.stream().map(OaApprovalApplicationAssetItem::getAssetMainId).collect(Collectors.toList()); List<AssetMain> assetMains = assetMainService.lambdaQuery().in(AssetMain::getId, AssetMainIds).list(); - switch (approval.getApprovalCategory()){ + switch (approval.getApprovalCategory()) { case 10: assetMains.forEach(assetMain -> { assetMain.setDisposed(1); @@ -619,21 +611,24 @@ if (approval.getApprovalCategory().equals(ApprovalTypeEnum.IN_STOCK.getCode())) { assetMainService.saveAssetByApprovalApplicationId(approvalApplications.getId()); } - }else{ + } else { + log.info("不为最后一个审批节点"); // 生成下一个节点的待办事项 for (int i = 0; i < approvalFlowNodes.size(); i++) { - if(approvalApplications.getCurrentFlowNodeId() - .equals(approvalFlowNodes.get(i).getId())){ - approvalApplications.setCurrentFlowNodeId(approvalFlowNodes.get(i+1).getId()); - OaApprovalFlowNode oaApprovalFlowNode1 = approvalFlowNodeService.getById(approvalFlowNodes.get(i + 1).getId()); + if (approvalApplications.getCurrentFlowNodeId().equals(approvalFlowNodes.get(i).getId())) { + log.info("匹配到审批流程,进入下一节点,当前节点id:{}", approvalFlowNodes.get(i)); + // 申请单审批流程修改为下一节点 + approvalApplications.setCurrentFlowNodeId(approvalFlowNodes.get(i + 1).getId()); + approvalApplicationsService.updateById(approvalApplications); + OaApprovalFlowNode oaApprovalFlowNode1 = approvalFlowNodes.get(i + 1); approvalTodoService.createApprovalTodos(approvalApplications.getId(), approvalApplications.getApplicationCode(), oaApprovalFlowNode1, approvalApplications.getDeptId()); + break; } } } - - + } return R.ok(); + } } - -- Gitblit v1.7.1