From 63446979abaafce5007896f88a2b6c7ee22d88c5 Mon Sep 17 00:00:00 2001 From: 石广澎 <shiguangpeng@163.com> Date: 星期三, 29 十一月 2023 14:21:38 +0800 Subject: [PATCH] feat: 1、物品分发明细查询 --- consum-base/src/main/java/com/consum/base/service/LWhFormScrappedCoreService.java | 48 ++++++++++++++++++++++++++++++++++-------------- 1 files changed, 34 insertions(+), 14 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedCoreService.java b/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedCoreService.java index 31c2524..6e3cdcc 100644 --- a/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedCoreService.java +++ b/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedCoreService.java @@ -1,54 +1,66 @@ package com.consum.base.service; +import cn.hutool.core.convert.Convert; import com.consum.base.core.WhBusinessEnum; -import com.consum.base.core.util.LockManage; -import com.consum.model.po.*; +import com.consum.base.core.service.LWhWarningCoreServiceImpl; +import com.consum.base.core.utils.LockManage; +import com.consum.model.po.LWarehouseFlow; +import com.consum.model.po.LWhFormScrapped; +import com.consum.model.po.LWhFormScrappedGoods; +import com.consum.model.po.LWhGoodsRecord; import com.iplatform.model.po.S_user_core; import com.walker.infrastructure.utils.CollectionUtils; import com.walker.infrastructure.utils.NumberGenerator; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.interceptor.TransactionAspectSupport; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** * @ClassName LWhFormScrappedCoreService - * @Author cy * @Date 2023/10/30 * @Description * @Version 1.0 **/ @Service @Slf4j +@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) public class LWhFormScrappedCoreService { - private LWhFormScrappedService lWhFormScrappedService; + + private GoodsBaseServiceImpl goodsBaseService; private LWhFormScrappedGoodsService lWhFormScrappedGoodsService; private BaseGoodsTemplateServiceImpl baseGoodsTemplateService; private LWhGoodsService lWhGoodsService; private LWhGoodsRecordDetailsService lWhGoodsRecordDetailsService; private LWhGoodsRecordService lWhGoodsRecordService; private LWarehouseFlowService lWarehouseFlowService; + private LWhWarningCoreServiceImpl lWhWarningCoreService; @Autowired - public LWhFormScrappedCoreService(LWhFormScrappedService lWhFormScrappedService, + public LWhFormScrappedCoreService(GoodsBaseServiceImpl goodsBaseService, LWhFormScrappedGoodsService lWhFormScrappedGoodsService, BaseGoodsTemplateServiceImpl baseGoodsTemplateService, LWhGoodsService lWhGoodsService, LWhGoodsRecordDetailsService lWhGoodsRecordDetailsService, LWhGoodsRecordService lWhGoodsRecordService, - LWarehouseFlowService lWarehouseFlowService) { - this.lWhFormScrappedService = lWhFormScrappedService; + LWarehouseFlowService lWarehouseFlowService, + LWhWarningCoreServiceImpl lWhWarningCoreService) { +// this.lWhFormScrappedService = lWhFormScrappedService; this.lWhFormScrappedGoodsService = lWhFormScrappedGoodsService; this.baseGoodsTemplateService = baseGoodsTemplateService; this.lWhGoodsService = lWhGoodsService; this.lWhGoodsRecordDetailsService = lWhGoodsRecordDetailsService; this.lWhGoodsRecordService = lWhGoodsRecordService; this.lWarehouseFlowService = lWarehouseFlowService; + this.goodsBaseService = goodsBaseService; + this.lWhWarningCoreService = lWhWarningCoreService; } @@ -64,7 +76,7 @@ return null; } LWhFormScrapped lWhFormScrapped = new LWhFormScrapped(formScrappedId); - lWhFormScrapped = lWhFormScrappedService.get(lWhFormScrapped); + lWhFormScrapped = goodsBaseService.get(lWhFormScrapped); if (lWhFormScrapped != null && lWhFormScrapped.getStates() != 0) { log.error("鎶ュ簾澶辫触锛佽妫�鏌ユ姤搴熷崟鐘舵��"); return null; @@ -89,10 +101,14 @@ } // 鎸夊瀷鍙峰垎缁� - Map<Long, List<LWhFormScrappedGoods>> modelGroup = formScrappedGoods.stream().collect(Collectors.groupingBy(LWhFormScrappedGoods::getBaseGoodsModelsId)); + ArrayList<Long> allChangModelList = new ArrayList<>(); + + Map<Long, List<LWhFormScrappedGoods>> modelGroup = formScrappedGoods.stream() + .collect(Collectors.groupingBy(LWhFormScrappedGoods::getBaseGoodsModelsId)); for (Map.Entry<Long, List<LWhFormScrappedGoods>> entry : modelGroup.entrySet()) { //瑙勬牸鍨嬪彿缂栧彿 Long baseGoodsModelsId = entry.getKey(); + allChangModelList.add(baseGoodsModelsId); //瀵规瘡缁勪腑瑕佹姤搴熺殑鏁伴噺姹傚拰 List<LWhFormScrappedGoods> modelGoodsList = entry.getValue(); //鏌ヨ鍨嬪彿淇℃伅 @@ -135,7 +151,8 @@ //浣跨敤浜哄憳鍚嶇О String userName = formScrappedGood.getUserName(); // 鏍规嵁鍒嗗彂鍗曘�佽鏍煎瀷鍙风紪鍙枫�佷娇鐢ㄤ汉鍛樺悕绉帮紝杩涜鎶ュ簾 - srappedGoodsIds = lWhGoodsService.queryScrappedGoodsIds(warehouseType, warehouseId, transBusinessId, userName, baseGoodsModelsId, (short) 2, counts); + srappedGoodsIds = lWhGoodsService.queryScrappedGoodsIds(warehouseType, warehouseId, transBusinessId, userName, baseGoodsModelsId, + (short) 2, counts); } if (CollectionUtils.isEmpty(srappedGoodsIds) || srappedGoodsIds.size() < counts) { log.error("瑕佹姤搴熺殑鐗╁搧鏁伴噺涓嶈冻锛�"); @@ -148,7 +165,7 @@ whGoodsRecord.setEndCount(goodsModelNum - counts); // 璁剧疆鐗╁搧涓烘姤搴熺姸鎬� - lWhGoodsService.modGoodsTransfering(srappedGoodsIds, null, null, null, (short) 3); + lWhGoodsService.modGoodsTransfering(srappedGoodsIds, null, null, null, 3); // 鎵归噺鎻掑叆 杩涘嚭搴撴祦姘存槑缁哰L_WH_GOODS_RECORD_DETAILS] lWhGoodsRecordDetailsService.sameGoodsInsertMore(srappedGoodsIds, whGoodsRecordId, (short) 2); } @@ -174,8 +191,8 @@ return null; } // 鏇存柊鎶ュ簾鍗� - lWhFormScrapped = new LWhFormScrapped(formScrappedId); - lWhFormScrapped = lWhFormScrappedService.get(lWhFormScrapped); + lWhFormScrapped = new LWhFormScrapped(formScrappedId); + lWhFormScrapped = goodsBaseService.get(lWhFormScrapped); if (lWhFormScrapped != null && lWhFormScrapped.getStates() != 0) { log.error("鎶ュ簾澶辫触锛佽妫�鏌ユ姤搴熷崟鐘舵��"); return null; @@ -185,7 +202,10 @@ lWhFormScrapped.setOperatorId(userId); lWhFormScrapped.setOperatorName(nickName); lWhFormScrapped.setDealTime(dealTime); - lWhFormScrappedService.update(lWhFormScrapped); + goodsBaseService.update(lWhFormScrapped); + + //褰撳簱瀛樺彉鍔ㄦ椂璋冪敤璇ユ柟娉� + lWhWarningCoreService.updateKuCun(Convert.toShort(warehouseType,(short) 0), warehouseId, allChangModelList, null, dealTime); return lWarehouseFlowId; } -- Gitblit v1.9.1