From abc5baf903a2bd229fb7f2decd35b26536d86e13 Mon Sep 17 00:00:00 2001 From: futian.liu <liufutianyoo@163.com> Date: 星期三, 29 十一月 2023 15:07:57 +0800 Subject: [PATCH] 部门分发增加出库和入库 --- consum-base/src/main/java/com/consum/base/service/LWhFormProcureCoreService.java | 40 ++++++++++++++++++++++++++++++++-------- 1 files changed, 32 insertions(+), 8 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormProcureCoreService.java b/consum-base/src/main/java/com/consum/base/service/LWhFormProcureCoreService.java index db31877..c06992e 100644 --- a/consum-base/src/main/java/com/consum/base/service/LWhFormProcureCoreService.java +++ b/consum-base/src/main/java/com/consum/base/service/LWhFormProcureCoreService.java @@ -1,6 +1,7 @@ package com.consum.base.service; import com.consum.base.core.WhBusinessEnum; +import com.consum.base.core.service.LWhWarningCoreServiceImpl; import com.consum.model.po.LWarehouseFlow; import com.consum.model.po.LWhFormProcure; import com.consum.model.po.LWhProcureModel; @@ -9,25 +10,31 @@ import com.walker.infrastructure.utils.NumberGenerator; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.List; +import java.util.stream.Collectors; /** * @ClassName LWhFormProcureCoreService - * @Author cy * @Date 2023/10/26 * @Description * @Version 1.0 **/ @Service @Slf4j +@Transactional(propagation= Propagation.REQUIRED) public class LWhFormProcureCoreService { @Resource private LWhProcureModelService lWhProcureModelService; @Resource private LWhFormProcureService lWhFormProcureService; + + @Resource + private LWhWarningCoreServiceImpl lWhWarningCoreService; @Resource private LWarehouseFlowCoreService lWarehouseFlowService; @@ -37,13 +44,17 @@ * 绗竴姝ワ細閫氳繃閲囪喘鍗旾D鏌ヨ閲囪喘鍗曞瀷鍙枫�怢_WH_PROCURE_MODEL銆戝緱鍒板晢鍝佸瀷鍙蜂互鍙婃暟閲� * 绗簩姝ワ細璁板綍杩涘嚭搴撴祦姘达細L_WAREHOUSE_FLOW */ - public void doProcure(Long whFormProcureId, S_user_core currentUser) { + @Transactional(rollbackFor = Exception.class) + public String doProcure(Long whFormProcureId, S_user_core currentUser) { + if (whFormProcureId == null) { + return "閲囪喘鍗昳d涓虹┖"; + } //閲囪喘鍗曚俊鎭� LWhFormProcure whFormProcure = new LWhFormProcure(whFormProcureId); LWhFormProcure lWhFormProcure = lWhFormProcureService.get(whFormProcure); - if (lWhFormProcure == null || lWhFormProcure.getStates() != 0) { + if (lWhFormProcure == null || lWhFormProcure.getStates() != 1) { log.error("鍏ュ簱澶辫触锛佽妫�鏌ュ叆搴撳崟鐘舵��"); - return; + return "鍏ュ簱澶辫触锛佽妫�鏌ュ叆搴撳崟鐘舵��"; } Long userId = currentUser.getId(); String nickName = currentUser.getNick_name(); @@ -51,10 +62,12 @@ List<LWhProcureModel> goodsModelNum = lWhProcureModelService.getModelByForm(WhBusinessEnum.CAIGOU, whFormProcureId); // 娴佹按璁板綍鎬昏〃ID + Long warehouseId = lWhFormProcure.getWarehouseId(); long lWarehouseFlowId = NumberGenerator.getLongSequenceNumberNano(); LWarehouseFlow warehouseFlow = new LWarehouseFlow(); warehouseFlow.setId(lWarehouseFlowId); - warehouseFlow.setWarehouseId(lWhFormProcure.getWarehouseId()); + warehouseFlow.setWarehouseType(0); + warehouseFlow.setWarehouseId(warehouseId); warehouseFlow.setWarehouseName(lWhFormProcure.getWarehouseName()); warehouseFlow.setThisType(1); warehouseFlow.setBusinessType(WhBusinessEnum.CAIGOU.getValue() + 0); @@ -65,15 +78,26 @@ int flowInsertFlag = lWarehouseFlowService.buyInsertWareFlow(goodsModelNum, lWhFormProcure, warehouseFlow); if (flowInsertFlag == 1) { // 鏇存柊閲囪喘鍗曘�怢_WH_FORM_PROCURE銆� - whFormProcure.setStates(1); + whFormProcure = new LWhFormProcure(whFormProcureId); + whFormProcure.setStates(2); whFormProcure.setLWarehouseFlowId(lWarehouseFlowId); whFormProcure.setIncomeId(userId); whFormProcure.setIncomeName(nickName); whFormProcure.setIncomeTime(dealTime); lWhFormProcureService.update(whFormProcure); } - log.info("鍏ュ簱鍗曪細{} 鍏ュ簱瀹屾垚", whFormProcureId); - return; + + // 鎻愬彇baseGoodsModelsId骞舵斁鍏ユ柊鐨凩ist涓� + List<Long> allChangModelList = goodsModelNum.stream() + .map(LWhProcureModel::getBaseGoodsModelsId) + .distinct() + .collect(Collectors.toList()); + //褰撳簱瀛樺彉鍔ㄦ椂璋冪敤璇ユ柟娉� + lWhWarningCoreService.updateKuCun((short) 0, warehouseId, allChangModelList, null, dealTime); + + log.info("鍏ュ簱鍗曪細{} 鍏ュ簱瀹屾垚", whFormProcureId); + return null; } + } -- Gitblit v1.9.1