From bdd967acce69d2420d9866789dfcee42c7e77023 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 19 九月 2025 14:10:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java |  380 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 378 insertions(+), 2 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java
index c200d9d..f6309e8 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java
@@ -1,8 +1,34 @@
 package com.ruoyi.web.controller.api;
 
 
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.basic.PageInfo;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.core.domain.entity.TDept;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.framework.web.service.TokenService;
+import com.ruoyi.system.emums.ApprovalTypeEnum;
+import com.ruoyi.system.model.*;
+import com.ruoyi.system.query.ApprovalTodoListQuery;
+import com.ruoyi.system.query.NotificationListQuery;
+import com.ruoyi.system.service.*;
+import com.ruoyi.system.vo.ApprovalFlowNodeListVO;
+import com.ruoyi.system.vo.ApprovalTodoVO;
+import com.ruoyi.system.vo.ContractDetailVO;
+import com.ruoyi.system.vo.system.NotificationVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -13,8 +39,358 @@
  * @since 2025-09-15
  */
 @RestController
+@Api(tags ="待办事项")
 @RequestMapping("/oa-approval-todo")
 public class OaApprovalTodoController {
+    @Resource
+    private OaApprovalTodoService approvalTodoService;
+    @Resource
+    private OaApprovalFlowAuditService approvalFlowAuditService;
+    @Resource
+    private OaApprovalApplicationStorageService approvalApplicationStorageService;
+    @Resource
+    private OaApprovalApplicationPurchaseService approvalApplicationPurchaseService;
+    @Resource
+    private OaApprovalApplicationAssetItemService approvalApplicationAssetItemService;
+    @Resource
+    private TokenService tokenService;
+    @Resource
+    private OaApprovalService approvalService;
 
+    @Resource
+    private OaApprovalApplicationsService approvalApplicationsService;
+    @Resource
+    private OaApprovalApplicationAdvertisementService approvalApplicationAdvertisementService;
+    @Resource
+    private OaApprovalApplicationContactService approvalApplicationContactService;
+    @Resource
+    private OaApprovalApplicationPaymentService approvalApplicationPaymentService;
+    @Resource
+    private OaApprovalApplicationContractService approvalApplicationContractService;
+    @Resource
+    private OaApprovalApplicationMoneyService approvalApplicationMoneyService;
+    @Resource
+    private AssetMainService assetMainService;
+    @Resource
+    private OaApprovalApplicationReimbursementService approvalApplicationReimbursementService;
+    @Resource
+    private OaApprovalApplicationReimbursementItemService approvalApplicationReimbursementItemService;
+    @Resource
+    private OaApprovalFlowNodeService approvalFlowNodeService;
+    @Resource
+    private OaApprovalApplicationAssetService approvalApplicationAssetService;
+    @Resource
+    private ISysUserService sysUserService;
+    @Resource
+    private OaApprovalApplicationDisposeService approvalApplicationDisposeService;
+    @Resource
+    private OaApprovalApplicationChangeService approvalApplicationChangeService;
+    @Resource
+    private OaApprovalApplicationAttendanceService approvalApplicationAttendanceService;
+    @Resource
+    private TDeptService deptService;
+    @Resource
+    private OaApprovalTodoService oaApprovalTodoService;
+    @Resource
+    private OaApprovalFlowService  approvalFlowService;
+    @ApiOperation("测试接口")
+    @PostMapping("/test")
+    public void test() {
+        List<OaApproval> approvals = approvalService.list();
+        List<OaApprovalFlow> list = approvalFlowService.list();
+        List<OaApprovalFlowNode> oaApprovalFlowNodes = new ArrayList<>();
+        for (OaApproval approval : approvals) {
+            int i = 1;
+            for (OaApprovalFlow oaApprovalFlow : list) {
+                OaApprovalFlowNode oaApprovalFlowNode = new OaApprovalFlowNode();
+                oaApprovalFlowNode.setApprovalId(approval.getId());
+                oaApprovalFlowNode.setApprovalFlowId(oaApprovalFlow.getId());
+                oaApprovalFlowNode.setFlowName(oaApprovalFlow.getFlowName());
+                oaApprovalFlowNode.setSortOrder(i);
+                oaApprovalFlowNode.setApprovalType(0);
+                oaApprovalFlowNode.setStatus(true);
+                oaApprovalFlowNode.setSignFlag(true);
+                i++;
+                oaApprovalFlowNodes.add(oaApprovalFlowNode);
+            }
+        }
+        approvalFlowNodeService.saveBatch(oaApprovalFlowNodes);
+    }
+
+
+    @ApiOperation("待办事项列表")
+    @PostMapping("/pageList")
+    public R<PageInfo<ApprovalTodoVO>> pageList(@RequestBody ApprovalTodoListQuery query) {
+
+        List<ApprovalTodoVO> resList = new ArrayList<>();
+        Long userId = tokenService.getLoginUser().getUserId();
+        query.setUserId(userId);
+        PageInfo<ApprovalTodoVO> res = new PageInfo<>(query.getPageNum(), query.getPageSize());
+
+        PageInfo<OaApprovalTodo> pageInfo = approvalTodoService.pageList(query);
+        List<OaApprovalTodo> list = pageInfo.getRecords();
+        if (list.isEmpty()){
+            return R.ok(new PageInfo<>());
+        }
+        res.setTotal(pageInfo.getTotal());
+        List<Integer> applicationIds = list.stream().map(OaApprovalTodo::getApplicationId).collect(Collectors.toList());
+        Map<Integer, OaApprovalApplicationReimbursement> approvalApplicationReimbursementMap = approvalApplicationReimbursementService.lambdaQuery()
+                .in(OaApprovalApplicationReimbursement::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.toMap(OaApprovalApplicationReimbursement::getApprovalApplicationId, e -> e));
+        Map<Integer, OaApprovalApplicationMoney> oaApprovalApplicationMoneyMap = approvalApplicationMoneyService.lambdaQuery()
+                .in(OaApprovalApplicationMoney::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.toMap(OaApprovalApplicationMoney::getApprovalApplicationId, e -> e));
+        Map<Integer, OaApprovalApplicationPayment> approvalApplicationPaymentMap = approvalApplicationPaymentService.lambdaQuery()
+                .in(OaApprovalApplicationPayment::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.toMap(OaApprovalApplicationPayment::getApprovalApplicationId, e -> e));
+        Map<Integer, OaApprovalApplicationStorage> applicationStorageMap = approvalApplicationStorageService.lambdaQuery()
+                .in(OaApprovalApplicationStorage::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.toMap(OaApprovalApplicationStorage::getApprovalApplicationId, e -> e));
+        Map<Integer, OaApprovalApplicationAsset> approvalApplicationAssetMap = approvalApplicationAssetService.lambdaQuery()
+                .in(OaApprovalApplicationAsset::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.toMap(OaApprovalApplicationAsset::getApprovalApplicationId, e -> e));
+        Map<Integer, OaApprovalApplicationDispose> approvalApplicationDisposeMap = approvalApplicationDisposeService.lambdaQuery()
+                .in(OaApprovalApplicationDispose::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.toMap(OaApprovalApplicationDispose::getApprovalApplicationId, e -> e));
+        Map<Integer, OaApprovalApplicationChange> approvalApplicationChangeMap = approvalApplicationChangeService.lambdaQuery()
+                .in(OaApprovalApplicationChange::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.toMap(OaApprovalApplicationChange::getApprovalApplicationId, e -> e));
+        Map<Integer, OaApprovalApplicationPurchase> approvalApplicationPurchaseMap = approvalApplicationPurchaseService.lambdaQuery()
+                .in(OaApprovalApplicationPurchase::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.toMap(OaApprovalApplicationPurchase::getApprovalApplicationId, e -> e));
+        Map<Integer, List<OaApprovalApplicationAssetItem>> approvalApplicationAssetItemMap = approvalApplicationAssetItemService.lambdaQuery()
+                .in(OaApprovalApplicationAssetItem::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.groupingBy(OaApprovalApplicationAssetItem::getApprovalApplicationId));
+        Map<Integer, OaApprovalApplicationAdvertisement> approvalApplicationAdvertisementMap = approvalApplicationAdvertisementService.lambdaQuery()
+                .in(OaApprovalApplicationAdvertisement::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.toMap(OaApprovalApplicationAdvertisement::getApprovalApplicationId, e -> e));
+        Map<Integer, OaApprovalApplicationAttendance> applicationAttendanceMap = approvalApplicationAttendanceService.lambdaQuery()
+                .in(OaApprovalApplicationAttendance::getApprovalApplicationId, applicationIds).list()
+                .stream().collect(Collectors.toMap(OaApprovalApplicationAttendance::getApprovalApplicationId, e -> e));
+
+        Map<Integer, AssetMain> assetMainMap = assetMainService.list().stream().collect(Collectors.toMap(AssetMain::getId, e -> e));
+        Map<Integer, OaApprovalTodo> approvalTodoMap = list.stream().collect(Collectors.toMap(OaApprovalTodo::getApplicationId, e -> e));
+        Map<Long, SysUser> userMap = sysUserService.selectAllList().stream().collect(Collectors.toMap(SysUser::getUserId, e -> e));
+        Map<Integer, TDept> deptMap = deptService.list().stream().collect(Collectors.toMap(TDept::getId, e -> e));
+        Map<Integer, OaApproval> approvalMap = approvalService.list().stream().collect(Collectors.toMap(OaApproval::getId, e -> e));
+        List<OaApprovalApplications> approvalApplications = approvalApplicationsService.lambdaQuery().in(OaApprovalApplications::getId, applicationIds).list();
+        for (OaApprovalApplications approvalApplication : approvalApplications) {
+            ApprovalTodoVO approvalTodoVO = new ApprovalTodoVO();
+            approvalTodoVO.setApprovalCategory(approvalMap.get(approvalApplication.getApprovalId()).getApprovalCategory());
+            switch (approvalTodoVO.getApprovalCategory()){
+                case 1:
+                case 2:
+                case 3:
+                case 4:
+                default:
+                    OaApprovalApplicationAttendance oaApprovalApplicationAttendance = applicationAttendanceMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationAttendance!=null){
+                        approvalTodoVO.setStartTime(oaApprovalApplicationAttendance.getStartTime());
+                        approvalTodoVO.setEndTime(oaApprovalApplicationAttendance.getEndTime());
+                        approvalTodoVO.setDuration(oaApprovalApplicationAttendance.getDuration());
+                    }
+                    break;
+            }
+            SysUser sysUser = userMap.get(approvalApplication.getApplicantUserId().longValue());
+            if (sysUser!=null){
+                approvalTodoVO.setApplyUserName(sysUser.getUserName());
+                TDept tDept = deptMap.get(Integer.parseInt(sysUser.getDeptId()));
+                if (tDept!=null){
+                    approvalTodoVO.setApplyDeptName(tDept.getDeptName());
+                }
+            }
+            approvalTodoVO.setApplicationCode(approvalApplication.getApplicationCode());
+            approvalTodoVO.setCreateTime(approvalApplication.getCreateTime());
+            OaApprovalTodo oaApprovalTodo = approvalTodoMap.get(approvalApplication.getId());
+            approvalTodoVO.setId(oaApprovalTodo.getId());
+            approvalTodoVO.setApplicationId(approvalApplication.getId());
+
+            switch (approvalTodoVO.getApprovalCategory()){
+                case 5:
+                    OaApprovalApplicationPurchase oaApprovalApplicationPurchase = approvalApplicationPurchaseMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationPurchase!=null){
+                        approvalTodoVO.setAmount(oaApprovalApplicationPurchase.getTotalAmount());
+                    }
+                    break;
+                case 6:
+                    OaApprovalApplicationStorage oaApprovalApplicationStorage = applicationStorageMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationStorage!=null){
+                        approvalTodoVO.setStorageType(oaApprovalApplicationStorage.getStorageType());
+                    }
+                    break;
+                case 7:
+                    StringBuilder temp = new StringBuilder();
+                    List<OaApprovalApplicationAssetItem> oaApprovalApplicationAssetItems = approvalApplicationAssetItemMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationAssetItems!=null){
+                        for (OaApprovalApplicationAssetItem oaApprovalApplicationAssetItem : oaApprovalApplicationAssetItems) {
+                            AssetMain assetMain = assetMainMap.get(oaApprovalApplicationAssetItem.getAssetMainId());
+                            if (assetMain!=null){
+                                temp.append(assetMain.getAssetName()).append(",");
+                            }
+                        }
+                        // 去除最后一位字符
+                        if (StringUtils.hasLength(temp.toString())){
+                            approvalTodoVO.setAssetName(temp.substring(0, temp.length() - 1));
+                        }else{
+                            approvalTodoVO.setAssetName("");
+                        }
+                    }
+                    break;
+                case 8:
+                    OaApprovalApplicationAsset oaApprovalApplicationAssetOut = approvalApplicationAssetMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationAssetOut!=null){
+                        approvalTodoVO.setOperateTime(oaApprovalApplicationAssetOut.getOperateTime());
+                    }
+                    break;
+                case 9:
+                    OaApprovalApplicationAsset oaApprovalApplicationAssetBack = approvalApplicationAssetMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationAssetBack!=null){
+                        approvalTodoVO.setOperateTime(oaApprovalApplicationAssetBack.getExpectReturnDate());
+                    }
+                    break;
+                case 10:
+                    OaApprovalApplicationDispose oaApprovalApplicationDispose = approvalApplicationDisposeMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationDispose!=null){
+                        approvalTodoVO.setDisposeType(oaApprovalApplicationDispose.getDisposeType());
+                    }
+                    break;
+                case 11:
+                    OaApprovalApplicationChange oaApprovalApplicationChange = approvalApplicationChangeMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationChange!=null){
+                        Integer ownershipDeptId = oaApprovalApplicationChange.getOwnershipDeptId();
+                        TDept tDept = deptMap.get(ownershipDeptId);
+                        if (tDept!=null){
+                            approvalTodoVO.setOwnershipDeptName(tDept.getDeptName());
+                        }
+                    }
+                    break;
+                case 12:
+                    OaApprovalApplicationReimbursement oaApprovalApplicationReimbursement = approvalApplicationReimbursementMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationReimbursement!=null){
+                        approvalTodoVO.setAmount(oaApprovalApplicationReimbursement.getReimbursementAmount());
+                    }
+                    break;
+                case 13:
+                    OaApprovalApplicationMoney oaApprovalApplicationMoney = oaApprovalApplicationMoneyMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationMoney!=null){
+                        approvalTodoVO.setAmount(oaApprovalApplicationMoney.getApplyAmount());
+                        approvalTodoVO.setDescription(oaApprovalApplicationMoney.getDescription());
+
+                    }
+                    break;
+                case 15:
+                    OaApprovalApplicationPayment oaApprovalApplicationPayment = approvalApplicationPaymentMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationPayment!=null){
+                        approvalTodoVO.setAmount(oaApprovalApplicationPayment.getApplyAmount());
+                        approvalTodoVO.setDescription(approvalApplication.getApplicationReason());
+
+                    }
+                    break;
+                case 17:
+                    OaApprovalApplicationAdvertisement oaApprovalApplicationAdvertisement = approvalApplicationAdvertisementMap.get(approvalApplication.getId());
+                    if (oaApprovalApplicationAdvertisement!=null){
+                        approvalTodoVO.setContent(oaApprovalApplicationAdvertisement.getContent());
+                        approvalTodoVO.setAmount(oaApprovalApplicationAdvertisement.getTotalAmount());
+                    }
+                    break;
+            }
+
+            resList.add(approvalTodoVO);
+        }
+        res.setRecords(resList);
+        return R.ok(res);
+    }
+
+
+    @ApiOperation(value = "合同文件审批详情")
+    @GetMapping(value = "/detailContract")
+    public R<ContractDetailVO> detailContract(@ApiParam("待办列表id") Integer id) {
+        OaApprovalTodo approvalTodo = approvalTodoService.getById(id);
+        OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId());
+        OaApprovalApplicationContract approvalApplicationContract = approvalApplicationContractService.lambdaQuery()
+                .eq(OaApprovalApplicationContract::getApprovalApplicationId, approvalApplications.getId())
+                .last("limit 1").one();
+        List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId())
+                .orderByAsc(OaApprovalFlowAudit::getSortOrder)
+                .list();
+        ContractDetailVO res = new ContractDetailVO();
+        List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery()
+                .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.CONTRACT.getCode())
+                .orderByAsc(OaApprovalFlowNode::getSortOrder)
+                .eq(OaApprovalFlowNode::getStatus, 1).list();
+        List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(approvalApplications, res, approvalFlowAudits,approvalFlowNodes);
+        res.setApprovalFlowNodeListVOS(flowNodeList);
+        res.setApprovalApplicationId(approvalApplications.getId());
+        res.setContractUrl(approvalApplicationContract.getContractUrl());
+        res.setApplicationReason(approvalApplications.getApplicationReason());
+        res.setAttachmentUrl(approvalApplications.getAttachmentUrl());
+        return R.ok(res);
+    }
+    @ApiOperation(value = "进度款支付审批详情")
+    @GetMapping(value = "/detailPayment")
+    public R<ContractDetailVO> detailPayment(@ApiParam("待办列表id") Integer id) {
+        OaApprovalTodo approvalTodo = approvalTodoService.getById(id);
+        OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId());
+        OaApprovalApplicationContract approvalApplicationContract = approvalApplicationContractService.lambdaQuery()
+                .eq(OaApprovalApplicationContract::getApprovalApplicationId, approvalApplications.getId())
+                .last("limit 1").one();
+        List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId())
+                .orderByAsc(OaApprovalFlowAudit::getSortOrder)
+                .list();
+        ContractDetailVO res = new ContractDetailVO();
+        List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery()
+                .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.PAYMENT.getCode())
+                .orderByAsc(OaApprovalFlowNode::getSortOrder)
+                .eq(OaApprovalFlowNode::getStatus, 1).list();
+        List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(approvalApplications, res, approvalFlowAudits,approvalFlowNodes);
+        res.setApprovalFlowNodeListVOS(flowNodeList);
+        res.setApprovalApplicationId(approvalApplications.getId());
+        res.setContractUrl(approvalApplicationContract.getContractUrl());
+        res.setApplicationReason(approvalApplications.getApplicationReason());
+        res.setAttachmentUrl(approvalApplications.getAttachmentUrl());
+        return R.ok(res);
+    }
+    private List<ApprovalFlowNodeListVO> getFlowNodeList(OaApprovalApplications approvalApplications, ContractDetailVO res, List<OaApprovalFlowAudit> approvalFlowAudits
+    ,List<OaApprovalFlowNode> approvalFlowNodes) {
+        List<ApprovalFlowNodeListVO> approvalFlowNodeListVOS = new ArrayList<>();
+        Map<Integer, OaApprovalFlowAudit> approvalFlowAuditMap = approvalFlowAudits.stream().collect(Collectors.toMap(OaApprovalFlowAudit::getFlowNodeId, e -> e));
+
+        ApprovalFlowNodeListVO approvalFlowNodeListVO = new ApprovalFlowNodeListVO();
+        approvalFlowNodeListVO.setFlowName("发起");
+        SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue());
+        if (sysUser!=null){
+            approvalFlowNodeListVO.setUserName(sysUser.getUserName());
+            res.setUserName(sysUser.getUserName());
+            TDept dept = deptService.getById(sysUser.getDeptId());
+            if (dept!=null){
+                res.setDeptName(dept.getDeptName());
+            }
+        }
+        approvalFlowNodeListVOS.add(approvalFlowNodeListVO);
+        for (OaApprovalFlowNode approvalFlowNode : approvalFlowNodes) {
+            ApprovalFlowNodeListVO approvalFlowNodeVO = new ApprovalFlowNodeListVO();
+
+            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);
+
+        }
+        for (OaApprovalFlowAudit approvalFlowAudit : approvalFlowAudits) {
+            ApprovalFlowNodeListVO approvalFlowNodeVO = new ApprovalFlowNodeListVO();
+            approvalFlowNodeVO.setFlowName(approvalFlowAudit.getFlowName());
+            approvalFlowNodeVO.setUserName(approvalFlowAudit.getUserName());
+            approvalFlowNodeVO.setSignPicUrl(approvalFlowAudit.getSignPicUrl());
+            approvalFlowNodeVO.setApprovalStatus(approvalFlowAudit.getApprovalStatus());
+            approvalFlowNodeListVOS.add(approvalFlowNodeVO);
+        }
+        return approvalFlowNodeListVOS;
+    }
 }
 

--
Gitblit v1.7.1