From 88f2a615a6c547adfd992334f42d7cd4aea8d55b Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期六, 11 十月 2025 11:28:12 +0800
Subject: [PATCH] 资产报修

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java |   75 ++++++++++++++++++++++++++++++++-----
 1 files changed, 64 insertions(+), 11 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 a569beb..5a98d3a 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
@@ -94,9 +94,7 @@
     private OaApprovalFlowService  approvalFlowService;
 
 
-    public static void main(String[] args) {
 
-    }
     @ApiOperation("待办事项列表")
     @PostMapping("/pageList")
     public R<PageInfo<ApprovalTodoVO>> pageList(@RequestBody ApprovalTodoListQuery query) {
@@ -154,6 +152,7 @@
         List<OaApprovalApplications> approvalApplications = approvalApplicationsService.lambdaQuery().in(OaApprovalApplications::getId, applicationIds).list();
         for (OaApprovalApplications approvalApplication : approvalApplications) {
             ApprovalTodoVO approvalTodoVO = new ApprovalTodoVO();
+            approvalTodoVO.setApplicationReason(approvalApplication.getApplicationReason());
             approvalTodoVO.setApprovalCategory(approvalMap.get(approvalApplication.getApprovalId()).getApprovalCategory());
             switch (approvalTodoVO.getApprovalCategory()){
                 case 1:
@@ -259,14 +258,14 @@
                 case 12:
                     OaApprovalApplicationReimbursement oaApprovalApplicationReimbursement = approvalApplicationReimbursementMap.get(approvalApplication.getId());
                     if (oaApprovalApplicationReimbursement!=null){
-
+                        approvalTodoVO.setType(oaApprovalApplicationReimbursement.getType());
                         approvalTodoVO.setAmount(oaApprovalApplicationReimbursement.getReimbursementAmount());
                     }
                     break;
                 case 13:
                     OaApprovalApplicationMoney oaApprovalApplicationMoney = oaApprovalApplicationMoneyMap.get(approvalApplication.getId());
                     if (oaApprovalApplicationMoney!=null){
-
+                        approvalTodoVO.setProjectName(oaApprovalApplicationMoney.getProjectName());
                         approvalTodoVO.setAmount(oaApprovalApplicationMoney.getApplyAmount());
                         approvalTodoVO.setDescription(oaApprovalApplicationMoney.getDescription());
 
@@ -275,7 +274,8 @@
                 case 15:
                     OaApprovalApplicationPayment oaApprovalApplicationPayment = approvalApplicationPaymentMap.get(approvalApplication.getId());
                     if (oaApprovalApplicationPayment!=null){
-
+                        // todo 当前阶段没有项目id 后续完善
+                        approvalTodoVO.setProjectName("项目名称");
                         approvalTodoVO.setAmount(oaApprovalApplicationPayment.getApplyAmount());
                         approvalTodoVO.setDescription(approvalApplication.getApplicationReason());
 
@@ -330,8 +330,25 @@
         res.setContractUrl(approvalApplicationContract.getContractUrl());
         res.setApplicationReason(approvalApplications.getApplicationReason());
         res.setAttachmentUrl(approvalApplications.getAttachmentUrl());
+        res.setIsAudit(extracted(id, approvalApplications));
         return R.ok(res);
     }
+
+    private Boolean extracted(Integer id, OaApprovalApplications approvalApplications) {
+        Integer currentFlowNodeId = approvalApplications.getCurrentFlowNodeId();
+        Long userId = tokenService.getLoginUser().getUserId();
+        OaApprovalTodo approvalTodo = approvalTodoService.lambdaQuery().eq(OaApprovalTodo::getApplicationId, id)
+                .eq(OaApprovalTodo::getFlowNodeId, currentFlowNodeId)
+                .eq(OaApprovalTodo::getUserId, userId)
+                .eq(OaApprovalTodo::getStatus, 0).last("limit 1")
+                .one();
+        if (approvalTodo!=null){
+            return true;
+        }else{
+            return false;
+        }
+    }
+
     @ApiOperation(value = "进度款支付审批详情")
     @GetMapping(value = "/detailPayment")
     public R<PaymentDetailVO> detailPayment(@ApiParam("申请单d")Integer id) {
@@ -359,6 +376,7 @@
             }
         }
         List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes);
+        res.setContractAmount(approvalApplicationPayment.getContractAmount());
         res.setApprovalFlowNodeListVOS(flowNodeList);
         res.setApprovalApplicationId(approvalApplications.getId());
         res.setApplicationReason(approvalApplications.getApplicationReason());
@@ -366,6 +384,8 @@
         // todo 三阶段设计项目表之后完善
         res.setProjectName("本期还未涉及到项目");
         res.setApplyAmount(approvalApplicationPayment.getApplyAmount());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "请假申请审批详情")
@@ -403,6 +423,8 @@
         res.setStartTime(approvalApplicationAttendance.getStartTime());
         res.setEndTime(approvalApplicationAttendance.getEndTime());
         res.setDuration(approvalApplicationAttendance.getDuration());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "销假审批详情")
@@ -447,6 +469,7 @@
         res.setEndTimeLeave(leaveApplicationAttendance.getEndTime());
         res.setDurationLeave(leaveApplicationAttendance.getDuration());
         res.setDuration(approvalApplicationAttendance.getDuration());
+        res.setIsAudit(extracted(id, approvalApplications));
         return R.ok(res);
     }
     @ApiOperation(value = "外出申请审批详情")
@@ -484,6 +507,8 @@
         res.setEndTime(approvalApplicationAttendance.getEndTime());
         res.setDuration(approvalApplicationAttendance.getDuration());
         res.setAddress(approvalApplicationAttendance.getAddress());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "出差审批详情")
@@ -523,6 +548,8 @@
         res.setDuration(approvalApplicationAttendance.getDuration());
         res.setAddress(approvalApplicationAttendance.getAddress());
         res.setProjectName(approvalApplicationAttendance.getProjectName());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "采购审批详情-采购物品清单")
@@ -530,6 +557,7 @@
     public R<PageInfo<PurchaseListVO>> detailPurchaseList(@RequestBody ApprovalDetailQuery query) {
         OaApprovalApplications approvalApplications = approvalApplicationsService.getById(query.getId());
         query.setId(approvalApplications.getId());
+        query.setApprovalApplicationId(approvalApplications.getId());
         PageInfo<PurchaseListVO> items = approvalApplicationPurchaseItemService.pageList(query);
         return R.ok(items);
     }
@@ -571,6 +599,8 @@
         if (assetType!=null){
             res.setAssetTypeName(assetType.getTypeName());
         }
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "物品领用-领用资产列表")
@@ -578,6 +608,7 @@
     public R<PageInfo<GrabListVO>> detailGrabList(@RequestBody ApprovalDetailQuery query) {
         OaApprovalApplications approvalApplications = approvalApplicationsService.getById(query.getId());
         query.setId(approvalApplications.getId());
+        query.setApprovalApplicationId(approvalApplications.getId());
         PageInfo<GrabListVO> items = approvalApplicationAssetItemService.pageList(query);
         return R.ok(items);
     }
@@ -619,6 +650,8 @@
         if (assetType!=null){
             res.setAssetTypeName(assetType.getTypeName());
         }
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "资产入库-入库资产列表")
@@ -626,13 +659,13 @@
     public R<PageInfo<StorageListVO>> detailInStockList(@RequestBody ApprovalDetailQuery query) {
         OaApprovalApplications approvalApplications = approvalApplicationsService.getById(query.getId());
         query.setId(approvalApplications.getId());
+        query.setApprovalApplicationId(approvalApplications.getId());
         PageInfo<StorageListVO> items = approvalApplicationStorageService.pageList(query);
         return R.ok(items);
     }
     @ApiOperation(value = "资产入库审批详情")
     @GetMapping(value = "/detailInStock")
     public R<StorageDetailVO> detailInStock(@ApiParam("申请单d")Integer id) {
-        
         OaApprovalApplications approvalApplications = approvalApplicationsService.getById(id);
         OaApprovalApplicationStorage approvalApplicationStorage = approvalApplicationStorageService.lambdaQuery()
                 .eq(OaApprovalApplicationStorage::getApprovalApplicationId, approvalApplications.getId())
@@ -658,6 +691,8 @@
         res.setStorageType(approvalApplicationStorage.getStorageType());
         res.setStorageTime(approvalApplicationStorage.getStorageTime());
         res.setRemarks(approvalApplicationStorage.getTitle());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "物品借用-借用资产列表")
@@ -665,6 +700,7 @@
     public R<PageInfo<GrabListVO>> detailBurrowList(@RequestBody ApprovalDetailQuery query) {
         OaApprovalApplications approvalApplications = approvalApplicationsService.getById(query.getId());
         query.setId(approvalApplications.getId());
+        query.setApprovalApplicationId(approvalApplications.getId());
         PageInfo<GrabListVO> items = approvalApplicationAssetItemService.pageList(query);
         return R.ok(items);
     }
@@ -701,6 +737,8 @@
         res.setAttachmentUrl(approvalApplications.getAttachmentUrl());
         res.setOperateTime(approvalApplicationAsset.getOperateTime());
         res.setExpectReturnDate(approvalApplicationAsset.getExpectReturnDate());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "物品借用归还-归还资产列表")
@@ -708,6 +746,7 @@
     public R<PageInfo<GrabListVO>> detailBackList(@RequestBody ApprovalDetailQuery query) {
         OaApprovalApplications approvalApplications = approvalApplicationsService.getById(query.getId());
         query.setId(approvalApplications.getId());
+        query.setApprovalApplicationId(approvalApplications.getId());
         PageInfo<GrabListVO> items = approvalApplicationAssetItemService.pageList(query);
         return R.ok(items);
     }
@@ -747,6 +786,8 @@
         res.setExpectReturnDate(approvalApplicationAssetBack.getExpectReturnDate());
         res.setTitle(approvalApplicationAssetBack.getTitle());
         res.setApplicationCode(approvalApplications.getApplicationCode());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "资产处置-处置资产列表")
@@ -755,6 +796,7 @@
         
         OaApprovalApplications approvalApplications = approvalApplicationsService.getById(query.getId());
         query.setId(approvalApplications.getId());
+        query.setApprovalApplicationId(approvalApplications.getId());
         PageInfo<GrabListVO> items = approvalApplicationAssetItemService.pageList(query);
         return R.ok(items);
     }
@@ -798,6 +840,8 @@
         }
         res.setDisposeType(approvalApplicationDispose.getDisposeType());
         res.setDisposeTotalAmount(approvalApplicationDispose.getDisposeTotalAmount());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
 
@@ -806,6 +850,7 @@
     public R<PageInfo<GrabListVO>> detailChangeList(@RequestBody ApprovalDetailQuery query) {
         OaApprovalApplications approvalApplications = approvalApplicationsService.getById(query.getId());
         query.setId(approvalApplications.getId());
+        query.setApprovalApplicationId(approvalApplications.getId());
         PageInfo<GrabListVO> items = approvalApplicationAssetItemService.pageList(query);
         return R.ok(items);
     }
@@ -853,6 +898,8 @@
         // todo 三阶段完善 仓库名称
         res.setWarehouseName("三阶段完善");
         res.setAddress(approvalApplicationChange.getAddress());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "报销申请审批详情")
@@ -893,6 +940,8 @@
 
         res.setType(approvalApplicationReimbursement.getType());
         res.setApprovalApplicationReimbursementItems(oaApprovalApplicationReimbursementItems);
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "款项申请审批详情")
@@ -933,6 +982,8 @@
         res.setPayee(approvalApplicationMoney.getPayee());
         res.setPayeeContact(approvalApplicationMoney.getPayeeContact());
         res.setPayeeAccount(approvalApplicationMoney.getPayeeAccount());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "内部联系单审批详情")
@@ -940,8 +991,8 @@
     public R<ContactDetailVO> detailContact(@ApiParam("申请单d")Integer id) {
         
         OaApprovalApplications approvalApplications = approvalApplicationsService.getById(id);
-        OaApprovalApplicationMoney approvalApplicationMoney = approvalApplicationMoneyService.lambdaQuery()
-                .eq(OaApprovalApplicationMoney::getApprovalApplicationId, approvalApplications.getId())
+        OaApprovalApplicationContact approvalApplicationContact = approvalApplicationContactService.lambdaQuery()
+                .eq(OaApprovalApplicationContact::getApprovalApplicationId, approvalApplications.getId())
                 .last("limit 1").one();
 
         List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId())
@@ -967,14 +1018,14 @@
         res.setApprovalApplicationId(approvalApplications.getId());
         res.setApplicationReason(approvalApplications.getApplicationReason());
         res.setAttachmentUrl(approvalApplications.getAttachmentUrl());
-        res.setDescription(approvalApplicationMoney.getDescription());
+        res.setDescription(approvalApplicationContact.getDescription());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     @ApiOperation(value = "广告制作审批详情")
     @GetMapping(value = "/detailAdvertisement")
     public R<AdvertisementDetailVO> detailAdvertisement(@ApiParam("申请单d")Integer id) {
-
-        
         OaApprovalApplications approvalApplications = approvalApplicationsService.getById(id);
         OaApprovalApplicationAdvertisement applicationAdvertisement = approvalApplicationAdvertisementService.lambdaQuery()
                 .eq(OaApprovalApplicationAdvertisement::getApprovalApplicationId, approvalApplications.getId())
@@ -1010,6 +1061,8 @@
         res.setNumber(applicationAdvertisement.getNumber());
         res.setTotalAmount(applicationAdvertisement.getTotalAmount());
         res.setSpec(applicationAdvertisement.getSpec());
+        res.setIsAudit(extracted(id, approvalApplications));
+
         return R.ok(res);
     }
     private List<ApprovalFlowNodeListVO> getFlowNodeList(SysUser sysUser, List<OaApprovalFlowAudit> approvalFlowAudits

--
Gitblit v1.7.1