Browse Source

订单列表筛选支持省市区

yzc 2 years ago
parent
commit
8ed8dfb598

+ 18 - 6
sckw-modules/sckw-report/src/main/java/com/sckw/report/service/KwOrderService.java

@@ -128,13 +128,25 @@ public class KwOrderService {
             andCriteria.and("createTime").lte(DateUtil.offsetDay(params.getEndCreateTime(), 1));
         }
         //装卸货地址
-        if (StringUtils.isNotBlank(params.getShippingAddressCode())) {
-            Pattern pattern = Pattern.compile("^" + params.getShippingAddressCode().substring(0, 4) + ".*$", Pattern.CASE_INSENSITIVE);
-            andCriteria.and("loadCityCode").regex(pattern);
+        String loadCode = params.getShippingAddressCode();
+        if (StringUtils.isNotBlank(loadCode)) {
+            switch (params.getShippingAddressLevel()) {
+                case 1 -> andCriteria.and("loadCityCode")
+                        .regex(Pattern.compile("^" + loadCode.substring(0, 2) + ".*$", Pattern.CASE_INSENSITIVE));
+                case 2 -> andCriteria.and("loadCityCode")
+                        .regex(Pattern.compile("^" + loadCode.substring(0, 4) + ".*$", Pattern.CASE_INSENSITIVE));
+                case 3 -> andCriteria.and("loadCityCode").is(loadCode);
+            }
         }
-        if (StringUtils.isNotBlank(params.getUnloadingAddressCode())) {
-            Pattern pattern = Pattern.compile("^" + params.getUnloadingAddressCode().substring(0, 4) + ".*$", Pattern.CASE_INSENSITIVE);
-            andCriteria.and("unloadCityCode").regex(pattern);
+        String unloadCode = params.getUnloadingAddressCode();
+        if (StringUtils.isNotBlank(unloadCode)) {
+            switch (params.getUnloadingAddressLevel()) {
+                case 1 -> andCriteria.and("unloadCityCode")
+                        .regex(Pattern.compile("^" + unloadCode.substring(0, 2) + ".*$", Pattern.CASE_INSENSITIVE));
+                case 2 -> andCriteria.and("unloadCityCode")
+                        .regex(Pattern.compile("^" + unloadCode.substring(0, 4) + ".*$", Pattern.CASE_INSENSITIVE));
+                case 3 -> andCriteria.and("unloadCityCode").is(unloadCode);
+            }
         }
         //提货方式
         if (StringUtils.isNotBlank(params.getPickupType())) {

+ 11 - 1
sckw-modules/sckw-report/src/main/java/com/sckw/report/service/param/TradeOrderListStatisticParam.java

@@ -48,11 +48,21 @@ public class TradeOrderListStatisticParam {
      */
     private String shippingAddressCode;
 
+    /**
+     * 装货地址等级
+     */
+    private Integer shippingAddressLevel;
+
     /**
      * 装货地址code
      */
     private String unloadingAddressCode;
 
+    /**
+     * 卸货地址等级
+     */
+    private Integer unloadingAddressLevel;
+
     /**
      * 交易方式(预付款、货到付款)
      */
@@ -69,7 +79,7 @@ public class TradeOrderListStatisticParam {
     private String deliveryType;
 
     /**
-     * 下单方式(0自主下单/1代客下单)
+     * 下单方式(1采购下单/2代客下单)
      */
     private String source;