From 1a4f00e0b4d24ae72c7d95e31e685d9a2be0aa62 Mon Sep 17 00:00:00 2001 From: futian.liu <liufutianyoo@163.com> Date: 星期四, 21 十二月 2023 13:46:29 +0800 Subject: [PATCH] 机构导入 --- consum-base/src/main/java/com/consum/base/core/service/LWhWarningCoreServiceImpl.java | 72 ++++++++++++++++++++++------------- 1 files changed, 45 insertions(+), 27 deletions(-) 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 84a9f49..c7e6333 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 @@ -1,21 +1,26 @@ package com.consum.base.core.service; -import cn.hutool.core.convert.Convert; -import com.consum.base.service.BaseGoodsModelsServiceImpl; -import com.consum.base.service.BaseWarehouseServiceImpl; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import javax.annotation.Resource; + +import org.apache.commons.collections4.CollectionUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +import com.consum.base.core.utils.IdUtil; +import com.consum.base.service.BaseGoodsModelsService; +import com.consum.base.service.BaseWarehouseService; import com.consum.base.service.LWhWarningServiceImpl; import com.consum.model.po.BaseWarehouse; import com.consum.model.po.FinSysTenantUser; import com.consum.model.po.WhWarning; -import com.walker.infrastructure.utils.NumberGenerator; -import org.apache.commons.collections4.CollectionUtils; -import org.springframework.stereotype.Service; -import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - +import cn.hutool.core.convert.Convert; /** * @ClassName LWhWarningCoreServiceImpl @@ -25,14 +30,15 @@ * @Version 1.0 **/ @Service +@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) public class LWhWarningCoreServiceImpl { @Resource private LWhWarningServiceImpl lWhWarningService; @Resource - private BaseWarehouseServiceImpl baseWarehouseService; + private BaseWarehouseService baseWarehouseService; @Resource - private BaseGoodsModelsServiceImpl baseGoodsModelsService; + private BaseGoodsModelsService baseGoodsModelsService; /** * 褰撳簱瀛樺彉鍔ㄦ椂璋冪敤璇ユ柟娉� @@ -41,18 +47,23 @@ * @param warehouseId * @param baseModelIdList */ - public void updateKuCun(Short warehouseType, Long warehouseId, List<Long> baseModelIdList, FinSysTenantUser sysInfo, Long dealTime) { + public void updateKuCun(Short warehouseType, Long warehouseId, List<Long> baseModelIdList, FinSysTenantUser sysInfo, + Long dealTime) { if (baseModelIdList == null) { baseModelIdList = new ArrayList<>(); } + sysInfo = sysInfo == null ? new FinSysTenantUser() : sysInfo; // 鑾峰彇鍒拌揪鍒伴槇鍊肩殑鐗╁搧 - List<Map<String, Object>> kuCunNotifyList = lWhWarningService.checkKuCun(warehouseType, warehouseId, baseModelIdList); - // -// log.info("娌℃湁杈惧埌闃堝�肩殑鐗╁搧"); + List<Map<String, Object>> kuCunNotifyList = + lWhWarningService.checkKuCun(warehouseType, warehouseId, baseModelIdList); + // log.info("娌℃湁杈惧埌闃堝�肩殑鐗╁搧"); if (CollectionUtils.isEmpty(kuCunNotifyList)) { kuCunNormalModel(warehouseType, warehouseId, baseModelIdList); return; } + List<Long> allChangModelList = baseModelIdList.stream().distinct().collect(Collectors.toList()); + baseModelIdList = allChangModelList; + // 灏嗘暟鎹彃鍏ュ簱瀛橀璀︺�怶H_WARNING銆� BaseWarehouse baseWarehouses = baseWarehouseService.get(new BaseWarehouse(warehouseId)); @@ -71,14 +82,14 @@ List<Map<String, Object>> modelInfoList = baseGoodsModelsService.queryGoodsModelInfo(baseGoodsModelsId); Map<String, Object> modelInfo = modelInfoList.get(0); - whWarning.setId(NumberGenerator.getLongSequenceNumber()); + whWarning.setId(IdUtil.generateId()); whWarning.setWarehouseType(0); whWarning.setBaseWarehouseId(warehouseId); whWarning.setBaseWarehouseName(baseWarehouses.getWarehouseName()); whWarning.setBaseGoodsTemplateId(Convert.toLong(modelInfo.get("goodsId"))); whWarning.setBaseGoodsTemplateName(Convert.toStr(modelInfo.get("goodsName"))); whWarning.setBaseGoodsModelsId(baseGoodsModelsId); - whWarning.setBaseGoodsModelsName((String) modelInfo.get("modelName")); + whWarning.setBaseGoodsModelsName((String)modelInfo.get("modelName")); whWarning.setGoodsType(2); whWarning.setWarningType(warningType); whWarning.setUpperLimit(upperLimit); @@ -94,19 +105,26 @@ warningList.add(whWarning); } - //淇敼浠ュ墠鐨勯璀︾姸鎬� + // 淇敼浠ュ墠鐨勯璀︾姸鎬� baseModelIdList.removeAll(kuCunNotifyModelIdList); kuCunNormalModel(warehouseType, warehouseId, baseModelIdList); - //鎵归噺鎻掑叆棰勮 + // 鎵归噺鎻掑叆棰勮 lWhWarningService.insertBatch(warningList); } - private String KU_CUN_NORMAL_MODEL = "update WH_WARNING set STATES=2 where WAREHOUSE_TYPE=? and BASE_WAREHOUSE_ID=?"; + private String KU_CUN_NORMAL_MODEL = + "update WH_WARNING set STATES=2 where WAREHOUSE_TYPE=? and BASE_WAREHOUSE_ID=?"; - private int kuCunNormalModel(Short warehouseType, Long warehouseId, List<Long> baseModelIdList) { - if (CollectionUtils.isEmpty(baseModelIdList)) { + /** + * @param warehouseType + * @param warehouseId + * @param normalBaseModelIdList 搴撳瓨姝e父鐨� + * @return + */ + private int kuCunNormalModel(Short warehouseType, Long warehouseId, List<Long> normalBaseModelIdList) { + if (CollectionUtils.isEmpty(normalBaseModelIdList)) { return 1; } ArrayList<Object> params = new ArrayList<>(); @@ -114,9 +132,9 @@ params.add(warehouseId); StringBuilder sql = new StringBuilder(KU_CUN_NORMAL_MODEL); - if (!org.springframework.util.CollectionUtils.isEmpty(baseModelIdList)) { - sql.append(" and BASE_GOODS_MODELS_ID in(?)"); - params.add(baseModelIdList); + if (!org.springframework.util.CollectionUtils.isEmpty(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()); } -- Gitblit v1.9.1