From 40d9cd510741a098bd52cbe22a5f9e5528f45abc Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期三, 23 四月 2025 17:09:01 +0800
Subject: [PATCH] # 新增  1. 通过单据新增出库单功能  2. 新增生成出库单接口

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java |   22 ++++++++++++++++++++--
 1 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java
index 83f134d..259612b 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocServiceImpl.java
@@ -77,8 +77,14 @@
     @Transactional(rollbackFor = Exception.class)
     public R initLocs(LocMastInitParam param, Long loginUserId) {
         //娓呯┖琛�
-        this.baseMapper.deleteAll();
-
+//        this.baseMapper.deleteAll();
+        //娓呯┖褰撳墠搴撳尯搴撲綅
+        List<Loc> locs = this.list(new LambdaQueryWrapper<Loc>().eq(Loc::getWarehouseId, param.getWarehouseId()).eq(Loc::getAreaId, param.getAreaId()));
+        if (!locs.isEmpty()) {
+            if (!this.remove(new LambdaQueryWrapper<Loc>().eq(Loc::getWarehouseId, param.getWarehouseId()).eq(Loc::getAreaId, param.getAreaId()))) {
+                throw new CoolException("鍒濆鍖栧け璐ワ細鏁版嵁鍒犻櫎澶辫触锛侊紒");
+            }
+        }
         WarehouseAreas warehouseAreas = warehouseAreasService.getOne(new LambdaQueryWrapper<WarehouseAreas>()
                 .eq(WarehouseAreas::getWarehouseId, param.getWarehouseId())
                 .eq(WarehouseAreas::getId, param.getAreaId()));
@@ -108,9 +114,21 @@
                 }
             }
         }
+
         if (!this.saveBatch(list)) {
             throw new CoolException("搴撲綅鍒濆鍖栧け璐ワ紒锛�");
         }
+        List<LocTypeRela> locTypeRelas = new ArrayList<>();
+        for (Long typeId : param.getTypeIds()) {
+            for (Loc loc : list) {
+                LocTypeRela typeRela = new LocTypeRela();
+                typeRela.setLocId(loc.getId()).setTypeId(typeId);
+                locTypeRelas.add(typeRela);
+            }
+        }
+        if (!locTypeRelaService.saveBatch(locTypeRelas)) {
+            throw new CoolException("搴撲綅绫诲瀷鍏宠仈澶辫触锛侊紒");
+        }
         return R.ok("鍒濆鍖栨垚鍔燂紒锛�");
     }
 

--
Gitblit v1.9.1