From c758c4e55d74a34902dac5752ff4f160118b19bc Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期二, 23 九月 2025 14:09:36 +0800
Subject: [PATCH] 资产借用接口

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationStorageServiceImpl.java |   69 +++++++++++++++++++++-------------
 1 files changed, 42 insertions(+), 27 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationStorageServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationStorageServiceImpl.java
index 5c9f687..7dfc6c6 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationStorageServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationStorageServiceImpl.java
@@ -523,14 +523,15 @@
     }
 
     @Override
-    public OaApprovalApplicationStorageGeneralDetailVO getGeneralDetail(Integer storageId) {
-        OaApprovalApplicationStorage storage = this.getById(storageId);
-        if (storage == null) {
-            throw new ServiceException("入库申请不存在");
-        }
-        OaApprovalApplications app = oaApprovalApplicationsService.getById(storage.getApprovalApplicationId());
+    public OaApprovalApplicationStorageGeneralDetailVO getGeneralDetail(Integer approvalApplicationId) {
+        OaApprovalApplications app = oaApprovalApplicationsService.getById(approvalApplicationId);
         if (app == null) {
             throw new ServiceException("审批主记录不存在");
+        }
+        OaApprovalApplicationStorage storage = this.lambdaQuery()
+                .eq(OaApprovalApplicationStorage::getApprovalApplicationId, approvalApplicationId).one();
+        if (storage == null) {
+            throw new ServiceException("入库申请不存在");
         }
 
         OaApprovalApplicationStorageGeneralDetailVO vo = new OaApprovalApplicationStorageGeneralDetailVO();
@@ -549,18 +550,18 @@
             // 批量查询使用部门
             List<Integer> useDeptIds = mains.stream().map(OaApprovalApplicationStorageAsset::getUseDeptId)
                     .filter(Objects::nonNull).distinct().collect(Collectors.toList());
-            Map<Integer, TDept> useDeptMap = ownerIds.isEmpty() ? Collections.emptyMap()
+            Map<Integer, TDept> useDeptMap = useDeptIds.isEmpty() ? Collections.emptyMap()
                     : tDeptService.listByIds(useDeptIds).stream().collect(Collectors.toMap(TDept::getId, d -> d));
             // 批量查询仓库
             List<Integer> warehouseIds = mains.stream().map(OaApprovalApplicationStorageAsset::getWarehouseId)
                     .filter(Objects::nonNull).distinct().collect(Collectors.toList());
             Map<Integer, AssetWarehouse> warehouseMap = warehouseIds.isEmpty() ? Collections.emptyMap()
-                    : assetWarehouseService.listByIds(useDeptIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d));
+                    : assetWarehouseService.listByIds(warehouseIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d));
             List<OaApprovalApplicationStorageGeneralDetailVO.GeneralAssetItemVO> items = mains.stream().map(m -> {
                 OaApprovalApplicationStorageGeneralDetailVO.GeneralAssetItemVO item = BeanUtil.copyProperties(m, OaApprovalApplicationStorageGeneralDetailVO.GeneralAssetItemVO.class);
                 if (m.getOwnershipDeptId() != null) {
                     TDept dept = ownerDeptMap.get(m.getOwnershipDeptId());
-                    item.setOwnerShipDeptName(dept != null ? dept.getDeptName() : null);
+                    item.setOwnershipDeptName(dept != null ? dept.getDeptName() : null);
                 }
                 if (m.getAddressType().equals(0) && m.getUseDeptId() != null) {
                     TDept dept = useDeptMap.get(m.getUseDeptId());
@@ -577,14 +578,15 @@
     }
 
     @Override
-    public OaApprovalApplicationStoragePropertyDetailVO getPropertyDetail(Integer storageId) {
-        OaApprovalApplicationStorage storage = this.getById(storageId);
-        if (storage == null) {
-            throw new ServiceException("入库申请不存在");
-        }
-        OaApprovalApplications app = oaApprovalApplicationsService.getById(storage.getApprovalApplicationId());
+    public OaApprovalApplicationStoragePropertyDetailVO getPropertyDetail(Integer approvalApplicationId) {
+        OaApprovalApplications app = oaApprovalApplicationsService.getById(approvalApplicationId);
         if (app == null) {
             throw new ServiceException("审批主记录不存在");
+        }
+        OaApprovalApplicationStorage storage = this.lambdaQuery()
+                .eq(OaApprovalApplicationStorage::getApprovalApplicationId, approvalApplicationId).one();
+        if (storage == null) {
+            throw new ServiceException("入库申请不存在");
         }
 
         OaApprovalApplicationStoragePropertyDetailVO vo = new OaApprovalApplicationStoragePropertyDetailVO();
@@ -607,19 +609,19 @@
             // 批量查询使用部门
             List<Integer> useDeptIds = mains.stream().map(OaApprovalApplicationStorageAsset::getUseDeptId)
                     .filter(Objects::nonNull).distinct().collect(Collectors.toList());
-            Map<Integer, TDept> useDeptMap = ownerIds.isEmpty() ? Collections.emptyMap()
+            Map<Integer, TDept> useDeptMap = useDeptIds.isEmpty() ? Collections.emptyMap()
                     : tDeptService.listByIds(useDeptIds).stream().collect(Collectors.toMap(TDept::getId, d -> d));
             // 批量查询仓库
             List<Integer> warehouseIds = mains.stream().map(OaApprovalApplicationStorageAsset::getWarehouseId)
                     .filter(Objects::nonNull).distinct().collect(Collectors.toList());
             Map<Integer, AssetWarehouse> warehouseMap = warehouseIds.isEmpty() ? Collections.emptyMap()
-                    : assetWarehouseService.listByIds(useDeptIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d));
+                    : assetWarehouseService.listByIds(warehouseIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d));
 
             List<OaApprovalApplicationStoragePropertyDetailVO.PropertyAssetItemVO> items = mains.stream().map(m -> {
                 OaApprovalApplicationStoragePropertyDetailVO.PropertyAssetItemVO item = BeanUtil.copyProperties(m, OaApprovalApplicationStoragePropertyDetailVO.PropertyAssetItemVO.class);
                 if (m.getOwnershipDeptId() != null) {
                     TDept dept = ownerDeptMap.get(m.getOwnershipDeptId());
-                    item.setOwnerShipDeptName(dept != null ? dept.getDeptName() : null);
+                    item.setOwnershipDeptName(dept != null ? dept.getDeptName() : null);
                 }
                 if (m.getAddressType().equals(0) && m.getUseDeptId() != null) {
                     TDept dept = useDeptMap.get(m.getUseDeptId());
@@ -655,14 +657,15 @@
     }
 
     @Override
-    public OaApprovalApplicationStorageVehicleDetailVO getVehicleDetail(Integer storageId) {
-        OaApprovalApplicationStorage storage = this.getById(storageId);
-        if (storage == null) {
-            throw new ServiceException("入库申请不存在");
-        }
-        OaApprovalApplications app = oaApprovalApplicationsService.getById(storage.getApprovalApplicationId());
+    public OaApprovalApplicationStorageVehicleDetailVO getVehicleDetail(Integer approvalApplicationId) {
+        OaApprovalApplications app = oaApprovalApplicationsService.getById(approvalApplicationId);
         if (app == null) {
             throw new ServiceException("审批主记录不存在");
+        }
+        OaApprovalApplicationStorage storage = this.lambdaQuery()
+                .eq(OaApprovalApplicationStorage::getApprovalApplicationId, approvalApplicationId).one();
+        if (storage == null) {
+            throw new ServiceException("入库申请不存在");
         }
 
         OaApprovalApplicationStorageVehicleDetailVO vo = new OaApprovalApplicationStorageVehicleDetailVO();
@@ -685,18 +688,18 @@
             // 批量查询使用部门
             List<Integer> useDeptIds = mains.stream().map(OaApprovalApplicationStorageAsset::getUseDeptId)
                     .filter(Objects::nonNull).distinct().collect(Collectors.toList());
-            Map<Integer, TDept> useDeptMap = ownerIds.isEmpty() ? Collections.emptyMap()
+            Map<Integer, TDept> useDeptMap = useDeptIds.isEmpty() ? Collections.emptyMap()
                     : tDeptService.listByIds(useDeptIds).stream().collect(Collectors.toMap(TDept::getId, d -> d));
             // 批量查询仓库
             List<Integer> warehouseIds = mains.stream().map(OaApprovalApplicationStorageAsset::getWarehouseId)
                     .filter(Objects::nonNull).distinct().collect(Collectors.toList());
             Map<Integer, AssetWarehouse> warehouseMap = warehouseIds.isEmpty() ? Collections.emptyMap()
-                    : assetWarehouseService.listByIds(useDeptIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d));
+                    : assetWarehouseService.listByIds(warehouseIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d));
             List<OaApprovalApplicationStorageVehicleDetailVO.VehicleAssetItemVO> items = mains.stream().map(m -> {
                 OaApprovalApplicationStorageVehicleDetailVO.VehicleAssetItemVO item = BeanUtil.copyProperties(m, OaApprovalApplicationStorageVehicleDetailVO.VehicleAssetItemVO.class);
                 if (m.getOwnershipDeptId() != null) {
                     TDept dept = ownerDeptMap.get(m.getOwnershipDeptId());
-                    item.setOwnerShipDeptName(dept != null ? dept.getDeptName() : null);
+                    item.setOwnershipDeptName(dept != null ? dept.getDeptName() : null);
                 }
                 if (m.getAddressType().equals(0) && m.getUseDeptId() != null) {
                     TDept dept = useDeptMap.get(m.getUseDeptId());
@@ -730,6 +733,7 @@
             v.setDeptName(app.getDeptName());
             v.setApplicantUserId(app.getApplicantUserId());
             v.setApplicantName(app.getApplicantName());
+            v.setApprovalStatus(app.getApprovalStatus());
             v.setApplicationDate(app.getApplicationDate());
             v.setApplicationReason(app.getApplicationReason());
             v.setAttachmentUrl(app.getAttachmentUrl());
@@ -743,6 +747,7 @@
             v.setDeptName(app.getDeptName());
             v.setApplicantUserId(app.getApplicantUserId());
             v.setApplicantName(app.getApplicantName());
+            v.setApprovalStatus(app.getApprovalStatus());
             v.setApplicationDate(app.getApplicationDate());
             v.setApplicationReason(app.getApplicationReason());
             v.setAttachmentUrl(app.getAttachmentUrl());
@@ -756,6 +761,7 @@
             v.setDeptName(app.getDeptName());
             v.setApplicantUserId(app.getApplicantUserId());
             v.setApplicantName(app.getApplicantName());
+            v.setApprovalStatus(app.getApprovalStatus());
             v.setApplicationDate(app.getApplicationDate());
             v.setApplicationReason(app.getApplicationReason());
             v.setAttachmentUrl(app.getAttachmentUrl());
@@ -773,4 +779,13 @@
         pageInfo.setRecords(list);
         return pageInfo;
     }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void removeByApplicationId(Integer id) {
+        //删除入库申请相关数据
+        this.lambdaUpdate().eq(OaApprovalApplicationStorage::getApprovalApplicationId, id).remove();
+        //删除入库申请单
+        oaApprovalApplicationsService.removeById(id);
+    }
 }

--
Gitblit v1.7.1