futian.liu
2023-12-07 76c7d995ac56b60880e998df5e9e3d82fea313f8
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;
@@ -116,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;
@@ -134,26 +137,35 @@
        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) {
    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 "
                + "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 pm.BUSINESS_ID = :businessId";
            "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<>();
        paramMap.put("businessId", businessId);
        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);
            goodsModelList.add(goodsModelVO);
            if (Objects.nonNull(goodsModelVO)) {
                goodsModelList.add(goodsModelVO);
            }
        });
        return goodsModelList;
    }