Просмотр исходного кода

补充接口 计奖交易-交易统计页面-交易明细

Pota1ovO 2 лет назад
Родитель
Сommit
e33cd3b66a

+ 27 - 32
kxs-stat/kxs-stat-api/src/main/java/com/kxs/stat/api/vo/statUser/StatUserGetTradeDetailVO.java

@@ -25,17 +25,12 @@ public class StatUserGetTradeDetailVO implements Serializable {
 
 
     /**
-     * 交易
+     * 交易时间
      */
-    @Schema(description = "交易")
-    private Integer tradeDate;
+    @Schema(description = "交易时间")
+    private Integer date;
 
 
-    /**
-     * 交易月
-     */
-    @Schema(description = "交易月")
-    private Integer tradeMonth;
 
 
     /**
@@ -49,167 +44,167 @@ public class StatUserGetTradeDetailVO implements Serializable {
      * 扶持期贷记卡交易额
      */
     @Schema(description = "扶持期贷记卡交易额")
-    private BigDecimal helpDirectTradeAmt;
+    private BigDecimal helpDirectTradeAmt = BigDecimal.ZERO;
 
 
     /**
      * 扶持期借记卡
      */
     @Schema(description = "扶持期借记卡")
-    private BigDecimal helpDebitTradeAmt;
+    private BigDecimal helpDebitTradeAmt= BigDecimal.ZERO;
 
 
     /**
      * 稳定期贷记卡
      */
     @Schema(description = "稳定期贷记卡")
-    private BigDecimal proDirectTradeAmt;
+    private BigDecimal proDirectTradeAmt= BigDecimal.ZERO;
 
 
     /**
      * 稳定期借记卡
      */
     @Schema(description = "稳定期借记卡")
-    private BigDecimal proDebitTradeAmt;
+    private BigDecimal proDebitTradeAmt= BigDecimal.ZERO;
 
 
     /**
      * 稳定期A贷记卡
      */
     @Schema(description = "稳定期A贷记卡")
-    private BigDecimal proADirectTradeAmt;
+    private BigDecimal proADirectTradeAmt= BigDecimal.ZERO;
 
 
     /**
      * 稳定期A借记卡
      */
     @Schema(description = "稳定期A借记卡")
-    private BigDecimal proADebitTradeAmt;
+    private BigDecimal proADebitTradeAmt= BigDecimal.ZERO;
 
 
     /**
      * 扶持期借记卡封顶交易额
      */
     @Schema(description = "扶持期借记卡封顶交易额")
-    private BigDecimal helpDebitCapTradeAmt;
+    private BigDecimal helpDebitCapTradeAmt= BigDecimal.ZERO;
 
 
     /**
      * 扶持期借记卡封顶交易笔数
      */
     @Schema(description = "扶持期借记卡封顶交易笔数")
-    private Integer helpDebitCapNum;
+    private Integer helpDebitCapNum = 0;
 
 
     /**
      * 稳定期借记卡封顶交易额
      */
     @Schema(description = "稳定期借记卡封顶交易额")
-    private BigDecimal proDebitCapTradeAmt;
+    private BigDecimal proDebitCapTradeAmt = BigDecimal.ZERO;
 
 
     /**
      * 稳定期借记卡封顶交易笔数
      */
     @Schema(description = "稳定期借记卡封顶交易笔数")
-    private Integer proDebitCapNum;
+    private Integer proDebitCapNum = 0;
 
 
     /**
      * 稳定期A借记卡封顶交易额
      */
     @Schema(description = "稳定期A借记卡封顶交易额")
-    private BigDecimal proADebitCapTradeAmt;
+    private BigDecimal proADebitCapTradeAmt = BigDecimal.ZERO;
 
 
     /**
      * 稳定期A借记卡封顶交易笔数
      */
     @Schema(description = "稳定期A借记卡封顶交易笔数")
-    private Integer proADebitCapNum;
+    private Integer proADebitCapNum = 0;
 
 
     /**
      * 稳定期B借记卡
      */
     @Schema(description = "稳定期B借记卡")
-    private BigDecimal proBDebitTradeAmt;
+    private BigDecimal proBDebitTradeAmt = BigDecimal.ZERO;
 
 
     /**
      * 稳定期B贷记卡
      */
     @Schema(description = "稳定期B贷记卡")
-    private BigDecimal proBDirectTradeAmt;
+    private BigDecimal proBDirectTradeAmt = BigDecimal.ZERO;
 
 
     /**
      * 稳定期B借记卡封顶交易额
      */
     @Schema(description = "稳定期B借记卡封顶交易额")
-    private BigDecimal proBDebitCapTradeAmt;
+    private BigDecimal proBDebitCapTradeAmt = BigDecimal.ZERO;
 
 
     /**
      * 稳定期B借记卡封顶交易笔数
      */
     @Schema(description = "稳定期B借记卡封顶交易笔数")
-    private Integer proBDebitCapNum;
+    private Integer proBDebitCapNum = 0;
 
 
     /**
      * 稳定期A云闪付交易额
      */
     @Schema(description = "稳定期A云闪付交易额")
-    private Object proACloudTrade;
+    private Object proACloudTrade = BigDecimal.ZERO;
 
 
     /**
      * 稳定期B云闪付交易额
      */
     @Schema(description = "稳定期B云闪付交易额")
-    private Object proBCloudTrade;
+    private Object proBCloudTrade = BigDecimal.ZERO;
 
 
     /**
      * 稳定期云闪付交易额
      */
     @Schema(description = "稳定期云闪付交易额")
-    private Object proCloudTrade;
+    private Object proCloudTrade = BigDecimal.ZERO;
 
 
     /**
      * 扶持期云闪付交易额
      */
     @Schema(description = "扶持期云闪付交易额")
-    private Object helpCloudTrade;
+    private Object helpCloudTrade = BigDecimal.ZERO;
 
 
     /**
      * 稳定期a非封顶借记卡交易额
      */
     @Schema(description = "稳定期a非封顶借记卡交易额")
-    private Object proADebitNotCapTrade;
+    private Object proADebitNotCapTrade = BigDecimal.ZERO;
 
 
     /**
      * 稳定期b非封顶借记卡交易额
      */
     @Schema(description = "稳定期b非封顶借记卡交易额")
-    private Object proBDebitNotCapTrade;
+    private Object proBDebitNotCapTrade = BigDecimal.ZERO;
 
 
     /**
      * 稳定期非封顶借记卡交易额
      */
     @Schema(description = "稳定期非封顶借记卡交易额")
-    private Object proDebitNotCapTrade;
+    private Object proDebitNotCapTrade = BigDecimal.ZERO;
 
     /**
      * 扶持期b非封顶借记卡交易额
      */
     @Schema(description = "扶持期b非封顶借记卡交易额")
-    private Object helpBDebitNotCapTrade;
+    private Object helpBDebitNotCapTrade = BigDecimal.ZERO;
 
 
 

+ 74 - 51
kxs-stat/kxs-stat-biz/src/main/java/com/kxs/stat/biz/service/impl/KxsUserTradeServiceImpl.java

@@ -503,60 +503,83 @@ public class KxsUserTradeServiceImpl extends ServiceImpl<KxsUserTradeMapper, Kxs
             // 现在yearMonth包含了yyyyMM格式的字符串
             System.out.println(month); // 输出结果
         } else {
-           return R.failed("date格式错误");
+            return R.failed("date格式错误");
         }
+        String tableName;
         //拼接表名
-        String tableName = PREFIX_TABLE_NAME + month;
-
+        if (tradeType.equals(3)) {
+            tableName = PREFIX_TABLE_NAME + month;
+        } else if (tradeType.equals(2)) {
+            tableName = PREFIX_TABLE_NAME_BEFORE + month;
+        } else if (tradeType.equals(1)) {
+            tableName = PREFIX_TABLE_NAME_AFTER + month;
+        } else {
+            return R.failed("获取类型错误");
+        }
+        KxsUserTrade kxsUserTradePos = null;
         //查询pos交易
-        KxsUserTrade kxsUserTradePos = baseMapper.getAllUserTrderSum(userId,date,getType,1,brandId,totalType,tableName);//pos
-
-
-        KxsUserTrade kxsUserTradeCloud = baseMapper.getAllUserTrderSum(userId,date,getType,2,brandId,totalType,tableName);//云闪付
-
-            //todo 待完成
-//
-//        StatUserGetTradeDetailVO statUserGetTradeDetailVO = new StatUserGetTradeDetailVO();
-//        statUserGetTradeDetailVO.setTradeDate(kxsUserTradePos.getTradeDate());//交易日
-//        statUserGetTradeDetailVO.setTradeMonth(kxsUserTradePos.getTradeMonth());//交易月
-//        statUserGetTradeDetailVO.setBrandId(kxsUserTradePos.getBrandId());//品牌
-//
-//
-//
-//        statUserGetTradeDetailVO.setHelpDirectTradeAmt(kxsUserTradePos.getHelpDirectTradeAmt());//扶持期贷记卡
-//        statUserGetTradeDetailVO.setHelpDebitTradeAmt(kxsUserTradePos.getHelpDebitTradeAmt());//扶持期借记卡
-//        statUserGetTradeDetailVO.setHelpDebitCapTradeAmt(kxsUserTradePos.getHelpDebitCapTradeAmt());//扶持期借记卡封顶交易额
-//        statUserGetTradeDetailVO.setHelpDebitCapNum(kxsUserTradePos.getHelpDebitCapNum());//扶持期借记卡封顶交易笔数
-//        statUserGetTradeDetailVO.setHelpCloudTrade();//扶持期云闪付交易额
-//        statUserGetTradeDetailVO.setHelpBDebitNotCapTrade();//扶持期非封顶借记卡交易额
-//
-//
-//        statUserGetTradeDetailVO.setProDirectTradeAmt();//稳定期贷记卡
-//        statUserGetTradeDetailVO.setProDebitTradeAmt();//稳定其借记卡
-//        statUserGetTradeDetailVO.setProDebitCapTradeAmt();//稳定期借记卡封顶交易额
-//        statUserGetTradeDetailVO.setProDebitCapNum();//稳定期借记卡封顶交易笔数
-//        statUserGetTradeDetailVO.setProCloudTrade();//稳定期云闪付交易额
-//        statUserGetTradeDetailVO.setProDebitNotCapTrade();//稳定期非封顶借记卡交易额
-//
-//
-//
-//        statUserGetTradeDetailVO.setProADirectTradeAmt();//稳A贷记
-//        statUserGetTradeDetailVO.setProADebitTradeAmt();//稳A借记
-//        statUserGetTradeDetailVO.setProADebitCapTradeAmt();//稳定期A借记卡封顶交易额
-//        statUserGetTradeDetailVO.setProADebitCapNum();//稳定期A借记卡封顶交易笔数
-//        statUserGetTradeDetailVO.setProACloudTrade();//稳定期A云闪付交易额
-//        statUserGetTradeDetailVO.setProBDebitNotCapTrade();//稳定期b非封顶借记卡交易额
-//
-//        statUserGetTradeDetailVO.setProBDebitTradeAmt();//稳定期B借记卡
-//        statUserGetTradeDetailVO.setProBDirectTradeAmt();//稳定期B贷记卡
-//        statUserGetTradeDetailVO.setProBDebitCapTradeAmt();//稳定期B借记卡封顶交易额
-//        statUserGetTradeDetailVO.setProBDebitCapNum();//稳定期B借记卡封顶交易笔数
-//        statUserGetTradeDetailVO.setProBCloudTrade();//稳定期B云闪付交易额
-//        statUserGetTradeDetailVO.setProADebitNotCapTrade();//稳定期a非封顶借记卡交易额
-
-
-
-        return null;
+        try {
+            kxsUserTradePos = baseMapper.getAllUserTrderSum(userId, date, getType, 0, brandId, totalType, tableName);//pos
+        }catch (Exception e){
+            log.info(e.getMessage());
+        }
+
+
+        StatUserGetTradeDetailVO statUserGetTradeDetailVO = new StatUserGetTradeDetailVO();
+        statUserGetTradeDetailVO.setDate(date);//交易时间
+        statUserGetTradeDetailVO.setBrandId(Math.toIntExact(brandId));//品牌
+        if (kxsUserTradePos != null) {
+            statUserGetTradeDetailVO.setHelpDirectTradeAmt(kxsUserTradePos.getHelpDirectTradeAmt());//扶持期贷记卡
+            statUserGetTradeDetailVO.setHelpDebitTradeAmt(kxsUserTradePos.getHelpDebitTradeAmt());//扶持期借记卡
+            statUserGetTradeDetailVO.setHelpDebitCapTradeAmt(kxsUserTradePos.getHelpDebitCapTradeAmt());//扶持期借记卡封顶交易额
+            statUserGetTradeDetailVO.setHelpDebitCapNum(kxsUserTradePos.getHelpDebitCapNum());//扶持期借记卡封顶交易笔数
+            BigDecimal helpNotCapTrade = kxsUserTradePos.getHelpDebitTradeAmt().subtract(kxsUserTradePos.getHelpDebitCapTradeAmt());//非封顶交易额
+            statUserGetTradeDetailVO.setHelpBDebitNotCapTrade(helpNotCapTrade);//扶持期非封顶借记卡交易额
+
+
+            statUserGetTradeDetailVO.setProDirectTradeAmt(kxsUserTradePos.getProDirectTradeAmt());//稳定期贷记卡
+            statUserGetTradeDetailVO.setProDebitTradeAmt(kxsUserTradePos.getProDebitTradeAmt());//稳定期借记卡
+            statUserGetTradeDetailVO.setProDebitCapTradeAmt(kxsUserTradePos.getProDebitCapTradeAmt());//稳定期借记卡封顶交易额
+            statUserGetTradeDetailVO.setProDebitCapNum(kxsUserTradePos.getProDebitCapNum());//稳定期借记卡封顶交易笔数
+            BigDecimal proNotCapTrade = kxsUserTradePos.getProDebitTradeAmt().subtract(kxsUserTradePos.getProDebitCapTradeAmt());//非封顶交易额
+            statUserGetTradeDetailVO.setProDebitNotCapTrade(proNotCapTrade);//稳定期非封顶借记卡交易额
+
+
+            statUserGetTradeDetailVO.setProADirectTradeAmt(kxsUserTradePos.getProADirectTradeAmt());//稳A贷记
+            statUserGetTradeDetailVO.setProADebitTradeAmt(kxsUserTradePos.getProADebitTradeAmt());//稳A借记
+            statUserGetTradeDetailVO.setProADebitCapTradeAmt(kxsUserTradePos.getProADebitCapTradeAmt());//稳定期A借记卡封顶交易额
+            statUserGetTradeDetailVO.setProADebitCapNum(kxsUserTradePos.getProADebitCapNum());//稳定期A借记卡封顶交易笔数
+            BigDecimal proANotCapTrade = kxsUserTradePos.getProADebitTradeAmt().subtract(kxsUserTradePos.getProADebitCapTradeAmt());//非封顶交易额
+            statUserGetTradeDetailVO.setProADebitNotCapTrade(proANotCapTrade);//稳定期b非封顶借记卡交易额
+
+
+            statUserGetTradeDetailVO.setProBDebitTradeAmt(kxsUserTradePos.getProBDirectTradeAmt());//稳定期B借记卡
+            statUserGetTradeDetailVO.setProBDirectTradeAmt(kxsUserTradePos.getProBDebitTradeAmt());//稳定期B贷记卡
+            statUserGetTradeDetailVO.setProBDebitCapTradeAmt(kxsUserTradePos.getProBDebitCapTradeAmt());//稳定期B借记卡封顶交易额
+            statUserGetTradeDetailVO.setProBDebitCapNum(kxsUserTradePos.getProBDebitCapNum());//稳定期B借记卡封顶交易笔数
+            BigDecimal proBNotCapTrade = kxsUserTradePos.getProBDebitTradeAmt().subtract(kxsUserTradePos.getProBDebitCapTradeAmt());//稳定期b非封顶交易额
+            statUserGetTradeDetailVO.setProBDebitNotCapTrade(proBNotCapTrade);//稳定期b非封顶借记卡交易额
+        }
+        KxsUserTrade kxsUserTradeCloud = null;
+        try {
+            kxsUserTradeCloud = baseMapper.getAllUserTrderSum(userId, date, getType, 1, brandId, totalType, tableName);//云闪付
+        }catch (Exception e){
+            log.info(e.getMessage());
+        }
+        if (kxsUserTradeCloud != null) {
+            BigDecimal helpTrade = kxsUserTradeCloud.getHelpDebitCapTradeAmt().add(kxsUserTradeCloud.getHelpDirectTradeAmt());//计算扶持期云闪付交易额
+            statUserGetTradeDetailVO.setHelpCloudTrade(helpTrade);//扶持期云闪付交易额
+
+            BigDecimal proTrade = kxsUserTradeCloud.getProDebitCapTradeAmt().add(kxsUserTradeCloud.getProDirectTradeAmt());//计算稳定期云闪付交易额
+            statUserGetTradeDetailVO.setProCloudTrade(proTrade);//稳定期云闪付交易额
+
+            BigDecimal proATrade = kxsUserTradeCloud.getProADebitCapTradeAmt().add(kxsUserTradeCloud.getProADirectTradeAmt());//计算稳定期b云闪付交易额
+            statUserGetTradeDetailVO.setProACloudTrade(proATrade);//稳定期A云闪付交易额
+
+            BigDecimal proBTrade = kxsUserTradeCloud.getProBDebitCapTradeAmt().add(kxsUserTradeCloud.getProBDirectTradeAmt());//计算稳定期a云闪付交易额
+            statUserGetTradeDetailVO.setProBCloudTrade(proBTrade);//稳定期B云闪付交易额
+        }
+        return R.ok(statUserGetTradeDetailVO);
     }
 
     private ArrayList<StatUserGetUserTradeStatListVO> getUserGetUserTradeStatListVOSByDay(String month, Integer totalType, Long userId, Integer getType, LocalDate now, List<String> times, String tableName, Integer tradeType) {

+ 0 - 5
kxs-stat/kxs-stat-biz/src/main/resources/mapper/KxsUserTradeMapper.xml

@@ -296,11 +296,6 @@
         sum(pro_direct_trade_amt) as pro_direct_trade_amt,
         sum(help_debit_trade_amt) as help_debit_trade_amt,
         sum(help_direct_trade_amt) as help_direct_trade_amt
-        brand_id,
-        trade_month,
-        trade_date,
-        id,
-        user_id
         from ${tableName}
         <where>
             and total_type = #{totalType}