From 01107e8aadfaf1e84a971d8eeb9ab37e1c5569f3 Mon Sep 17 00:00:00 2001
From: cy <1664593601@qq.com>
Date: 星期五, 01 十二月 2023 09:38:56 +0800
Subject: [PATCH] feat: 部门退回/报废公用接口

---
 consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java |  126 ++++++++++++++++++++++++------------------
 1 files changed, 72 insertions(+), 54 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/LWhFormScrappedServiceImpl.java
index 108907d..5fb144f 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java
@@ -9,6 +9,7 @@
 import com.consum.base.pojo.LWhFormScrappedGoodsInfoParam;
 import com.consum.base.pojo.LWhFormScrappedGoodsModelParams;
 import com.consum.base.pojo.LWhFormScrappedParam;
+import com.consum.base.pojo.excel.ScrappedInfoExcelTemplate;
 import com.consum.base.pojo.query.LWhFormScrappedQry;
 import com.consum.base.pojo.response.FormScrappedGoodsDetailVO;
 import com.consum.base.pojo.response.FormScrappedGoodsVO;
@@ -26,10 +27,7 @@
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 import org.springframework.util.CollectionUtils;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -59,7 +57,7 @@
     @Autowired
     private LWhFormScrappedCoreService lWhFormScrappedCoreService;
 
-    private static String QUERY_LIST = "SELECT 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 "
@@ -74,37 +72,46 @@
      * @return 1.鏂板鎶ュ簾鍗�  2.鏂板鎶ュ簾鍗曠墿鍝�
      */
 
-    public int add(LWhFormScrappedParam param, int warehouseType, S_user_core currentUser, FinSysTenantUser sysInfo) {
+    public int add(LWhFormScrappedParam param,  S_user_core currentUser, FinSysTenantUser sysInfo) {
         //1.鏂板鎶ュ簾鍗曡褰�
         LWhFormScrapped lWhFormScrapped = new LWhFormScrapped();
         //鎶ュ簾鍗昳d
         long lWhFormScrappedId = IdUtil.generateId();
         lWhFormScrapped.setId(lWhFormScrappedId);
         lWhFormScrapped.setBusinessFormCode(codeGeneratorService.createBusinessFormCode(CodeGeneratorEnum.Scrapped));
-        lWhFormScrapped.setWarehouseType(warehouseType);
+        lWhFormScrapped.setWarehouseType(0);
+
         // 鍏敤
         Long warehouseId = null;
         //浠撳簱鍚嶇О
         String wareHouseName = null;
-        if (warehouseType == 0){
-            warehouseId = param.getWarehouseId();
-            //鏍规嵁浠撳簱id鏌ヨ浠撳簱
-            BaseWarehouse warehouse = this.baseWarehouseService.getById(warehouseId);
-            if (warehouse == null) {
-                log.error("浠撳簱涓嶅瓨鍦�");
-                return 0;
-            }
-            wareHouseName = warehouse.getWarehouseName();
-        } else {
-            // 鏌ヨ閮ㄩ棬鍚嶇О
-            warehouseId = param.getDepartmentId();
-            FinSysTenantDepartment sysTenantDepartment = departmentService.getById(warehouseId);
-            if (sysTenantDepartment == null) {
-                log.error("閮ㄩ棬涓嶅瓨鍦�");
-                return 0;
-            }
-            wareHouseName = sysTenantDepartment.getName();
+        warehouseId = param.getWarehouseId();
+        //鏍规嵁浠撳簱id鏌ヨ浠撳簱
+        BaseWarehouse warehouse = this.baseWarehouseService.getById(warehouseId);
+        if (warehouse == null) {
+            log.error("浠撳簱涓嶅瓨鍦�");
+            return 0;
         }
+        wareHouseName = warehouse.getWarehouseName();
+//        if (0 == 0) {
+//            warehouseId = param.getWarehouseId();
+//            //鏍规嵁浠撳簱id鏌ヨ浠撳簱
+//            BaseWarehouse warehouse = this.baseWarehouseService.getById(warehouseId);
+//            if (warehouse == null) {
+//                log.error("浠撳簱涓嶅瓨鍦�");
+//                return 0;
+//            }
+//            wareHouseName = warehouse.getWarehouseName();
+//        } else {
+//            // 鏌ヨ閮ㄩ棬鍚嶇О
+//            warehouseId = param.getDepartmentId();
+//            FinSysTenantDepartment sysTenantDepartment = departmentService.getById(warehouseId);
+//            if (sysTenantDepartment == null) {
+//                log.error("閮ㄩ棬涓嶅瓨鍦�");
+//                return 0;
+//            }
+//            wareHouseName = sysTenantDepartment.getName();
+//        }
         lWhFormScrapped.setWarehouseId(warehouseId);
         lWhFormScrapped.setWarehouseName(wareHouseName);
         lWhFormScrapped.setAgencyId(Long.valueOf(sysInfo.getTenantId()));
@@ -113,6 +120,7 @@
         lWhFormScrapped.setOperatorName(sysInfo.getUserName());
         lWhFormScrapped.setDealTime(param.getDealTime());
         lWhFormScrapped.setStates(0);
+        lWhFormScrapped.setUploadFiles(param.getUploadFiles());
         //鏍规嵁閮ㄩ棬id鏌ヨ閮ㄩ棬
         FinSysTenantDepartment department = this.departmentService.getById(sysInfo.getSysDeptId());
         if (department != null) {
@@ -157,7 +165,7 @@
                 LWhFormScrappedGoods scrappedGoods = new LWhFormScrappedGoods();
                 scrappedGoods.setId(IdUtil.generateId());
                 //鏍规嵁鐗╁搧鍨嬪彿鏌ヨ鐗╁搧搴撳瓨
-                int goodsNum = this.lWhGoodsService.queryGoodsModelNum(warehouseType, warehouseId, scrappedGoods.getBaseGoodsModelsId(), 1, null);
+                int goodsNum = this.lWhGoodsService.queryGoodsModelNum(0, warehouseId, scrappedGoods.getBaseGoodsModelsId(), 1, null);
                 if (params.getCounts() > goodsNum) {
                     log.error("鎶ュ簾鏁伴噺澶т簬搴撳瓨鏁伴噺");
                     return 0;
@@ -181,7 +189,7 @@
 
                 scrappedGoodsList.add(scrappedGoods);
             }
-            int flag2 = this.scrappedGoodsService.insert(scrappedGoodsList);
+            int flag2 = this.scrappedGoodsService.insertBatch(scrappedGoodsList);
             if (flag2 != scrappedGoodsList.size()) {
                 log.error("鏂板鎶ュ簾鍗曠墿鍝佽褰� 澶辫触");
                 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -265,6 +273,16 @@
             formScrappedGoodsVO.setBaseGoodsTemplateId(baseGoodsTemplateId);
             formScrappedGoodsVO.setGoodsName(lWhFormScrappedGoods.getGoodsTemplateName());
 
+            String sql = "select CATEGORY_NAME from base_goods_template where id = :id";
+            Map<String, Object> param = new HashMap<>();
+            param.put("id", baseGoodsTemplateId);
+            List<Map<String, Object>> goodTemplate = this.select(sql, param, new MapperUtil());
+            if (!CollectionUtils.isEmpty(goodTemplate)) {
+                Optional<Map<String, Object>> first = goodTemplate.stream().findFirst();
+                Map<String, Object> objectMap = first.get();
+                formScrappedGoodsVO.setCategoryName(objectMap.get("categoryName").toString());
+            }
+
             List<GoodsModelVO> goodsModelList = Lists.newArrayList();
             goodsList.forEach(item -> {
                 GoodsModelVO goodsModelVO = new GoodsModelVO();
@@ -344,37 +362,37 @@
         return pageUtil;
     }
 
-    public List<Map<String, Object>> export(Long id) {
-
+    public List<ScrappedInfoExcelTemplate> export(Long id) {
         String sql =
-            "SELECT BUSINESS_FORM_CODE, fs.DEAL_TIME, OPERATOR_NAME, AGENCY_NAME, GOODS_TEMPLATE_NAME, BASE_GOODS_MODELS_NAME, DEPARTMENT_NAME, COUNTS, SCRAPPED_NAME, BEIZ "
-                + "FROM l_wh_form_scrapped_goods fsg LEFT JOIN l_wh_form_scrapped fs ON fs.id = fsg.FORM_SCRAPPED_ID WHERE "
-                + "fs.ID = :id and STATES = 1";
+            "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());
-        return select;
+        if (CollectionUtils.isEmpty(select)) {
+            return null;
+        }
+        List<ScrappedInfoExcelTemplate> list = Lists.newArrayList();
+        select.forEach(item -> {
+            ScrappedInfoExcelTemplate inventoryExcelTemplate = MapUtils.convertMapToObj(item, ScrappedInfoExcelTemplate.class);
+            list.add(inventoryExcelTemplate);
+        });
+        return list;
     }
 
-    /**
-     * @Description 瀵煎嚭鎶ュ簾鐧昏鍗�
-     * @Author 鍗㈠簡闃�
-     * @Date 2023/11/2
-     */
-//    public LWhFormScrappedExtendVO export(Long id, FinSysTenantUser sysInfo) {
-//        LWhFormScrappedExtendVO scrappedExtend = new LWhFormScrappedExtendVO();
-//        //1.鏌ヨ鎶ュ簾鍗�
-//        LWhFormScrapped lWhFormScrapped = this.get(new LWhFormScrapped(id));
-//        if (lWhFormScrapped != null) {
-//            lWhFormScrapped.setDealTime(DateUtils.getDateTimeNumber(System.currentTimeMillis()));
-//            lWhFormScrapped.setOperatorName(sysInfo.getUserName());
-//            BeanUtils.copyProperties(lWhFormScrapped, scrappedExtend);
-//        }
-//        //2.鏌ヨ鎶ュ簾鍗曠墿鍝�
-//        List<LWhFormScrappedGoods> scrappedGoodsList = this.scrappedGoodsService.getByFormScrappedId(id);
-//        if (!CollectionUtils.isEmpty(scrappedGoodsList)) {
-//            scrappedExtend.setScrappedGoodsList(scrappedGoodsList);
-//        }
-//        return scrappedExtend;
-//    }
+
 }

--
Gitblit v1.9.1