From 3d7c57bfc9f91f829509d4cc833bef6ef6313c7f Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 19 十二月 2024 17:53:54 +0800
Subject: [PATCH] 代码

---
 manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java |   56 ++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 48 insertions(+), 8 deletions(-)

diff --git a/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java b/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java
index e33ac8f..0257dd0 100644
--- a/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java
+++ b/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java
@@ -10,16 +10,10 @@
 import com.jilongda.common.utils.CodeGenerateUtils;
 import com.jilongda.manage.dto.TWarehousingDTO;
 import com.jilongda.manage.dto.TWarehousingLensDTO;
-import com.jilongda.manage.model.TFrameGoods;
-import com.jilongda.manage.model.TFrameWarehousingDetail;
-import com.jilongda.manage.model.TLensWarehousingDetail;
-import com.jilongda.manage.model.TWarehousing;
+import com.jilongda.manage.model.*;
 import com.jilongda.manage.query.TWarehousingDetailLensQuery;
 import com.jilongda.manage.query.TWarehousingDetailQuery;
-import com.jilongda.manage.service.TFrameGoodsService;
-import com.jilongda.manage.service.TFrameWarehousingDetailService;
-import com.jilongda.manage.service.TLensWarehousingDetailService;
-import com.jilongda.manage.service.TWarehousingService;
+import com.jilongda.manage.service.*;
 import com.jilongda.manage.vo.TFrameWarehousingDetailVO;
 import com.jilongda.manage.vo.TLensWarehousingDetailVO;
 import com.jilongda.manage.vo.TWarehousingLensVO;
@@ -56,6 +50,8 @@
     private TLensWarehousingDetailService lensWarehousingDetailService;
     @Autowired
     private TFrameGoodsService frameGoodsService;
+    @Autowired
+    private TLensGoodsService lensGoodsService;
 
     /**
      * 出入库单列表
@@ -168,6 +164,50 @@
             detail.setCode(WarehousingConstant.OUT_BOUND+CodeGenerateUtils.generateVolumeSn());
         });
         lensWarehousingDetailService.saveBatch(frameWarehousingDetails);
+        if (dto.getStatus()==1||dto.getStatus()==3){
+            List<TLensGoods> list1 = new ArrayList<>();
+            for (TLensWarehousingDetail frameWarehousingDetail : frameWarehousingDetails) {
+                TLensGoods one = lensGoodsService.lambdaQuery().eq(TLensGoods::getSeriesId, frameWarehousingDetail.getSeriesId())
+                        .eq(TLensGoods::getRefractiveIndex, frameWarehousingDetail.getRefractiveIndex())
+                        .eq(TLensGoods::getBallMirror, frameWarehousingDetail.getBallMirror())
+                        .eq(TLensGoods::getColumnMirror, frameWarehousingDetail.getColumnMirror())
+                        .one();
+                if (one!=null){
+                    // 减少对应库存
+                    one.setTotal(one.getTotal()-frameWarehousingDetail.getTotal());
+                    list1.add(one);
+                }
+            }
+            if (!list1.isEmpty())lensGoodsService.updateBatchById(list1);
+        }
+        if (dto.getStatus()==2 || dto.getStatus()==4){
+            List<TLensGoods> list1 = new ArrayList<>();
+            List<TLensGoods> list2 = new ArrayList<>();
+            for (TLensWarehousingDetail frameWarehousingDetail : frameWarehousingDetails) {
+                TLensGoods one = lensGoodsService.lambdaQuery().eq(TLensGoods::getSeriesId, frameWarehousingDetail.getSeriesId())
+                        .eq(TLensGoods::getRefractiveIndex, frameWarehousingDetail.getRefractiveIndex())
+                        .eq(TLensGoods::getBallMirror, frameWarehousingDetail.getBallMirror())
+                        .eq(TLensGoods::getColumnMirror, frameWarehousingDetail.getColumnMirror())
+                        .one();
+                if (one!=null){
+                    // 增加对应库存
+                    one.setTotal(one.getTotal()+frameWarehousingDetail.getTotal());
+                    list1.add(one);
+                }else {
+                    // 新增
+                    TLensGoods tFrameGoods = new TLensGoods();
+                    tFrameGoods.setSeriesId(frameWarehousingDetail.getSeriesId());
+                    tFrameGoods.setBallMirror(frameWarehousingDetail.getBallMirror());
+                    tFrameGoods.setColumnMirror(frameWarehousingDetail.getColumnMirror());
+                    tFrameGoods.setRefractiveIndex(frameWarehousingDetail.getRefractiveIndex());
+                    tFrameGoods.setTotal(frameWarehousingDetail.getTotal());
+                    tFrameGoods.setStoreId(dto.getStoreId());
+                    list2.add(tFrameGoods);
+                }
+            }
+            if (!list1.isEmpty())lensGoodsService.updateBatchById(list1);
+            if (!list2.isEmpty())lensGoodsService.saveBatch(list2);
+        }
         return ApiResult.success();
     }
 

--
Gitblit v1.7.1