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/impl/LWhProcureModelServiceImpl.java |   36 ++++++++++++++++++++++++++++++++++--
 1 files changed, 34 insertions(+), 2 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/service/impl/LWhProcureModelServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/LWhProcureModelServiceImpl.java
index e2564bd..5c55c44 100644
--- a/consum-base/src/main/java/com/consum/base/service/impl/LWhProcureModelServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/LWhProcureModelServiceImpl.java
@@ -3,6 +3,7 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 
 import org.apache.commons.compress.utils.Lists;
 import org.springframework.stereotype.Service;
@@ -10,6 +11,7 @@
 import com.consum.base.core.WhBusinessEnum;
 import com.consum.base.core.utils.MapUtils;
 import com.consum.base.core.utils.MapperUtil;
+import com.consum.base.pojo.dto.GoodModelInfoDTO;
 import com.consum.base.pojo.response.GoodsTemplateCountVO;
 import com.consum.base.service.LWhProcureModelService;
 import com.consum.model.po.LWhProcureModel;
@@ -115,7 +117,9 @@
         List<Map<String, Object>> select = this.select(sql, param, new MapperUtil());
         select.forEach(item -> {
             GoodsTemplateCountVO goodsModelVO = MapUtils.convertMapToObj(item, GoodsTemplateCountVO.class);
-            goodsTemplateCount.add(goodsModelVO);
+            if (Objects.nonNull(goodsModelVO)) {
+                goodsTemplateCount.add(goodsModelVO);
+            }
         });
 
         return goodsTemplateCount;
@@ -133,8 +137,36 @@
         List<Map<String, Object>> procureModelList = this.select(sql, paramMap, new MapperUtil());
         for (Map<String, Object> map : procureModelList) {
             GoodsTemplateCountVO goodsTemplateCountVO = MapUtils.convertMapToObj(map, GoodsTemplateCountVO.class);
-            goodsTemplateCount.add(goodsTemplateCountVO);
+            if (Objects.nonNull(goodsTemplateCountVO)) {
+                goodsTemplateCount.add(goodsTemplateCountVO);
+            }
         }
         return goodsTemplateCount;
     }
+
+    @Override
+    public List<GoodModelInfoDTO> getGoodsModelListByBusinessId(Long businessId, Long procureGoodId) {
+        // 鏌ヨ鍨嬪彿鍒楄〃淇℃伅
+        List<GoodModelInfoDTO> goodsModelList = Lists.newArrayList();
+        String sql =
+            "SELECT bgt.id baseGoodsTemplateId,pm.id,CATEGORY_ID,CATEGORY_NAME,GOODS_NAME baseGoodsName,pm.BASE_GOODS_MODELS_NAME,bgm.UNIT,COUNTS,total_amount, "
+                + "pm.BASE_GOODS_MODELS_ID,PRICE,WOREHOUSE_COUNT,bgt.CLASSIFICATION type FROM l_wh_procure_model pm LEFT JOIN base_goods_models bgm ON bgm.id = pm.BASE_GOODS_MODELS_ID "
+                + "LEFT JOIN base_goods_template bgt ON bgt.id = bgm.GOODS_TEMPLATES_ID WHERE ";
+        Map<String, Object> paramMap = new HashMap<>();
+        if (businessId != null) {
+            sql += "pm.BUSINESS_ID = :businessId ";
+            paramMap.put("businessId", businessId);
+        } else {
+            sql += "pm.FROM_PROCURE_GOODS_ID =:procureGoodId ";
+            paramMap.put("procureGoodId", procureGoodId);
+        }
+        List<Map<String, Object>> modelList = select(sql, paramMap, new MapperUtil());
+        modelList.forEach(item -> {
+            GoodModelInfoDTO goodsModelVO = MapUtils.convertMapToObj(item, GoodModelInfoDTO.class);
+            if (Objects.nonNull(goodsModelVO)) {
+                goodsModelList.add(goodsModelVO);
+            }
+        });
+        return goodsModelList;
+    }
 }

--
Gitblit v1.9.1