mac 2 лет назад
Родитель
Сommit
154ef91c51

+ 10 - 5
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/kxsapp/merchant/MerchantListDTO.java

@@ -1,8 +1,11 @@
 package com.kxs.product.api.dto.kxsapp.merchant;
 
 import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotNull;
 import lombok.Data;
 
+import java.util.List;
+
 
 /**
  * 商户列表-dto
@@ -17,6 +20,7 @@ public class MerchantListDTO {
      * 品牌ID
      */
     @Schema(description = "品牌ID")
+    @NotNull(message = "品牌ID不能为空")
     private Integer brandId;
 
 
@@ -35,10 +39,10 @@ public class MerchantListDTO {
 
 
     /**
-     * 金额区间 '-' 隔开
+     * 金额区间数组
      */
-    @Schema(description = "金额区间 '-' 隔开")
-    private String amountSection;
+    @Schema(description = "金额区间数组")
+    private String[] amountSection;
 
 
     /**
@@ -49,9 +53,10 @@ public class MerchantListDTO {
 
 
     /**
-     * 激活状态 0未激活 1已激活 全部不传
+     * 激活状态 0未激活 1已激活 2失效广电卡
      */
-    @Schema(description = "激活状态 0未激活 1已激活 全部不传")
+    @Schema(description = "激活状态 0未激活 1已激活 2失效广电卡")
+    @NotNull(message = "激活状态不能为空")
     private String actStatus;
 
     /**

+ 0 - 3
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsMerchantServiceImpl.java

@@ -68,9 +68,6 @@ public class KxsMerchantServiceImpl extends ServiceImpl<KxsMerchantMapper, KxsMe
         Long userId = SecurityUtils.getUser().getId();
         param.setUserId(userId);
 
-        if (param.getAmountSection() != null){
-            AssertUtil.isIntervalVariableAmount(param.getAmountSection());
-        }
         //查询本月交易额
         String month = LocalDateTimeUtil.format(LocalDate.now(), DatePattern.SIMPLE_MONTH_PATTERN);
         param.setTradeMonth(month);

+ 4 - 8
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMerchantMapper.xml

@@ -31,8 +31,7 @@
         kme.merchant_name,
         kma.machine_ratio,
         kma.down_fee_flag,
-        SUM(kskm.trade_amt) as this_month_trade,
-        kskm.trade_month
+        IFNULL(SUM(kskm.trade_amt), 0) as this_month_trade
         FROM
         kxs_merchant kme
         LEFT JOIN
@@ -41,9 +40,8 @@
         kxs_stat.${tableName} kskm ON kskm.merchant_id = kme.id
         WHERE
         kme.del_flag = 0
-        AND kskm.trade_month = #{param.tradeMonth}
         AND kme.brand_id = #{param.brandId}
-        AND kma.user_id = #{param.userId}
+        AND kme.user_id = #{param.userId}
         <if test="param.keyword != null and param.keyword != ''">
             AND (
             kme.merchant_no LIKE CONCAT('%', #{param.keyword}, '%')
@@ -59,10 +57,8 @@
             AND kma.is_act = #{param.actStatus}
         </if>
         GROUP BY kme.id
-        <if test="param.amountSection != null and param.amountSection != ''">
-            HAVING this_month_trade BETWEEN
-            SUBSTRING_INDEX(#{param.amountSection}, '-', 1)
-            AND SUBSTRING_INDEX(#{param.amountSection}, '-', -1)
+        <if test="param.amountSection != null and param.amountSection.length == 2">
+            HAVING this_month_trade BETWEEN #{param.amountSection[0]} AND #{param.amountSection[1]}
         </if>
         <if test="param.sort != null and param.sort == 'amount'">
             ORDER BY this_month_trade DESC