mitao
昨天 291a72bf35e2d39b816abc0ebf085cfa9da3ee06
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java
@@ -526,19 +526,6 @@
        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;
    }
@@ -561,14 +548,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();
@@ -584,19 +571,19 @@
        approvalFlowAuditService.save(approvalFlowAudit);
        List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery().eq(OaApprovalFlowNode::getApprovalId, approval.getId())
                .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 +606,20 @@
                if (approval.getApprovalCategory().equals(ApprovalTypeEnum.IN_STOCK.getCode())) {
                    assetMainService.saveAssetByApprovalApplicationId(approvalApplications.getId());
                }
            }else{
            } else {
                // 生成下一个节点的待办事项
                for (int i = 0; i < approvalFlowNodes.size(); i++) {
                    if(approvalApplications.getCurrentFlowNodeId()
                            .equals(approvalFlowNodes.get(i).getId())){
                        approvalApplications.setCurrentFlowNodeId(approvalFlowNodes.get(i+1).getId());
                    if (approvalApplications.getCurrentFlowNodeId()
                            .equals(approvalFlowNodes.get(i).getId())) {
                        approvalApplications.setCurrentFlowNodeId(approvalFlowNodes.get(i + 1).getId());
                        OaApprovalFlowNode oaApprovalFlowNode1 = approvalFlowNodeService.getById(approvalFlowNodes.get(i + 1).getId());
                        approvalTodoService.createApprovalTodos(approvalApplications.getId(),
                                approvalApplications.getApplicationCode(), oaApprovalFlowNode1, approvalApplications.getDeptId());
                    }
                }
            }
        }
        return R.ok();
    }
}