From 41dd97a3255d581d4013529730cedfb3f8f8e8ea Mon Sep 17 00:00:00 2001
From: cy <1664593601@qq.com>
Date: 星期一, 27 十一月 2023 16:58:57 +0800
Subject: [PATCH] feat: 盘点
---
consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java | 12 ++-
consum-base/src/main/java/com/consum/base/service/LWhFormInventoryCoreService.java | 69 +++++++++--------
consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java | 58 ++++++++------
consum-base/src/main/java/com/consum/base/service/LWhFormTransferCoreService.java | 3
consum-base/src/main/java/com/consum/base/service/LWhFormScrappedCoreService.java | 2
consum-base/src/main/java/com/consum/base/service/LWhFormOutputCoreService.java | 16 ++-
consum-base/src/main/java/com/consum/base/core/WarehouseCoreService.java | 5 +
consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java | 7 +
consum-base/src/main/java/com/consum/base/service/LWhFormProcureCoreService.java | 2
consum-base/src/main/java/com/consum/base/service/LWhGoodsService.java | 2
consum-base/src/main/java/com/consum/base/core/service/LWhWarningCoreServiceImpl.java | 6 +
consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java | 7 +
12 files changed, 113 insertions(+), 76 deletions(-)
diff --git a/consum-base/src/main/java/com/consum/base/core/WarehouseCoreService.java b/consum-base/src/main/java/com/consum/base/core/WarehouseCoreService.java
index feab773..96d5f9f 100644
--- a/consum-base/src/main/java/com/consum/base/core/WarehouseCoreService.java
+++ b/consum-base/src/main/java/com/consum/base/core/WarehouseCoreService.java
@@ -1,14 +1,16 @@
package com.consum.base.core;
import com.consum.base.core.param.BaseWarehouseParam;
-import com.consum.base.core.utils.SqlParameter;
import com.consum.base.core.utils.DateUtil;
+import com.consum.base.core.utils.SqlParameter;
import com.consum.model.po.*;
import com.walker.infrastructure.utils.NumberGenerator;
import com.walker.jdbc.service.BaseServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.util.ArrayList;
@@ -20,6 +22,7 @@
*/
@Service
@Slf4j
+@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
public class WarehouseCoreService extends BaseServiceImpl {
public static void main(String[] args) {
diff --git a/consum-base/src/main/java/com/consum/base/core/service/LWhWarningCoreServiceImpl.java b/consum-base/src/main/java/com/consum/base/core/service/LWhWarningCoreServiceImpl.java
index 7abdabd..9e8a73d 100644
--- a/consum-base/src/main/java/com/consum/base/core/service/LWhWarningCoreServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/core/service/LWhWarningCoreServiceImpl.java
@@ -10,6 +10,8 @@
import com.walker.infrastructure.utils.NumberGenerator;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
@@ -26,6 +28,7 @@
* @Version 1.0
**/
@Service
+@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
public class LWhWarningCoreServiceImpl {
@Resource
@@ -129,8 +132,7 @@
StringBuilder sql = new StringBuilder(KU_CUN_NORMAL_MODEL);
if (!org.springframework.util.CollectionUtils.isEmpty(normalBaseModelIdList)) {
- sql.append(" and BASE_GOODS_MODELS_ID in(?)");
- params.add(org.apache.commons.lang3.StringUtils.join(normalBaseModelIdList, ","));
+ sql.append(" and BASE_GOODS_MODELS_ID in(").append( org.apache.commons.lang3.StringUtils.join(normalBaseModelIdList, ",")).append(")");
}
return lWhWarningService.update(sql.toString(), params.toArray());
}
diff --git a/consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java b/consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java
index 144e817..a9989b2 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java
@@ -12,6 +12,8 @@
import org.springframework.jdbc.core.namedparam.SqlParameterSource;
import org.springframework.jdbc.core.simple.SimpleJdbcCall;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
import javax.annotation.PostConstruct;
import java.util.List;
@@ -26,6 +28,7 @@
**/
@Service
@Slf4j
+@Transactional(propagation = Propagation.REQUIRED)
public class LWarehouseFlowCoreService {
private final JdbcTemplate jdbcTemplate;
@@ -78,8 +81,8 @@
//閲囪喘鏂瑰紡锛�1锛氶泦閲囷紱2=鑷噰锛�
short buyType = lWhFormProcure.getBuyType().shortValue();
//閲囪喘鏃堕棿
- Long procureTime = lWhFormProcure.getProcureTime();
-
+ Long procureTime2 = lWhFormProcure.getProcureTime();
+ Long procureTime = procureTime2 == null ? dealTime : procureTime2;
// 鎻掑叆娴佹按鎬昏〃
int flowInsertFlag = lWarehouseFlowService.insert(warehouseFlow);
if (flowInsertFlag == 0) {
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryCoreService.java b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryCoreService.java
index 62796d9..b37a1c8 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryCoreService.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryCoreService.java
@@ -4,27 +4,22 @@
import com.consum.base.core.CodeGeneratorService;
import com.consum.base.core.WhBusinessEnum;
import com.consum.base.core.utils.IdUtil;
-import com.consum.model.po.BaseWarehouse;
-import com.consum.model.po.FinSysTenantUser;
-import com.consum.model.po.LWhFormInventory;
-import com.consum.model.po.LWhFormInventoryGoods;
-import com.consum.model.po.LWhFormOutput;
-import com.consum.model.po.LWhFormProcure;
-import com.consum.model.po.LWhFormProcureGoods;
-import com.consum.model.po.LWhProcureModel;
+import com.consum.model.po.*;
import com.iplatform.model.po.S_user_core;
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 org.springframework.util.CollectionUtils;
+
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.transaction.interceptor.TransactionAspectSupport;
-import org.springframework.util.CollectionUtils;
/**
* @ClassName LWhFormInventoryCoreService
@@ -34,6 +29,7 @@
**/
@Slf4j
@Service
+@Transactional(propagation = Propagation.REQUIRED)
public class LWhFormInventoryCoreService {
private LWhFormInventoryGoodsServiceImpl lWhFormInventoryGoods;
@@ -51,17 +47,17 @@
@Autowired
public LWhFormInventoryCoreService(LWhFormInventoryGoodsServiceImpl lWhFormInventoryGoods,
- LWhFormOutputCoreService lWhFormOutputCoreService,
- CodeGeneratorService codeGeneratorService,
- LWhFormProcureService lWhFormProcureService,
- BaseWarehouseServiceImpl baseWarehouseService,
- LWhFormProcureGoodsService lWhFormProcureGoodsService,
- LWhProcureModelService lWhProcureModelService,
- BaseGoodsTemplateServiceImpl baseGoodsTemplateService,
- LWhGoodsService lWhGoodsService,
- LWhFormInventoryServiceImpl lWhFormInventoryService,
- LWhFormProcureCoreService lWhFormProcureCoreService,
- LWhFormOutputServiceImpl lWhFormOutputService
+ LWhFormOutputCoreService lWhFormOutputCoreService,
+ CodeGeneratorService codeGeneratorService,
+ LWhFormProcureService lWhFormProcureService,
+ BaseWarehouseServiceImpl baseWarehouseService,
+ LWhFormProcureGoodsService lWhFormProcureGoodsService,
+ LWhProcureModelService lWhProcureModelService,
+ BaseGoodsTemplateServiceImpl baseGoodsTemplateService,
+ LWhGoodsService lWhGoodsService,
+ LWhFormInventoryServiceImpl lWhFormInventoryService,
+ LWhFormProcureCoreService lWhFormProcureCoreService,
+ LWhFormOutputServiceImpl lWhFormOutputService
) {
this.lWhFormInventoryGoods = lWhFormInventoryGoods;
@@ -104,8 +100,8 @@
return "娌℃湁鎵惧埌鐩樼偣鍗曠粨鏋滅墿鍝�";
}
Map<Integer, List<LWhFormInventoryGoods>> inventoryGoodsMap = lWhFormInventoryGoods.stream()
- .filter(goods -> goods.getInventoryResult() == 2 || goods.getInventoryResult() == 3)
- .collect(Collectors.groupingBy(LWhFormInventoryGoods::getInventoryResult));
+ .filter(goods -> goods.getInventoryResult() == 2 || goods.getInventoryResult() == 3)
+ .collect(Collectors.groupingBy(LWhFormInventoryGoods::getInventoryResult));
if (CollectionUtils.isEmpty(lWhFormInventoryGoods)) {
// rtnMap.put("status", true);
return null;
@@ -131,8 +127,8 @@
// rtnMap.put("errMsg", "鍒涘缓鍏ュ簱鍗曞け璐�");
return "鍒涘缓鍏ュ簱鍗曞け璐�";
}
- Long inFormByInventoryId = (Long) inOutMap.get("inId");
inOutMap.putAll(rkMap);
+ Long inFormByInventoryId = (Long) inOutMap.get("inId");
String errMsg = lWhFormProcureCoreService.doProcure(inFormByInventoryId, currentUser);
if (errMsg != null) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -156,7 +152,7 @@
inOutMap.putAll(ckMap);
Long lWhFormOutputId = (Long) inOutMap.get("outId");
//2.鏍规嵁鍑哄簱鍗曞嚭搴�
- Long lWarehouseFlowId = lWhFormOutputCoreService.outFormByTransId(lWhFormOutputId, WhBusinessEnum.CAIGOU, currentUser, stopTime);
+ Long lWarehouseFlowId = lWhFormOutputCoreService.outFormByTransId(lWhFormOutputId, WhBusinessEnum.PANDIAN, currentUser, stopTime);
if (lWarehouseFlowId == null) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
// throw new RuntimeException("鍒涘缓鍑哄簱鍗曞け璐�");
@@ -187,7 +183,7 @@
* @param currentUser
*/
private Map<String, Object> createInFormByInventoryId(Long warehouseId, Long procureTime, List<LWhFormInventoryGoods> inventoryGoodsList,
- S_user_core currentUser) {
+ S_user_core currentUser) {
if (CollectionUtils.isEmpty(inventoryGoodsList)) {
return null;
}
@@ -268,7 +264,7 @@
* @param currentUser
*/
private Map<String, Object> createOutFormByInventoryId(Long warehouseId, Long procureTime, List<LWhFormInventoryGoods> inventoryGoodsList,
- S_user_core currentUser, FinSysTenantUser sysInfo) {
+ S_user_core currentUser, FinSysTenantUser sysInfo) {
if (CollectionUtils.isEmpty(inventoryGoodsList)) {
return null;
}
@@ -277,6 +273,7 @@
//鍑哄叆搴搃d
long lWhFormOutputId = IdUtil.generateId();
lWhFormOutput.setId(lWhFormOutputId);
+ lWhFormOutput.setOutWarehouseType(0);
lWhFormOutput.setWarehouseId(warehouseId);
//鏍规嵁浠撳簱id鏌ヨ浠撳簱
BaseWarehouse warehouse = this.baseWarehouseService.getById(warehouseId);
@@ -301,6 +298,7 @@
if (flag1 != 1) {
return null;
}
+ ArrayList<LWhProcureModel> lWhProcureModels = new ArrayList<>();
for (LWhFormInventoryGoods inventoryGoods : inventoryGoodsList) {
Long baseGoodsModelsId = inventoryGoods.getBaseGoodsModelsId();
Integer counts = inventoryGoods.getErrorCounts();
@@ -312,11 +310,16 @@
//鏂板L_WH_PROCURE_MODEL璁板綍
LWhProcureModel lWhProcureModel = new LWhProcureModel();
lWhProcureModel.setId(IdUtil.generateId());
- lWhProcureModel.setBusinessType(3);
+ lWhProcureModel.setBusinessType(WhBusinessEnum.CHUKU.getValue() + 0);
+ lWhProcureModel.setBusinessId(lWhFormOutputId);
lWhProcureModel.setBaseGoodsModelsId(baseGoodsModelsId);
lWhProcureModel.setCounts(counts);
lWhProcureModel.setWorehouseCount(goodsNum);
- lWhProcureModelService.insert(lWhProcureModel);
+// lWhProcureModelService.insert(lWhProcureModel);
+ lWhProcureModels.add(lWhProcureModel);
+ }
+ if (!CollectionUtils.isEmpty(lWhProcureModels)) {
+ lWhProcureModelService.insertBatch(lWhProcureModels);
}
HashMap<String, Object> rtnMap = new HashMap<>();
rtnMap.put("outId", lWhFormOutputId);
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java
index ff3142a..1561502 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java
@@ -4,10 +4,13 @@
import com.consum.base.pojo.response.FormInventoryGoodsVO;
import com.consum.model.po.LWhFormInventoryGoods;
import com.walker.jdbc.service.BaseServiceImpl;
-import java.util.ArrayList;
-import java.util.List;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.List;
/**
* @Description 鐩樼偣鍗曠墿鍝�
@@ -16,6 +19,7 @@
*/
@Slf4j
@Service
+@Transactional(propagation = Propagation.REQUIRED)
public class LWhFormInventoryGoodsServiceImpl extends BaseServiceImpl {
/**
@@ -56,9 +60,9 @@
Integer inventoryCount = inventoryGoods.getInventoryCount();
Integer realNum = inventoryGoods.getRealNum();
if (realNum != null) {
- int errorCount = inventoryCount - realNum;
+ int errorCount = realNum - inventoryCount ;
lWhFormInventoryGoods.setInventoryCounts(realNum);
- lWhFormInventoryGoods.setErrorCounts(errorCount);
+ lWhFormInventoryGoods.setErrorCounts(Math.abs(errorCount));
//鐩樼偣缁撴灉锛�1=姝e父锛�2=鐩樼泩锛�3=鐩樹簭锛�
lWhFormInventoryGoods.setInventoryResult((errorCount > 0) ? 2 : (errorCount < 0) ? 3 : 1);
goodsList.add(lWhFormInventoryGoods);
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java
index 92361bb..562900c 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java
@@ -21,9 +21,6 @@
import com.walker.infrastructure.utils.DateUtils;
import com.walker.infrastructure.utils.StringUtils;
import com.walker.jdbc.service.BaseServiceImpl;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.compress.utils.Lists;
import org.springframework.beans.BeanUtils;
@@ -32,6 +29,10 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
/**
* @Description 鐩樼偣
* @Author 鍗㈠簡闃�
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormOutputCoreService.java b/consum-base/src/main/java/com/consum/base/service/LWhFormOutputCoreService.java
index 0811cfc..dd3ce96 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormOutputCoreService.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormOutputCoreService.java
@@ -14,6 +14,7 @@
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;
@@ -29,7 +30,7 @@
**/
@Slf4j
@Service
-@Transactional(rollbackFor = Exception.class)
+@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
public class LWhFormOutputCoreService {
private BaseGoodsTemplateServiceImpl baseGoodsTemplateService;
@@ -189,21 +190,26 @@
//閲囪喘鏂瑰紡锛�1锛氶泦閲囷紱2=鑷噰锛�
Integer buyTypeT = null;
Integer modGoodsTransferingStatusT = null;
- String outputCode = lWhFormOutput.getOutputCode();
- if ((BaseWarehouseParam1.In_OutPutTypeEnum.Transfer_Output.getValue() + "").equals(outputCode)) {
+ short businessTypeValue = businessType.getValue();
+ if (BaseWarehouseParam1.In_OutPutTypeEnum.Transfer_Output.getValue() == businessTypeValue) {
//璋冩嫧鍑哄簱
queryModelStatusT = 1;
buyTypeT = 1;
lWarehouseFlowBusinessId = lWhFormOutput.getTransBusinessId();
modGoodsTransferingStatusT = 0;
- } else if ((BaseWarehouseParam1.In_OutPutTypeEnum.Dept_Lending_Out.getValue() + "").equals(outputCode)) {
+ } else if (BaseWarehouseParam1.In_OutPutTypeEnum.Dept_Lending_Out.getValue() == businessTypeValue) {
// 閮ㄩ棬浠撳簱 鍒嗗彂鍑哄簱
// queryModelStatusT = 2;
- } else if ((BaseWarehouseParam1.In_OutPutTypeEnum.Fragmentary_Output.getValue() + "").equals(outputCode)) {
+ } else if (BaseWarehouseParam1.In_OutPutTypeEnum.Fragmentary_Output.getValue() == businessTypeValue) {
// 闆舵槦鍑哄簱
queryModelStatusT = 1;
buyTypeT = null;
modGoodsTransferingStatusT = 4;
+ }else if (BaseWarehouseParam1.In_OutPutTypeEnum.Inventory_Output.getValue() == businessTypeValue) {
+ // 鐩樼偣鍑哄簱
+ queryModelStatusT = 1;
+ buyTypeT = null;
+ modGoodsTransferingStatusT = 4;
}
Integer queryModelStatus = queryModelStatusT;
Integer buyType = buyTypeT;
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 1a2f7c9..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
@@ -10,6 +10,7 @@
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;
@@ -24,6 +25,7 @@
**/
@Service
@Slf4j
+@Transactional(propagation= Propagation.REQUIRED)
public class LWhFormProcureCoreService {
@Resource
private LWhProcureModelService lWhProcureModelService;
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 5dfc08d..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
@@ -14,6 +14,7 @@
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;
@@ -30,6 +31,7 @@
**/
@Service
@Slf4j
+@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
public class LWhFormScrappedCoreService {
private GoodsBaseServiceImpl goodsBaseService;
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java
index acc6e5c..108907d 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java
@@ -14,29 +14,23 @@
import com.consum.base.pojo.response.FormScrappedGoodsVO;
import com.consum.base.pojo.response.GoodsModelVO;
import com.consum.base.pojo.response.LWhFormScrappedExtendVO;
-import com.consum.model.po.BaseGoodsModels;
-import com.consum.model.po.BaseGoodsTemplate;
-import com.consum.model.po.BaseWarehouse;
-import com.consum.model.po.FinSysTenantDepartment;
-import com.consum.model.po.FinSysTenantUser;
-import com.consum.model.po.LWhFormScrapped;
-import com.consum.model.po.LWhFormScrappedGoods;
-import com.consum.model.po.SDictData;
+import com.consum.model.po.*;
import com.iplatform.model.po.S_user_core;
import com.walker.db.page.GenericPager;
import com.walker.infrastructure.utils.StringUtils;
import com.walker.jdbc.service.BaseServiceImpl;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
import org.apache.commons.compress.utils.Lists;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import org.springframework.util.CollectionUtils;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
/**
* @Description 鎶ュ簾鍗�
@@ -80,23 +74,39 @@
* @return 1.鏂板鎶ュ簾鍗� 2.鏂板鎶ュ簾鍗曠墿鍝�
*/
- public int add(LWhFormScrappedParam param, S_user_core currentUser, FinSysTenantUser sysInfo) {
+ public int add(LWhFormScrappedParam param, int warehouseType, S_user_core currentUser, FinSysTenantUser sysInfo) {
//1.鏂板鎶ュ簾鍗曡褰�
LWhFormScrapped lWhFormScrapped = new LWhFormScrapped();
//鎶ュ簾鍗昳d
long lWhFormScrappedId = IdUtil.generateId();
lWhFormScrapped.setId(lWhFormScrappedId);
lWhFormScrapped.setBusinessFormCode(codeGeneratorService.createBusinessFormCode(CodeGeneratorEnum.Scrapped));
- lWhFormScrapped.setWarehouseType(0);
- Long warehouseId = param.getWarehouseId();
- lWhFormScrapped.setWarehouseId(warehouseId);
- //鏍规嵁浠撳簱id鏌ヨ浠撳簱
- BaseWarehouse warehouse = this.baseWarehouseService.getById(warehouseId);
- if (warehouse == null) {
- log.error("浠撳簱涓嶅瓨鍦�");
- return 0;
+ lWhFormScrapped.setWarehouseType(warehouseType);
+ // 鍏敤
+ Long warehouseId = null;
+ //浠撳簱鍚嶇О
+ String wareHouseName = null;
+ if (warehouseType == 0){
+ warehouseId = param.getWarehouseId();
+ //鏍规嵁浠撳簱id鏌ヨ浠撳簱
+ BaseWarehouse warehouse = this.baseWarehouseService.getById(warehouseId);
+ if (warehouse == null) {
+ log.error("浠撳簱涓嶅瓨鍦�");
+ return 0;
+ }
+ wareHouseName = warehouse.getWarehouseName();
+ } else {
+ // 鏌ヨ閮ㄩ棬鍚嶇О
+ warehouseId = param.getDepartmentId();
+ FinSysTenantDepartment sysTenantDepartment = departmentService.getById(warehouseId);
+ if (sysTenantDepartment == null) {
+ log.error("閮ㄩ棬涓嶅瓨鍦�");
+ return 0;
+ }
+ wareHouseName = sysTenantDepartment.getName();
}
- lWhFormScrapped.setWarehouseName(warehouse.getWarehouseName());
+ lWhFormScrapped.setWarehouseId(warehouseId);
+ lWhFormScrapped.setWarehouseName(wareHouseName);
lWhFormScrapped.setAgencyId(Long.valueOf(sysInfo.getTenantId()));
lWhFormScrapped.setAgencyName(sysInfo.getTenantName());
lWhFormScrapped.setOperatorId(sysInfo.getSysUserId());
@@ -147,7 +157,7 @@
LWhFormScrappedGoods scrappedGoods = new LWhFormScrappedGoods();
scrappedGoods.setId(IdUtil.generateId());
//鏍规嵁鐗╁搧鍨嬪彿鏌ヨ鐗╁搧搴撳瓨
- int goodsNum = this.lWhGoodsService.queryGoodsModelNum(0, warehouseId, scrappedGoods.getBaseGoodsModelsId(), 1, null);
+ int goodsNum = this.lWhGoodsService.queryGoodsModelNum(warehouseType, warehouseId, scrappedGoods.getBaseGoodsModelsId(), 1, null);
if (params.getCounts() > goodsNum) {
log.error("鎶ュ簾鏁伴噺澶т簬搴撳瓨鏁伴噺");
return 0;
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormTransferCoreService.java b/consum-base/src/main/java/com/consum/base/service/LWhFormTransferCoreService.java
index ebe999b..c5573dc 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormTransferCoreService.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormTransferCoreService.java
@@ -11,6 +11,7 @@
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 org.springframework.transaction.interceptor.TransactionAspectSupport;
@@ -29,7 +30,7 @@
**/
@Service
@Slf4j
-@Transactional(rollbackFor = Exception.class)
+@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
public class LWhFormTransferCoreService {
@Resource
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhGoodsService.java b/consum-base/src/main/java/com/consum/base/service/LWhGoodsService.java
index cbfb40a..4aa7b31 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhGoodsService.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhGoodsService.java
@@ -240,7 +240,7 @@
public int modGoodsTransfering(List<Long> whGoods, Integer warehouseType, Long toWarehouseId, String toWarehouseName, Integer states) {
StringBuilder sql = new StringBuilder(MOD_GOODS_TRANSFERING_PREFIX);
ArrayList<Object> params = new ArrayList<>();
- if (toWarehouseId != null) {
+ if (warehouseType != null) {
sql.append(", WAREHOUSE_TYPE=?");
params.add(warehouseType);
}
--
Gitblit v1.9.1