From ceecebe477faf5a45b19f3b258f7add8f93b4583 Mon Sep 17 00:00:00 2001
From: futian.liu <liufutianyoo@163.com>
Date: 星期二, 05 十二月 2023 10:00:24 +0800
Subject: [PATCH] 代码优化 结构调整

---
 consum-base/src/main/java/com/consum/base/service/impl/LWhFormScrappedServiceImpl.java |  198 +++++++++++++++++++++++++++++--------------------
 1 files changed, 117 insertions(+), 81 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormScrappedServiceImpl.java
similarity index 71%
rename from consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java
rename to consum-base/src/main/java/com/consum/base/service/impl/LWhFormScrappedServiceImpl.java
index aa78516..9a3e556 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormScrappedServiceImpl.java
@@ -1,4 +1,18 @@
-package com.consum.base.service;
+package com.consum.base.service.impl;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+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 com.consum.base.core.CodeGeneratorEnum;
 import com.consum.base.core.CodeGeneratorService;
@@ -14,7 +28,17 @@
 import com.consum.base.pojo.response.FormScrappedGoodsDetailVO;
 import com.consum.base.pojo.response.FormScrappedGoodsVO;
 import com.consum.base.pojo.response.GoodsModelVO;
+import com.consum.base.pojo.response.GoodsTemplateCountVO;
 import com.consum.base.pojo.response.LWhFormScrappedExtendVO;
+import com.consum.base.service.BaseGoodsModelsService;
+import com.consum.base.service.BaseGoodsTemplateService;
+import com.consum.base.service.BaseWarehouseService;
+import com.consum.base.service.FinSysTenantDepartmentService;
+import com.consum.base.service.LWhFormScrappedCoreService;
+import com.consum.base.service.LWhFormScrappedGoodsService;
+import com.consum.base.service.LWhFormScrappedService;
+import com.consum.base.service.LWhGoodsService;
+import com.consum.base.service.SDictDataServiceImpl;
 import com.consum.model.po.BaseGoodsModels;
 import com.consum.model.po.BaseGoodsTemplate;
 import com.consum.model.po.BaseWarehouse;
@@ -27,18 +51,6 @@
 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.Optional;
-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;
 
 /**
  * @Description 鎶ュ簾鍗�
@@ -46,7 +58,7 @@
  * @Date 2023/11/1
  */
 @Service
-public class LWhFormScrappedServiceImpl extends BaseServiceImpl {
+public class LWhFormScrappedServiceImpl extends BaseServiceImpl implements LWhFormScrappedService {
 
     @Autowired
     private CodeGeneratorService codeGeneratorService;
@@ -67,25 +79,27 @@
     @Autowired
     private LWhFormScrappedCoreService lWhFormScrappedCoreService;
 
-    private static String QUERY_LIST = "SELECT DISTINCT fs.* FROM l_wh_form_scrapped fs left join l_wh_form_scrapped_goods fsg on fs.id = fsg.FORM_SCRAPPED_ID WHERE 1 = 1 ";
+    private static String QUERY_LIST =
+        "SELECT DISTINCT fs.* FROM l_wh_form_scrapped fs left join l_wh_form_scrapped_goods fsg on fs.id = fsg.FORM_SCRAPPED_ID WHERE 1 = 1 ";
 
-    private static final String QUERY_BF_DETAIL_LIST = "select fs.id,fs.BUSINESS_FORM_CODE,fsg.GOODS_TEMPLATE_NAME,fsg.BASE_GOODS_MODELS_NAME,fsg.COUNTS,"
-        + "fs.AGENCY_NAME,OPERATOR_NAME,DEAL_TIME from l_wh_form_scrapped fs "
-        + "inner join l_wh_form_scrapped_goods fsg on fs.ID = fsg.FORM_SCRAPPED_ID where 1=1 ";
+    private static final String QUERY_BF_DETAIL_LIST =
+        "select fs.id,fs.BUSINESS_FORM_CODE,fsg.GOODS_TEMPLATE_NAME,fsg.BASE_GOODS_MODELS_NAME,fsg.COUNTS,"
+            + "fs.AGENCY_NAME,OPERATOR_NAME,DEAL_TIME from l_wh_form_scrapped fs "
+            + "inner join l_wh_form_scrapped_goods fsg on fs.ID = fsg.FORM_SCRAPPED_ID where 1=1 ";
 
     /**
      * 鏂板
      *
      * @param param
      * @param currentUser 褰撳墠鐧诲綍鐢ㄦ埛
-     * @param sysInfo     褰撳墠鐧诲綍鐢ㄦ埛
-     * @return 1.鏂板鎶ュ簾鍗�  2.鏂板鎶ュ簾鍗曠墿鍝�
+     * @param sysInfo 褰撳墠鐧诲綍鐢ㄦ埛
+     * @return 1.鏂板鎶ュ簾鍗� 2.鏂板鎶ュ簾鍗曠墿鍝�
      */
-
+    @Override
     public int add(LWhFormScrappedParam param, S_user_core currentUser, FinSysTenantUser sysInfo) {
-        //1.鏂板鎶ュ簾鍗曡褰�
+        // 1.鏂板鎶ュ簾鍗曡褰�
         LWhFormScrapped lWhFormScrapped = new LWhFormScrapped();
-        //鎶ュ簾鍗昳d
+        // 鎶ュ簾鍗昳d
         long lWhFormScrappedId = IdUtil.generateId();
         lWhFormScrapped.setId(lWhFormScrappedId);
         lWhFormScrapped.setBusinessFormCode(codeGeneratorService.createBusinessFormCode(CodeGeneratorEnum.Scrapped));
@@ -93,10 +107,10 @@
 
         // 鍏敤
         Long warehouseId = null;
-        //浠撳簱鍚嶇О
+        // 浠撳簱鍚嶇О
         String wareHouseName = null;
         warehouseId = param.getWarehouseId();
-        //鏍规嵁浠撳簱id鏌ヨ浠撳簱
+        // 鏍规嵁浠撳簱id鏌ヨ浠撳簱
         BaseWarehouse warehouse = this.baseWarehouseService.getById(warehouseId);
         if (warehouse == null) {
             log.error("浠撳簱涓嶅瓨鍦�");
@@ -112,7 +126,7 @@
         lWhFormScrapped.setDealTime(param.getDealTime());
         lWhFormScrapped.setStates(0);
         lWhFormScrapped.setUploadFiles(param.getUploadFiles());
-        //鏍规嵁閮ㄩ棬id鏌ヨ閮ㄩ棬
+        // 鏍规嵁閮ㄩ棬id鏌ヨ閮ㄩ棬
         FinSysTenantDepartment department = this.departmentService.getById(sysInfo.getSysDeptId());
         if (department != null) {
             lWhFormScrapped.setDepartmentId(sysInfo.getSysDeptId());
@@ -123,10 +137,11 @@
             log.error("鏂板鎶ュ簾鍗曞け璐�");
             return 0;
         }
-        //2.鏂板鎶ュ簾鍗曠墿鍝佽褰�
-        //鏍规嵁鐗╁搧id鏌ヨ鐗╁搧
+        // 2.鏂板鎶ュ簾鍗曠墿鍝佽褰�
+        // 鏍规嵁鐗╁搧id鏌ヨ鐗╁搧
         for (LWhFormScrappedGoodsInfoParam goodsInfo : param.getScrappedGoodsInfo()) {
-            BaseGoodsTemplate goodsTemplate = this.baseGoodsTemplateService.get(new BaseGoodsTemplate(goodsInfo.getBaseGoodsTemplateId()));
+            BaseGoodsTemplate goodsTemplate =
+                this.baseGoodsTemplateService.get(new BaseGoodsTemplate(goodsInfo.getBaseGoodsTemplateId()));
             if (goodsTemplate == null) {
                 log.error("璇ョ墿鍝佹ā鏉夸笉瀛樺湪");
                 return 0;
@@ -136,40 +151,45 @@
                 log.error("鏂板鎶ュ簾鍗曠墿鍝佽褰曞け璐�");
                 return 0;
             }
-            //鑾峰彇瑙勬牸鍨嬪彿id
-            List<Long> baseGoodsModelsIdList = scrappedGoodsParamList.stream().map(params -> params.getBaseGoodsModelsId()).collect(Collectors.toList());
-            //鏍规嵁瑙勬牸鍨嬪彿id鏌ヨ瑙勬牸鍨嬪彿
+            // 鑾峰彇瑙勬牸鍨嬪彿id
+            List<Long> baseGoodsModelsIdList = scrappedGoodsParamList.stream()
+                .map(params -> params.getBaseGoodsModelsId()).collect(Collectors.toList());
+            // 鏍规嵁瑙勬牸鍨嬪彿id鏌ヨ瑙勬牸鍨嬪彿
             List<BaseGoodsModels> models = this.baseGoodsModelsService.selectByModelsIdList(baseGoodsModelsIdList);
             if (CollectionUtils.isEmpty(models)) {
                 log.error("璇ュ瀷鍙峰晢鍝佷笉瀛樺湪");
                 return 0;
             }
-            Map<Long, BaseGoodsModels> modelMap = models.stream().collect(Collectors.toMap(model -> model.getId(), model -> model));
-            //鑾峰彇鎶ュ簾鍘熷洜code
-            List<String> scrappedCodeList = scrappedGoodsParamList.stream().map(params -> params.getScrappedCode()).collect(Collectors.toList());
-            //鏍规嵁鎶ュ簾鍘熷洜code鏌ヨ鏁版嵁瀛楀吀
+            Map<Long, BaseGoodsModels> modelMap =
+                models.stream().collect(Collectors.toMap(model -> model.getId(), model -> model));
+            // 鑾峰彇鎶ュ簾鍘熷洜code
+            List<String> scrappedCodeList =
+                scrappedGoodsParamList.stream().map(params -> params.getScrappedCode()).collect(Collectors.toList());
+            // 鏍规嵁鎶ュ簾鍘熷洜code鏌ヨ鏁版嵁瀛楀吀
             List<SDictData> SDictDataList = this.sDictDataService.selectByScrappedCodeList(scrappedCodeList);
-            Map<Long, String> scrappedNameMap = SDictDataList.stream().collect(Collectors.toMap(s -> s.getDict_code(), s -> s.getDict_label()));
+            Map<Long, String> scrappedNameMap =
+                SDictDataList.stream().collect(Collectors.toMap(s -> s.getDict_code(), s -> s.getDict_label()));
 
             List<LWhFormScrappedGoods> scrappedGoodsList = new ArrayList<>();
             for (LWhFormScrappedGoodsModelParams params : scrappedGoodsParamList) {
                 LWhFormScrappedGoods scrappedGoods = new LWhFormScrappedGoods();
                 scrappedGoods.setId(IdUtil.generateId());
-                //鏍规嵁鐗╁搧鍨嬪彿鏌ヨ鐗╁搧搴撳瓨
-                int goodsNum = this.lWhGoodsService.queryGoodsModelNum(0, warehouseId, scrappedGoods.getBaseGoodsModelsId(), 1, null);
+                // 鏍规嵁鐗╁搧鍨嬪彿鏌ヨ鐗╁搧搴撳瓨
+                int goodsNum = this.lWhGoodsService.queryGoodsModelNum(0, warehouseId,
+                    scrappedGoods.getBaseGoodsModelsId(), 1, null);
                 if (params.getCounts() > goodsNum) {
                     log.error("鎶ュ簾鏁伴噺澶т簬搴撳瓨鏁伴噺");
                     return 0;
                 }
                 scrappedGoods.setCounts(params.getCounts());
-                //鎶ュ簾鍘熷洜
+                // 鎶ュ簾鍘熷洜
                 scrappedGoods.setScrappedCode(params.getScrappedCode());
                 scrappedGoods.setScrappedName(scrappedNameMap.get(Long.valueOf(params.getScrappedCode())));
                 scrappedGoods.setFormScrappedId(lWhFormScrappedId);
-                //鐗╁搧妯℃澘
+                // 鐗╁搧妯℃澘
                 scrappedGoods.setBaseGoodsTemplateId(goodsTemplate.getId());
                 scrappedGoods.setGoodsTemplateName(goodsTemplate.getGoodsName());
-                //瑙勬牸鍨嬪彿
+                // 瑙勬牸鍨嬪彿
                 Long baseGoodsModelsId = params.getBaseGoodsModelsId();
                 BaseGoodsModels baseGoodsModels = modelMap.get(baseGoodsModelsId);
                 if (baseGoodsModels != null) {
@@ -187,8 +207,9 @@
                 return 0;
             }
         }
-        //3.鏍规嵁鎶ュ簾鍗曟姤搴熺墿鍝�
-        Long lWarehouseFlowId = this.lWhFormScrappedCoreService.outFormByTransId(lWhFormScrappedId, currentUser, param.getDealTime());
+        // 3.鏍规嵁鎶ュ簾鍗曟姤搴熺墿鍝�
+        Long lWarehouseFlowId =
+            this.lWhFormScrappedCoreService.outFormByTransId(lWhFormScrappedId, currentUser, param.getDealTime());
         if (lWarehouseFlowId == null) {
             log.error("鏍规嵁鍑哄簱鍗曞嚭搴� 澶辫触");
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -203,27 +224,29 @@
      * @Author 鍗㈠簡闃�
      * @Date 2023/11/2
      */
+    @Override
     public PageUtil queryList(LWhFormScrappedQry param, FinSysTenantUser sysInfo) {
         HashMap<String, Object> paramts = new HashMap<>();
         StringBuilder sql = new StringBuilder(QUERY_LIST);
-        //鎶ュ簾鍗曞彿
+        // 鎶ュ簾鍗曞彿
         if (!StringUtils.isEmpty(param.getBusinessFormCode())) {
             sql.append("and BUSINESS_FORM_CODE = :businessFormCode ");
             paramts.put("businessFormCode", param.getBusinessFormCode());
         }
-        //鐗╁搧鍚嶇О
+        // 鐗╁搧鍚嶇О
         if (!StringUtils.isEmpty(param.getGoodsTemplateName())) {
             sql.append("and fsg.GOODS_TEMPLATE_NAME LIKE :goodsTemplateName ");
-            paramts.put("goodsTemplateName", StringUtils.CHAR_PERCENT + param.getGoodsTemplateName() + StringUtils.CHAR_PERCENT);
+            paramts.put("goodsTemplateName",
+                StringUtils.CHAR_PERCENT + param.getGoodsTemplateName() + StringUtils.CHAR_PERCENT);
         }
-        //鏈烘瀯
+        // 鏈烘瀯
         sql.append("and AGENCY_ID like :agencyId ");
         if (param.getAgencyId() != null) {
             paramts.put("agencyId", param.getAgencyId() + StringUtils.CHAR_PERCENT);
         } else {
             paramts.put("agencyId", sysInfo.getTenantId() + StringUtils.CHAR_PERCENT);
         }
-        //鎶ュ簾鏃堕棿
+        // 鎶ュ簾鏃堕棿
         if (param.getStartTime() != null) {
             sql.append("and DEAL_TIME >=:dealTimeStart ");
             paramts.put("dealTimeStart", param.getStartTime() * 1000000);
@@ -243,18 +266,20 @@
      * @Author 鍗㈠簡闃�
      * @Date 2023/11/2
      */
+    @Override
     public LWhFormScrappedExtendVO getById(Long id) {
         LWhFormScrappedExtendVO scrappedExtend = new LWhFormScrappedExtendVO();
-        //1.鏌ヨ鎶ュ簾鍗�
+        // 1.鏌ヨ鎶ュ簾鍗�
         LWhFormScrapped lWhFormScrapped = this.get(new LWhFormScrapped(id));
         if (lWhFormScrapped != null) {
             BeanUtils.copyProperties(lWhFormScrapped, scrappedExtend);
         }
-        //2.鏌ヨ鎶ュ簾鍗�
+        // 2.鏌ヨ鎶ュ簾鍗�
         List<LWhFormScrappedGoods> scrappedGoodsList = this.scrappedGoodsService.getByFormScrappedId(id);
-        //閫氳繃baseGoodsTemplateId 杩涜鍒嗙粍
-        Map<Long, List<LWhFormScrappedGoods>> map = scrappedGoodsList.stream().collect(Collectors.groupingBy(LWhFormScrappedGoods::getBaseGoodsTemplateId));
-        //寰幆map鐨刱ey鍜寁alue
+        // 閫氳繃baseGoodsTemplateId 杩涜鍒嗙粍
+        Map<Long, List<LWhFormScrappedGoods>> map =
+            scrappedGoodsList.stream().collect(Collectors.groupingBy(LWhFormScrappedGoods::getBaseGoodsTemplateId));
+        // 寰幆map鐨刱ey鍜寁alue
         List<FormScrappedGoodsVO> scrappedGoodsVO = Lists.newArrayList();
         for (Map.Entry<Long, List<LWhFormScrappedGoods>> entry : map.entrySet()) {
             Long baseGoodsTemplateId = entry.getKey();
@@ -299,39 +324,41 @@
      * @param param
      * @return
      */
+    @Override
     public PageUtil queryDetailList(LWhFormScrappedQry param, FinSysTenantUser sysInfo) {
         StringBuilder sql = new StringBuilder(QUERY_BF_DETAIL_LIST);
         HashMap<String, Object> paramts = new HashMap<>();
 
-        //鎶ュ簾鍗曞彿
+        // 鎶ュ簾鍗曞彿
         if (!StringUtils.isEmpty(param.getBusinessFormCode())) {
             sql.append("and BUSINESS_FORM_CODE =:BUSINESS_FORM_CODE ");
             paramts.put("BUSINESS_FORM_CODE", param.getBusinessFormCode());
         }
-        //鐗╁搧鍚嶇О
+        // 鐗╁搧鍚嶇О
         if (!StringUtils.isEmpty(param.getGoodsTemplateName())) {
             sql.append("and GOODS_TEMPLATE_NAME like:GOODS_TEMPLATE_NAME ");
-            paramts.put("GOODS_TEMPLATE_NAME", StringUtils.CHAR_PERCENT + param.getGoodsTemplateName() + StringUtils.CHAR_PERCENT);
+            paramts.put("GOODS_TEMPLATE_NAME",
+                StringUtils.CHAR_PERCENT + param.getGoodsTemplateName() + StringUtils.CHAR_PERCENT);
         }
-        //瑙勬牸鍨嬪彿
+        // 瑙勬牸鍨嬪彿
         if (param.getBaseGoodsModelsId() != null) {
             sql.append("and BASE_GOODS_MODELS_ID =:BASE_GOODS_MODELS_ID ");
             paramts.put("BASE_GOODS_MODELS_ID", param.getBaseGoodsModelsId());
         }
-        //鏈烘瀯
+        // 鏈烘瀯
         sql.append("and AGENCY_ID like:AGENCY_ID ");
         if (param.getAgencyId() != null) {
             paramts.put("AGENCY_ID", param.getAgencyId() + StringUtils.CHAR_PERCENT);
         } else {
             paramts.put("AGENCY_ID", sysInfo.getTenantId() + StringUtils.CHAR_PERCENT);
         }
-        //鍒涘缓浜�
+        // 鍒涘缓浜�
         if (!StringUtils.isEmpty(param.getOperatorName())) {
             sql.append("and OPERATOR_NAME =:OPERATOR_NAME ");
             paramts.put("OPERATOR_NAME", StringUtils.CHAR_PERCENT + param.getOperatorName() + StringUtils.CHAR_PERCENT);
         }
 
-        //缁撴潫鏃堕棿
+        // 缁撴潫鏃堕棿
         if (param.getStartTime() != null) {
             sql.append("and DEAL_TIME >=:dealTimeStart ");
             paramts.put("dealTimeStart", param.getStartTime() * 1000000);
@@ -342,35 +369,27 @@
         }
 
         sql.append("ORDER BY DEAL_TIME DESC ");
-        GenericPager<Map<String, Object>> mapGenericPager = selectSplit(sql.toString(), paramts, param.getPageNum(), param.getPageSize(), new MapperUtil());
+        GenericPager<Map<String, Object>> mapGenericPager =
+            selectSplit(sql.toString(), paramts, param.getPageNum(), param.getPageSize(), new MapperUtil());
         PageUtil pageUtil = new PageUtil<>(mapGenericPager);
         List<FormScrappedGoodsDetailVO> result = Lists.newArrayList();
         mapGenericPager.getDatas().forEach(item -> {
-            FormScrappedGoodsDetailVO formScrappedGoodsDetailVO = MapUtils.convertMapToObj(item, FormScrappedGoodsDetailVO.class);
+            FormScrappedGoodsDetailVO formScrappedGoodsDetailVO =
+                MapUtils.convertMapToObj(item, FormScrappedGoodsDetailVO.class);
             result.add(formScrappedGoodsDetailVO);
         });
         pageUtil.setDatas(result);
         return pageUtil;
     }
 
+    @Override
     public List<ScrappedInfoExcelTemplate> export(Long id) {
-        String sql =
-            "SELECT\n"
-                + "\tBUSINESS_FORM_CODE,\n"
-                + "\tfs.DEAL_TIME,\n"
-                + "\tOPERATOR_NAME,\n"
-                + "\tAGENCY_NAME tenantName,\n"
-                + "\tGOODS_TEMPLATE_NAME templateName,\n"
-                + "\tBASE_GOODS_MODELS_NAME baseModelName,\n"
-                + "\tCOUNTS num,\n"
-                + "\tSCRAPPED_NAME deception,\n"
-                + "\tBEIZ remark\n"
-                + "FROM\n"
-                + "\tl_wh_form_scrapped_goods fsg\n"
-                + "\tLEFT JOIN l_wh_form_scrapped fs ON fs.id = fsg.FORM_SCRAPPED_ID\n"
-                + "WHERE\n"
-                + "\tfs.ID = :id\n"
-                + "\tAND STATES = 1";
+        String sql = "SELECT\n" + "\tBUSINESS_FORM_CODE,\n" + "\tfs.DEAL_TIME,\n" + "\tOPERATOR_NAME,\n"
+            + "\tAGENCY_NAME tenantName,\n" + "\tGOODS_TEMPLATE_NAME templateName,\n"
+            + "\tBASE_GOODS_MODELS_NAME baseModelName,\n" + "\tCOUNTS num,\n" + "\tSCRAPPED_NAME deception,\n"
+            + "\tBEIZ remark\n" + "FROM\n" + "\tl_wh_form_scrapped_goods fsg\n"
+            + "\tLEFT JOIN l_wh_form_scrapped fs ON fs.id = fsg.FORM_SCRAPPED_ID\n" + "WHERE\n" + "\tfs.ID = :id\n"
+            + "\tAND STATES = 1";
         Map<String, Object> param = new HashMap<>();
         param.put("id", id);
         List<Map<String, Object>> select = this.select(sql, param, new MapperUtil());
@@ -379,11 +398,28 @@
         }
         List<ScrappedInfoExcelTemplate> list = Lists.newArrayList();
         select.forEach(item -> {
-            ScrappedInfoExcelTemplate inventoryExcelTemplate = MapUtils.convertMapToObj(item, ScrappedInfoExcelTemplate.class);
+            ScrappedInfoExcelTemplate inventoryExcelTemplate =
+                MapUtils.convertMapToObj(item, ScrappedInfoExcelTemplate.class);
             list.add(inventoryExcelTemplate);
         });
         return list;
     }
 
+    @Override
+    public List<GoodsTemplateCountVO> getScrappedCountByBusinessId(Long businessId) {
+        List<GoodsTemplateCountVO> goodsTemplateCount = Lists.newArrayList();
+        // 缁熻鍨嬪彿鏁伴噺
+        String sql =
+            "SELECT fsg.BASE_GOODS_TEMPLATE_ID id,fsg.GOODS_TEMPLATE_NAME goodsName,sum(counts) count FROM l_wh_form_scrapped fs left join l_wh_form_scrapped_goods fsg on fs.id = fsg.FORM_SCRAPPED_ID "
+                + "where fsg.FORM_SCRAPPED_ID =:businessId group by fsg.BASE_GOODS_TEMPLATE_ID";
+        Map<String, Object> paramMap = new HashMap<>();
+        paramMap.put("businessId", businessId);
+        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);
+        }
+        return goodsTemplateCount;
+    }
 
 }

--
Gitblit v1.9.1