From 2b20f8284d8c59549ebcb9dabca36b5bd5b35702 Mon Sep 17 00:00:00 2001
From: cy <1664593601@qq.com>
Date: 星期三, 29 十一月 2023 13:17:14 +0800
Subject: [PATCH] feat: 首页统计预警条数;部门台账物品查询导出

---
 consum-base/src/main/java/com/consum/base/controller/FinWarehouseLedgerController.java |   82 ++++++++++++++++
 consum-base/src/main/java/com/consum/base/controller/LWhWarningController.java         |   22 ++++
 consum-base/src/main/java/com/consum/base/service/FinWarehouseLedgerServiceImpl.java   |   59 +++++++++++
 consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java      |   21 +---
 consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java      |   31 ++---
 consum-base/src/main/java/com/consum/base/core/CodeGeneratorEnum.java                  |    9 +
 consum-base/src/main/java/com/consum/base/pojo/query/LWhLedgerQry.java                 |    6 +
 consum-base/src/main/java/com/consum/base/service/LWhWarningServiceImpl.java           |   25 +++++
 consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java     |   21 ++--
 consum-base/src/main/java/com/consum/base/service/LWhGoodsService.java                 |    2 
 deploy-jar-single/src/main/resources/import/depTaiZhangExpTemp.xlsx                    |    0 
 11 files changed, 234 insertions(+), 44 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/controller/FinWarehouseLedgerController.java b/consum-base/src/main/java/com/consum/base/controller/FinWarehouseLedgerController.java
index 2c0337d..3221750 100644
--- a/consum-base/src/main/java/com/consum/base/controller/FinWarehouseLedgerController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/FinWarehouseLedgerController.java
@@ -21,6 +21,7 @@
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.net.URLEncoder;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -61,6 +62,7 @@
             param.setAgencyId(Long.valueOf(tenantId));
         }
         param.setStates((short) 1);
+        param.setWarehouseType((short) 0);
         GenericPager pager = finWarehouseLedgerService.ledgerList(param);
         return ResponseValue.success(pager);
     }
@@ -83,6 +85,7 @@
             param.setAgencyId(Long.valueOf(tenantId));
         }
         param.setStates((short) 1);
+        param.setWarehouseType((short) 0);
         param.setPageNum(1);
         param.setPageSize(Integer.MAX_VALUE);
         GenericPager<Map<String, Object>> pager = finWarehouseLedgerService.ledgerList(param);
@@ -107,4 +110,83 @@
         }
 
     }
+
+    /**
+     * @Description 鍒嗛〉鍒楄〃鏌ヨ
+     * @Author wh
+     * @Date 2023/7/11 13:59
+     */
+    @RequestMapping("/getDeptLedgerList")
+    public ResponseValue getDeptLedgerList() {
+        LWhLedgerQry param = CommonUtil.getObjFromReq(LWhLedgerQry.class);
+        LWhLedgerQry query = new LWhLedgerQry();
+        CommonUtil.copyProperties(param, query);
+        param = query;
+        S_user_core currentUser = this.getCurrentUser();
+        if (currentUser == null) {
+            return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
+        }
+        /*褰撳墠鐧诲綍浜哄彧鑳界湅鍒拌嚜宸辨満鏋勪笅鐨勫垪琛�*/
+        FinSysTenantUser sysInfo = this.getSysInfo();
+        String tenantId = sysInfo.getTenantId();
+        Long paramAgencyId = param.getAgencyId();
+        if (paramAgencyId == null || !paramAgencyId.toString().startsWith(tenantId)) {
+            param.setAgencyId(Long.valueOf(tenantId));
+        }
+        ArrayList<Short> statesList = new ArrayList<>();
+        statesList.add((short)1);
+        statesList.add((short)2);
+        param.setStatesList(statesList);
+        param.setWarehouseType((short) 1);
+        GenericPager pager = finWarehouseLedgerService.depLedgerList(param);
+        return ResponseValue.success(pager);
+    }
+
+    @RequestMapping("/getDeptListExport")
+    public void getDeptListExport(HttpServletResponse response) throws Exception {
+        LWhLedgerQry param = CommonUtil.getObjFromReq(LWhLedgerQry.class);
+        LWhLedgerQry query = new LWhLedgerQry();
+        CommonUtil.copyProperties(param, query);
+        param = query;
+        S_user_core currentUser = this.getCurrentUser();
+        if (currentUser == null) {
+            return;
+        }
+        /*褰撳墠鐧诲綍浜哄彧鑳界湅鍒拌嚜宸辨満鏋勪笅鐨勫垪琛�*/
+        FinSysTenantUser sysInfo = this.getSysInfo();
+        String tenantId = sysInfo.getTenantId();
+        Long paramAgencyId = param.getAgencyId();
+        if (paramAgencyId == null || !paramAgencyId.toString().startsWith(tenantId)) {
+            param.setAgencyId(Long.valueOf(tenantId));
+        }
+        ArrayList<Short> statesList = new ArrayList<>();
+        statesList.add((short)1);
+        statesList.add((short)2);
+        param.setStatesList(statesList);
+        param.setWarehouseType((short) 1);
+        param.setPageNum(1);
+        param.setPageSize(Integer.MAX_VALUE);
+        GenericPager<Map<String, Object>> pager = finWarehouseLedgerService.depLedgerList(param);
+        List<Map<String, Object>> datas = pager.getDatas();
+        org.springframework.core.io.Resource resource = new ClassPathResource("import/depTaiZhangExpTemp.xlsx");
+        // 鑾峰彇鏂囦欢杈撳叆娴�
+        InputStream inputStream = resource.getInputStream();
+        Workbook wb = new XSSFWorkbook(inputStream);
+        TemplateExportParams params = new TemplateExportParams();
+        params.setTemplateWb(wb);
+
+        Map<String, Object> map = new HashMap<String, Object>();
+        map.put("dataList", datas);
+
+        Workbook workbook = ExcelExportUtil.exportExcel(params, map);
+        // 璁剧疆鍝嶅簲澶�
+        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8");
+        response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode("搴撳瓨鏌ヨ.xlsx", "utf-8"));
+        try (OutputStream outputStream = response.getOutputStream()) {
+            workbook.write(outputStream);
+            workbook.close();
+        }
+
+    }
+
 }
diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhWarningController.java b/consum-base/src/main/java/com/consum/base/controller/LWhWarningController.java
index bd64206..44f220f 100644
--- a/consum-base/src/main/java/com/consum/base/controller/LWhWarningController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/LWhWarningController.java
@@ -32,6 +32,28 @@
     @Resource
     private LWhWarningServiceImpl lWhWarningService;
 
+    @GetMapping("/getWarningTypeNum")
+    public ResponseValue getWarningTypeNum() {
+        WhWarningQry param = CommonUtil.getObjFromReq(WhWarningQry.class);
+        WhWarningQry param2 = new WhWarningQry();
+        CommonUtil.copyProperties(param, param2);
+        param = param2;
+        /*褰撳墠鐧诲綍浜哄彧鑳界湅鍒拌嚜宸辨満鏋勪笅鐨勫垪琛�*/
+        FinSysTenantUser sysInfo = this.getSysInfo();
+        String tenantId = sysInfo.getTenantId();
+        Long paramAgencyId = param.getAgencyId();
+        if (paramAgencyId == null || !paramAgencyId.toString().startsWith(tenantId)) {
+            param.setAgencyId(Long.valueOf(tenantId));
+        }
+
+        if (param.getStates() == null) {
+            param.setStates(1);
+        } else if (param.getStates() == 0) {
+            param.setStates(null);
+        }
+        return ResponseValue.success(lWhWarningService.getWarningTypeNum(param));
+    }
+
     @GetMapping("/getList")
     public ResponseValue getList() {
         WhWarningQry param = CommonUtil.getObjFromReq(WhWarningQry.class);
diff --git a/consum-base/src/main/java/com/consum/base/core/CodeGeneratorEnum.java b/consum-base/src/main/java/com/consum/base/core/CodeGeneratorEnum.java
index ed7085c..6defc83 100644
--- a/consum-base/src/main/java/com/consum/base/core/CodeGeneratorEnum.java
+++ b/consum-base/src/main/java/com/consum/base/core/CodeGeneratorEnum.java
@@ -24,6 +24,15 @@
     Transfer("DB"),
 
     /**
+     * 鍒嗗彂
+     */
+    Distribute("FF"),
+    /**
+     * 閫�鍥�
+     */
+    GOBACK("TH"),
+
+    /**
      * 鎶ュ簾
      */
     Scrapped("BF"),
diff --git a/consum-base/src/main/java/com/consum/base/pojo/query/LWhLedgerQry.java b/consum-base/src/main/java/com/consum/base/pojo/query/LWhLedgerQry.java
index 119d2ca..dec3830 100644
--- a/consum-base/src/main/java/com/consum/base/pojo/query/LWhLedgerQry.java
+++ b/consum-base/src/main/java/com/consum/base/pojo/query/LWhLedgerQry.java
@@ -5,6 +5,8 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.util.List;
+
 /**
  * @ClassName LWhLedgerQry
  * @Author cy
@@ -17,6 +19,9 @@
 public class LWhLedgerQry extends ParamRequest {
     @ApiModelProperty("鏈烘瀯")
     private Long agencyId;
+
+    @ApiModelProperty("閮ㄩ棬ID")
+    private Long departmentId;
 
     @ApiModelProperty("浠撳簱绫诲瀷")
     private Short warehouseType;
@@ -36,6 +41,7 @@
 
     @ApiModelProperty("鐘舵�侊紙0=鍦ㄩ�旇皟鎷紱1=鍏ュ簱鏈垎鍙戯紱2=宸蹭笅鍙戯紱3=鎶ュ簾 4 闆舵槦鍑哄簱锛�")
     private Short states;
+    private List<Short> statesList;
 
     @ApiModelProperty(value = "姣忛〉鏄剧ず鏉℃暟")
     private Integer pageSize = 10;
diff --git a/consum-base/src/main/java/com/consum/base/service/FinWarehouseLedgerServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/FinWarehouseLedgerServiceImpl.java
index 12ed86d..aa681ad 100644
--- a/consum-base/src/main/java/com/consum/base/service/FinWarehouseLedgerServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/FinWarehouseLedgerServiceImpl.java
@@ -3,6 +3,7 @@
 import com.consum.base.core.utils.MapperUtil;
 import com.consum.base.pojo.query.LWhLedgerQry;
 import com.walker.db.page.GenericPager;
+import com.walker.infrastructure.utils.CollectionUtils;
 import com.walker.infrastructure.utils.StringUtils;
 import com.walker.jdbc.service.BaseServiceImpl;
 import org.springframework.stereotype.Service;
@@ -69,6 +70,64 @@
         return selectSplit(sql.toString(), paramts, param.getPageNum(), param.getPageSize(), new MapperUtil());
     }
 
+ private String DEPT_LEDGER_LIST_QUERY_PREFIX = "SELECT tenant.`name` AS AGENCY_NAME,ware.`name` depart_name,goodsTemp.CATEGORY_NAME,CASE goods.COST_TYPE WHEN 1 THEN 'A绫�' WHEN 2 THEN 'B绫�' WHEN 3 THEN 'C绫�' END AS cost_Type,goods.GOODS_TEMPLATE_NAME,goods.BASE_GOODS_MODELS_NAME,goods.UNIT unit,COUNt(goods.id) kucun FROM L_WH_GOODS goods LEFT JOIN BASE_GOODS_TEMPLATE goodsTemp ON goods.BASE_GOODS_TEMPLATE_ID=goodsTemp.id LEFT JOIN fin_sys_tenant_department ware ON ware.id=goods.WAREHOUSE_ID LEFT JOIN fin_sys_tenant tenant ON ware.TENANT_ID=tenant.id WHERE 1=1 ";
+    private String DEPT_LEDGER_LIST_QUERY_GROUP = " GROUP BY tenant.`name`,ware.`name`,goodsTemp.CATEGORY_NAME,goods.COST_TYPE,goods.GOODS_TEMPLATE_NAME,goods.BASE_GOODS_MODELS_NAME,goods.UNIT";
+
+    public GenericPager<Map<String, Object>> depLedgerList(LWhLedgerQry param) {
+        StringBuilder sql = new StringBuilder(DEPT_LEDGER_LIST_QUERY_PREFIX);
+        Map<String, Object> paramts = new HashMap<>();
+        //鐘舵�侊紙0=鍦ㄩ�旇皟鎷紱1=鍏ュ簱鏈垎鍙戯紱2=宸蹭笅鍙戯紱3=鎶ュ簾 4 闆舵槦鍑哄簱锛�
+        if (param.getStates() != null) {
+            sql.append(" and goods.states = :states");
+            paramts.put("states", param.getStates());
+        }
+        if (!CollectionUtils.isEmpty(param.getStatesList())){
+            sql.append(" and goods.states in(:statesList)");
+            paramts.put("statesList", param.getStatesList());
+        }
+        //鏈烘瀯
+        if (param.getAgencyId() != null) {
+            sql.append(" and ware.TENANT_ID= :agencyId");
+            paramts.put("lengthAgencyId", param.getAgencyId());
+            paramts.put("agencyId", param.getAgencyId());
+        }
+        // 閮ㄩ棬
+        if (param.getDepartmentId() != null) {
+            sql.append(" and goods.WAREHOUSE_ID= :departmentId");
+            paramts.put("departmentId", param.getDepartmentId());
+        }
+        //浠撳簱绫诲瀷
+        if (param.getWarehouseType() != null) {
+            sql.append(" AND goods.WAREHOUSE_TYPE = :warehouseType");
+            paramts.put("warehouseType", param.getWarehouseType());
+        }
+//        if (param.getWarehouseId() != null) {
+//            sql.append(" AND goods.WAREHOUSE_ID = :warehouseId");
+//            paramts.put("warehouseId", param.getWarehouseId());
+//        }
+        //鐗╁搧鍚嶇О
+        if (StringUtils.isNotEmpty(param.getGoodsTemplateName())) {
+            sql.append(" AND goods.GOODS_TEMPLATE_NAME like :goodsTemplateName");
+            paramts.put("goodsTemplateName", StringUtils.CHAR_PERCENT + param.getGoodsTemplateName() + StringUtils.CHAR_PERCENT);
+        }
+        if (param.getGoodsTemplateId() != null) {
+            sql.append(" AND goods.BASE_GOODS_TEMPLATE_ID=:goodsTemplateId");
+            paramts.put("goodsTemplateId", param.getGoodsTemplateId());
+        }
+        //鍒嗙被
+        if (param.getCategoryId() != null) {
+            sql.append(" AND goodsTemp.CATEGORY_ID=:categoryId");
+            paramts.put("categoryId", param.getCategoryId());
+        }
+        //浠峰�肩被鍨�
+        if (param.getCostType() != null) {
+            sql.append(" AND goods.COST_TYPE=:costType");
+            paramts.put("costType", param.getCostType());
+        }
+        sql.append(DEPT_LEDGER_LIST_QUERY_GROUP);
+        return selectSplit(sql.toString(), paramts, param.getPageNum(), param.getPageSize(), new MapperUtil());
+    }
+
     private String DEPART_LEDGER_LIST_QUERY_PREFIX = "SELECT tenant.id tenantId,tenant.NAME AS AGENCY_NAME,ware.NAME AS depart_name,goodsTemp.CATEGORY_NAME,CASE goods.COST_TYPE WHEN 1 THEN 'A绫�' WHEN 2 THEN 'B绫�' WHEN 3 THEN 'C绫�' END AS cost_Type,goods.GOODS_TEMPLATE_NAME,goods.BASE_GOODS_MODELS_NAME,goods.UNIT unit,COUNt(goods.id) kucun FROM L_WH_GOODS goods LEFT JOIN BASE_GOODS_TEMPLATE goodsTemp ON goods.BASE_GOODS_TEMPLATE_ID=goodsTemp.id LEFT JOIN fin_sys_tenant_department ware ON ware.id=goods.WAREHOUSE_ID AND goods.WAREHOUSE_TYPE=1 LEFT JOIN fin_sys_tenant tenant ON tenant.id=ware.TENANT_ID WHERE 1=1 ";
     private String DEPART_LEDGER_LIST_QUERY_GROUP = " GROUP BY tenant.id,tenant.NAME,ware.NAME,goodsTemp.CATEGORY_NAME,goods.COST_TYPE,goods.GOODS_TEMPLATE_NAME,goods.BASE_GOODS_MODELS_NAME,goods.UNIT";
 
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java
index 02129e7..cb62402 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java
@@ -21,9 +21,6 @@
 import com.walker.infrastructure.utils.DateUtils;
 import com.walker.infrastructure.utils.StringUtils;
 import com.walker.jdbc.service.BaseServiceImpl;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.compress.utils.Lists;
 import org.springframework.beans.BeanUtils;
@@ -31,6 +28,10 @@
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * @Description 鐩樼偣
@@ -337,9 +338,9 @@
         mapGenericPager.getDatas().forEach(item -> {
             FormInventoryDetailVO formInventoryDetailVO = MapUtils.convertMapToObj(item, FormInventoryDetailVO.class);
             formInventoryDetailVO.setInventoryResultType(
-                formInventoryDetailVO.getInventoryResult() == null ? null : (formInventoryDetailVO.getInventoryResult() == 2 ? "鐩樼泩" : "鐩樹簭"));
+                    formInventoryDetailVO.getInventoryResult() == null ? null : (formInventoryDetailVO.getInventoryResult() == 2 ? "鐩樼泩" : "鐩樹簭"));
             formInventoryDetailVO.setInventoryType(
-                formInventoryDetailVO.getInventoryResult() == null ? null : (formInventoryDetailVO.getInventoryResult() == 2 ? "鐩樼泩鍏ュ簱" : "鐩樹簭鍑哄簱"));
+                    formInventoryDetailVO.getInventoryResult() == null ? null : (formInventoryDetailVO.getInventoryResult() == 2 ? "鐩樼泩鍏ュ簱" : "鐩樹簭鍑哄簱"));
             formInventoryDetailVO.setWarehouseFormCode(formInventoryDetailVO.getWarehouseFormCode());
             result.add(formInventoryDetailVO);
         });
@@ -350,8 +351,8 @@
     public List<FormInventoryGoodsVO> selectDetailById(Long id) {
 
         String sql = "select fig.id, fig.BASE_GOODS_TEMPLATE_ID,fig.GOODS_TEMPLATE_NAME,fig.BASE_GOODS_MODELS_NAME,"
-            + "fig.INIT_COUNTS inventoryCount,fig.INVENTORY_COUNTS realNum,fig.INVENTORY_RESULT status,fig.unit,bgt.CLASSIFICATION type from "
-            + "l_wh_form_inventory_goods fig left join base_goods_template bgt on bgt.id =fig.BASE_GOODS_TEMPLATE_ID  where fig.WH_FORM_INVENTORY_ID = :id";
+                + "fig.INIT_COUNTS inventoryCount,fig.INVENTORY_COUNTS realNum,fig.INVENTORY_RESULT status,fig.unit,bgt.CLASSIFICATION type from "
+                + "l_wh_form_inventory_goods fig left join base_goods_template bgt on bgt.id =fig.BASE_GOODS_TEMPLATE_ID  where fig.WH_FORM_INVENTORY_ID = :id";
         HashMap<String, Object> param = new HashMap<>();
         param.put("id", id);
         List<Map<String, Object>> select = select(sql, param, new MapperUtil());
@@ -381,9 +382,9 @@
         formInventoryVO.setWarehouseName(inventory.getWarehouseName());
 
         String sql =
-            "select bgm.id,bgt.id baseGoodsTemplateId,bgt.GOODS_NAME goodsTemplateName,bgm.MODEL_NAME baseGoodsModelsName,bgt.CLASSIFICATION type,bgm.UNIT "
-                + "from base_goods_models bgm left join base_goods_template bgt on bgm.GOODS_TEMPLATES_ID = bgt.id "
-                + "where bgt.AGENCY_ID = :agencyId";
+                "select bgm.id,bgt.id baseGoodsTemplateId,bgt.GOODS_NAME goodsTemplateName,bgm.MODEL_NAME baseGoodsModelsName,bgt.CLASSIFICATION type,bgm.UNIT "
+                        + "from base_goods_models bgm left join base_goods_template bgt on bgm.GOODS_TEMPLATES_ID = bgt.id "
+                        + "where bgt.AGENCY_ID = :agencyId";
         HashMap<String, Object> param = new HashMap<>();
         param.put("agencyId", inventory.getAgencyId());
         List<Map<String, Object>> result = this.select(sql, param, new MapperUtil());
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 6449cb7..30e84e6 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
@@ -14,30 +14,20 @@
 import com.consum.base.pojo.response.FormScrappedGoodsVO;
 import com.consum.base.pojo.response.GoodsModelVO;
 import com.consum.base.pojo.response.LWhFormScrappedExtendVO;
-import com.consum.model.po.BaseGoodsModels;
-import com.consum.model.po.BaseGoodsTemplate;
-import com.consum.model.po.BaseWarehouse;
-import com.consum.model.po.FinSysTenantDepartment;
-import com.consum.model.po.FinSysTenantUser;
-import com.consum.model.po.LWhFormScrapped;
-import com.consum.model.po.LWhFormScrappedGoods;
-import com.consum.model.po.SDictData;
+import com.consum.model.po.*;
 import com.iplatform.model.po.S_user_core;
 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;
+
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * @Description 鎶ュ簾鍗�
@@ -190,7 +180,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();
@@ -396,4 +386,5 @@
 //        }
 //        return scrappedExtend;
 //    }
+
 }
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java
index 2277cff..4a10dbc 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java
@@ -14,17 +14,7 @@
 import com.consum.base.pojo.response.FormTransferGoodsVO;
 import com.consum.base.pojo.response.GoodsModelVO;
 import com.consum.base.pojo.response.LWHFromTransferExtendVO;
-import com.consum.model.po.BaseGoodsModels;
-import com.consum.model.po.BaseWarehouse;
-import com.consum.model.po.BaseWarehouseManager;
-import com.consum.model.po.FinSysTenant;
-import com.consum.model.po.FinSysTenantUser;
-import com.consum.model.po.LWhFormOutput;
-import com.consum.model.po.LWhFormTransfer;
-import com.consum.model.po.LWhGoodsRecord;
-import com.consum.model.po.LWhProcureModel;
-import com.consum.model.po.LWhProcureModelUser;
-import com.consum.model.po.LWhProcureModelUserRecord;
+import com.consum.model.po.*;
 import com.consum.model.vo.LWhFormOutputVo;
 import com.consum.model.vo.LWhGoodsRecordVo;
 import com.iplatform.model.po.S_user_core;
@@ -32,17 +22,14 @@
 import com.walker.infrastructure.utils.DateUtils;
 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 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 java.util.*;
 
 /**
  * @Description 璋冩嫧绠$悊
@@ -99,8 +86,16 @@
         // 鍗曟嵁绫诲瀷銆�0浠撳簱璋冩嫧锛�1閮ㄩ棬鍒嗗彂锛�2閮ㄩ棬鐗╁搧鍥為��
         // TODO 鏋氫妇瀛楀吀
         lWhFormTransfer.setBusinessType(businessType);
+        CodeGeneratorEnum codeGeneratorEnum = null;
+        if (businessType == 0){
+            codeGeneratorEnum = CodeGeneratorEnum.Transfer;
+        } else if (businessType == 1){
+            codeGeneratorEnum = CodeGeneratorEnum.Distribute;
+        } else if (businessType == 2){
+            codeGeneratorEnum = CodeGeneratorEnum.GOBACK;
+        }
 
-        lWhFormTransfer.setBusinessFormCode(codeGeneratorService.createBusinessFormCode(CodeGeneratorEnum.Transfer));
+        lWhFormTransfer.setBusinessFormCode(codeGeneratorService.createBusinessFormCode(codeGeneratorEnum));
 
         Long warehouseId = param.getInWarehouseId();
         // 璋冩嫧绫诲瀷鍗曟嵁
@@ -287,7 +282,7 @@
         }
         //鐘舵��
         if (param.getStates() != null) {
-            sql.append(" and states =:states ");
+            sql.append(" and ft.states =:states ");
             paramts.put("states", param.getStates());
         }
         //鍒涘缓浜�
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhGoodsService.java b/consum-base/src/main/java/com/consum/base/service/LWhGoodsService.java
index bb33472..5313986 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhGoodsService.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhGoodsService.java
@@ -275,7 +275,7 @@
 
 
     private static String GET_GOODS_NUM_BY_MONTH = "SELECT monthT.month_Num,IFNULL(datat.total_Num,0) total_Num,IFNULL(datat.add_total_Num,0) add_total_Num,IFNULL(datat.reduce_total_Num,0) reduce_total_Num FROM (SELECT monthT.month_Num FROM (SELECT ( SELECT 1) month_Num UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9 UNION SELECT 10 UNION SELECT 11 UNION SELECT 12) monthT) monthT LEFT JOIN ( SELECT t.tenantId,count(t.THIS_COUNT) total_Num,count(CASE t.THIS_TYPE WHEN 1 THEN t.THIS_COUNT END) add_total_Num,count(CASE t.THIS_TYPE WHEN 2 THEN t.THIS_COUNT END) reduce_total_Num,SUBSTR(DEAL_TIME,5,2) data_month FROM ( SELECT tCangKu.tenantId,tKuCun.id,tKuCun.THIS_TYPE,tKuCun.THIS_COUNT,tKuCun.DEAL_TIME FROM (SELECT tenant.id tenantId,tenant.NAME AS org_name,ware.*FROM fin_sys_tenant tenant RIGHT JOIN ( SELECT 0 WAREHOUSE_TYPE,id,AGENCY_ID,WAREHOUSE_NAME FROM BASE_WAREHOUSE UNION ALL SELECT 1 WAREHOUSE_TYPE,id,TENANT_ID AGENCY_ID,`NAME` WAREHOUSE_NAME FROM fin_sys_tenant_department) ware ON tenant.id=ware.AGENCY_ID WHERE 1=1 ";
-    private static String GET_GOODS_NUM_BY_MONTH_END = ")tCangKu LEFT JOIN L_WH_GOODS_RECORD tKuCun ON tCangKu.WAREHOUSE_TYPE=tKuCun.WAREHOUSE_TYPE AND tCangKu.id=tKuCun.WAREHOUSE_ID) t GROUP BY t.tenantId,SUBSTR(DEAL_TIME,5,2)) datat ON datat.data_month=monthT.month_Num ORDER BY monthT.month_Num ASC";
+    private static String GET_GOODS_NUM_BY_MONTH_END = ")tCangKu LEFT JOIN L_WH_GOODS_RECORD tKuCun ON tCangKu.WAREHOUSE_TYPE=tKuCun.WAREHOUSE_TYPE AND tCangKu.id=tKuCun.WAREHOUSE_ID and tKuCun.DEAL_TIME between cast(CONCAT(DATE_FORMAT(NOW(), '%Y'),'1231240000') as UNSIGNED) and  cast(CONCAT(DATE_FORMAT(NOW(), '%Y'),'0101000000') as UNSIGNED)) t GROUP BY t.tenantId,SUBSTR(DEAL_TIME,5,2)) datat ON datat.data_month=monthT.month_Num ORDER BY monthT.month_Num ASC";
 
     //鎸夋満鏋勭粺璁$墿鍝佷环鍊笺�佹暟閲�/閲戦绛�
     public List<Map<String, Object>> getGoodsNumByMonth(Long agencyId) {
diff --git a/consum-base/src/main/java/com/consum/base/service/LWhWarningServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhWarningServiceImpl.java
index e063677..74ac0ab 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhWarningServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhWarningServiceImpl.java
@@ -21,6 +21,31 @@
  **/
 @Service
 public class LWhWarningServiceImpl extends BaseServiceImpl {
+    private static String GET_WARNING_TYPE_NUM = "SELECT COUNT(1) AS total_num,count(CASE WHEN wareWarn.WARNING_TYPE=1 THEN 1 ELSE NULL END) AS up_num,count(CASE WHEN wareWarn.WARNING_TYPE=2 THEN 1 ELSE NULL END) AS low_num FROM WH_WARNING wareWarn LEFT JOIN BASE_WAREHOUSE ware ON ware.id=wareWarn.BASE_WAREHOUSE_ID WHERE 1=1 ";
+
+    public Map<String, Object> getWarningTypeNum(WhWarningQry param) {
+        StringBuilder sql = new StringBuilder(GET_WARNING_TYPE_NUM);
+        HashMap<String, Object> paramts = new HashMap<>();
+        if (param.getStates() != null) {
+            sql.append(" AND wareWarn.states = :states");
+            paramts.put("states", param.getStates());
+        }
+        //鏈烘瀯
+        if (param.getAgencyId() != null) {
+            sql.append(" and ware.AGENCY_ID=:agencyId");
+            paramts.put("agencyId", param.getAgencyId());
+        }
+        List<Map<String, Object>> mapList = select(sql.toString(), paramts, new MapperUtil());
+        if (CollectionUtils.isEmpty(mapList)) {
+            Map<String, Object> rtnMap = new HashMap<>();
+            rtnMap.put("totalNum", 0);
+            rtnMap.put("upNum", 0);
+            rtnMap.put("lowNum", 0);
+            return rtnMap;
+        }
+        return mapList.get(0);
+
+    }
 
     private static String GET_LIST_WITH_PAGE = "SELECT wareWarn.*,ware.WAREHOUSE_NAME,goodsTemp.CATEGORY_NAME,CONCAT(cate.CLASSIFICATION,'绫�') cost_Type,goodsTemp.GOODS_NAME,baseModel.MODEL_NAME,basemodel.UNIT FROM WH_WARNING wareWarn LEFT JOIN BASE_GOODS_MODELS baseModel ON baseModel.ID=wareWarn.BASE_GOODS_MODELS_ID LEFT JOIN BASE_GOODS_TEMPLATE goodsTemp ON wareWarn.BASE_GOODS_TEMPLATE_ID=goodsTemp.id LEFT JOIN BASE_CATEGORY cate ON cate.id=goodsTemp.CATEGORY_ID LEFT JOIN BASE_WAREHOUSE ware ON ware.id=wareWarn.BASE_WAREHOUSE_ID WHERE 1=1 ";
 
diff --git a/deploy-jar-single/src/main/resources/import/depTaiZhangExpTemp.xlsx b/deploy-jar-single/src/main/resources/import/depTaiZhangExpTemp.xlsx
index 1bd3ffb..56b53ca 100644
--- a/deploy-jar-single/src/main/resources/import/depTaiZhangExpTemp.xlsx
+++ b/deploy-jar-single/src/main/resources/import/depTaiZhangExpTemp.xlsx
Binary files differ

--
Gitblit v1.9.1