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/LWhWarningServiceImpl.java |   37 +++++++++++++++++++++++++++++++++----
 1 files changed, 33 insertions(+), 4 deletions(-)

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 be803e4..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 ";
 
@@ -33,8 +58,8 @@
         }
         //鏈烘瀯
         if (param.getAgencyId() != null) {
-            sql.append(" and left(ware.AGENCY_ID, length(:lengthAgencyId)) = :agencyId");
-            paramts.put("lengthAgencyId", param.getAgencyId());
+            sql.append(" and ware.AGENCY_ID=:agencyId");
+//            paramts.put("lengthAgencyId", param.getAgencyId());
             paramts.put("agencyId", param.getAgencyId());
         }
         //浠撳簱绫诲瀷
@@ -67,8 +92,12 @@
             sql.append(" AND cate.CLASSIFICATION=':costType'");
             paramts.put("costType", costType);
         }
+        if (param.getWarningType() != null) {
+            sql.append(" AND wareWarn.WARNING_TYPE=:warningType");
+            paramts.put("warningType", param.getWarningType());
+        }
 
-        sql.append(" ORDER BY wareWarn.id DESC ");
+        sql.append(" ORDER BY wareWarn.DEAL_TIME DESC ");
 
         return selectSplit(sql.toString(), paramts, param.getPageNum(), param.getPageSize(), new MapperUtil());
     }
@@ -87,7 +116,7 @@
     private String CHECK_KUCUN_CONFIG_JOINTKUCUN = ") warnConf LEFT JOIN (";
 
     private String CHECK_KUCUN_KUCUN_PREFIX = "SELECT WAREHOUSE_TYPE,WAREHOUSE_ID,BASE_GOODS_MODELS_ID,count(1) goods_Num FROM L_WH_GOODS";
-    private String CHECK_KUCUN_KUCUN_WHERE = " WHERE 1=1";
+    private String CHECK_KUCUN_KUCUN_WHERE = " WHERE 1=1 and STATES=1";
     private String CHECK_KUCUN_KUCUN_END = " GROUP BY BASE_GOODS_MODELS_ID)";
 
     private String CHECK_KUCUN_END = "goods ON goods.BASE_GOODS_MODELS_ID=warnConf.BASE_GOODS_MODELS_ID AND goods.WAREHOUSE_TYPE=warnConf.WAREHOUSE_TYPE AND goods.BASE_GOODS_MODELS_ID=warnConf.BASE_GOODS_MODELS_ID WHERE (warnConf.LOWER_LIMIT>=goods.goods_Num OR warnConf.UPPER_LIMIT<=goods.goods_Num)";

--
Gitblit v1.9.1