From be96b79932aaaf0bd6a1c143e6f1d045c6a8935a Mon Sep 17 00:00:00 2001 From: futian.liu <liufutianyoo@163.com> Date: 星期四, 07 十二月 2023 16:16:05 +0800 Subject: [PATCH] 分发列表去重 --- consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java | 87 +++++++++++++++++++++++++------------------ 1 files changed, 51 insertions(+), 36 deletions(-) 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 f585a74..953aa85 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 @@ -1,14 +1,18 @@ package com.consum.base.service; -import com.consum.base.util.IdUtil; -import com.consum.model.po.LWhFormInventoryGoods; -import com.walker.jdbc.service.BaseServiceImpl; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; - import java.util.ArrayList; import java.util.List; -import java.util.Map; + +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.pojo.response.FormInventoryGoodsVO; +import com.consum.model.po.LWhFormInventoryGoods; +import com.walker.jdbc.service.BaseServiceImpl; + +import lombok.extern.slf4j.Slf4j; /** * @Description 鐩樼偣鍗曠墿鍝� @@ -17,13 +21,14 @@ */ @Slf4j @Service +@Transactional(propagation = Propagation.REQUIRED) public class LWhFormInventoryGoodsServiceImpl extends BaseServiceImpl { /** - * @Description 鏍规嵁鐩樼偣鍗昳d鏌ヨ鐩樼偣鍗曠墿鍝� + * @return + * @Description 鏍规嵁鐩樼偣鍗昳d鏌ヨ鐩樼偣鍗曠墿鍝� * @Author 鍗㈠簡闃� * @Date 2023/10/31 - * @return */ public List<LWhFormInventoryGoods> getByInventoryId(Long id) { LWhFormInventoryGoods inventoryGoods = new LWhFormInventoryGoods(); @@ -31,36 +36,46 @@ return this.select(inventoryGoods); } - /** - * @Description 鏂板鐩樼偣鍗曠墿鍝佽褰� - * @Author 鍗㈠簡闃� - * @Date 2023/10/31 - * @return - */ - public int add(List<Map<String, Object>> list, Long warehouseId) { - List<LWhFormInventoryGoods> inventoryGoodsList = new ArrayList<>(); - for (Map<String, Object> map : list) { - LWhFormInventoryGoods inventoryGoods = new LWhFormInventoryGoods(); - inventoryGoods.setId(IdUtil.generateId()); - inventoryGoods.setWhFormInventoryId(warehouseId); - inventoryGoods.setBaseGoodsTemplateId((Long) map.get("id")); - inventoryGoods.setGoodsTemplateName((String) map.get("goodsname")); - inventoryGoods.setUnit((String) map.get("unit")); - inventoryGoods.setBaseGoodsModelsId((Long) map.get("modelsid")); - inventoryGoods.setBaseGoodsModelsName((String) map.get("goodsTemplateId")); - inventoryGoods.setInitCounts((Integer) map.get("endcount")); - - inventoryGoodsList.add(inventoryGoods); + public List<FormInventoryGoodsVO> add(List<FormInventoryGoodsVO> inventoryGoodsList, Long inventoryId) { + List<LWhFormInventoryGoods> goodsList = new ArrayList<>(); + for (FormInventoryGoodsVO inventoryGoods : inventoryGoodsList) { + LWhFormInventoryGoods lWhFormInventoryGoods = new LWhFormInventoryGoods(); + lWhFormInventoryGoods.setId(IdUtil.generateId()); + lWhFormInventoryGoods.setWhFormInventoryId(inventoryId); + lWhFormInventoryGoods.setBaseGoodsTemplateId(inventoryGoods.getBaseGoodsTemplateId()); + lWhFormInventoryGoods.setGoodsTemplateName(inventoryGoods.getGoodsTemplateName()); + lWhFormInventoryGoods.setUnit(inventoryGoods.getUnit()); + lWhFormInventoryGoods.setBaseGoodsModelsId(inventoryGoods.getId()); + lWhFormInventoryGoods.setBaseGoodsModelsName(inventoryGoods.getBaseGoodsModelsName()); + lWhFormInventoryGoods.setInitCounts(inventoryGoods.getInventoryCount()); + // 淇濆瓨鎴愬姛鍚庤繑鍥瀒d,鐢ㄦ潵杩涜璁板綍鐨勬洿鏂� + inventoryGoods.setId(lWhFormInventoryGoods.getId()); + goodsList.add(lWhFormInventoryGoods); } - return this.insert(inventoryGoodsList); + this.insert(goodsList); + return inventoryGoodsList; } - /** - * @Description 鏍规嵁鐩樼偣鍗昳d鍒犻櫎鐩樼偣鍗曠墿鍝� - * @Author 鍗㈠簡闃� - * @Date 2023/10/31 - */ - public void delByFormInventoryId(Long id) { + public int updateInventoryGoods(List<FormInventoryGoodsVO> inventoryGoodsList) { + List<LWhFormInventoryGoods> goodsList = new ArrayList<>(); + for (FormInventoryGoodsVO inventoryGoods : inventoryGoodsList) { + LWhFormInventoryGoods lWhFormInventoryGoods = new LWhFormInventoryGoods(); + lWhFormInventoryGoods.setId(inventoryGoods.getId()); + Integer inventoryCount = inventoryGoods.getInventoryCount(); + Integer realNum = inventoryGoods.getRealNum(); + if (realNum != null) { + int errorCount = realNum - inventoryCount; + lWhFormInventoryGoods.setInventoryCounts(realNum); + lWhFormInventoryGoods.setErrorCounts(Math.abs(errorCount)); + // 鐩樼偣缁撴灉锛�1=姝e父锛�2=鐩樼泩锛�3=鐩樹簭锛� + lWhFormInventoryGoods.setInventoryResult((errorCount > 0) ? 2 : (errorCount < 0) ? 3 : 1); + // TODO 鎵归噺鏇存柊 + this.update(lWhFormInventoryGoods); + // goodsList.add(lWhFormInventoryGoods); + } + } + return 1; } + } -- Gitblit v1.9.1