Эх сурвалжийг харах

修复我的职级实时交易额统计

mac 2 жил өмнө
parent
commit
5b13e03bdc

+ 3 - 3
kxs-transfer/src/main/java/com/kxs/transfer/api/controller/DtsController.java

@@ -139,9 +139,9 @@ public class DtsController {
 //                kxsUserAdvanceService.changeData(dmlData);
 //            }
             //用户账户余额日志
-//            if ("UserAccountRecord".equals(dmlData.getTableName())) {
-//                kxsUserAmountLogService.changeData(dmlData);
-//            }
+            if ("UserAccountRecord".equals(dmlData.getTableName())) {
+                kxsUserAmountLogService.changeData(dmlData);
+            }
             //用户提现申请记录
             if ("UserCashRecord".equals(dmlData.getTableName()) && "KxsProfitServer".equals(dmlData.getDatabaseName())) {
                 kxsUserWithdrawalService.changeData(dmlData);

+ 31 - 2
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/old/TradeDaySummaryMapper.java

@@ -7,6 +7,8 @@ import com.kxs.user.api.vo.kxsapp.userLevel.AmountDetailVO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.math.BigDecimal;
+
 /**
  * 交易统计查询
  *
@@ -18,12 +20,39 @@ import org.apache.ibatis.annotations.Param;
 public interface TradeDaySummaryMapper extends BaseMapper<TradeDaySummary> {
 
     /**
-     * 某月业绩pos 广电 助力宝的交易额
+     * 某月业绩pos交易额
+     *
+     * @param userId     用户 ID
+     * @param queryMonth 本月
+     * @return {@link AmountDetailVO}
+     */
+    BigDecimal currentMonthsPosTotal(@Param("userId") Long userId, @Param("queryMonth") String queryMonth);
+
+    /**
+     * 某月业绩稳定期B 广电 助力宝的交易额
+     *
+     * @param userId    用户 ID
+     * @param queryMonth 本月
+     * @return {@link AmountDetailVO}
+     */
+    BigDecimal currentMonthsPosTotal2(@Param("userId") Long userId, @Param("queryMonth") String queryMonth);
+
+    /**
+     * 某月业绩广电 助力宝的交易额
+     *
+     * @param userId    用户 ID
+     * @param queryMonth 本月
+     * @return {@link AmountDetailVO}
+     */
+    Integer currentMonthsGdTotal(@Param("userId") Long userId, @Param("queryMonth") String queryMonth);
+
+    /**
+     * 某月业绩助力宝的交易额
      *
      * @param userId    用户 ID
      * @param queryMonth 本月
      * @return {@link AmountDetailVO}
      */
-    AmountDetailVO currentMonthsTotal(@Param("userId") Long userId, @Param("queryMonth") String queryMonth);
+    BigDecimal currentMonthsZlbTotal(@Param("userId") Long userId, @Param("queryMonth") String queryMonth);
 
 }

+ 16 - 8
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/service/impl/TradeDaySummaryServiceImpl.java

@@ -27,15 +27,23 @@ public class TradeDaySummaryServiceImpl extends ServiceImpl<TradeDaySummaryMappe
     public AmountDetailVO amountDetail() {
 
         Long userId = SecurityUtils.getUser().getId();
+        AmountDetailVO amountDetailVO = new AmountDetailVO();
         String thisMonth = LocalDateTimeUtil.format(LocalDateTime.now(), DatePattern.SIMPLE_MONTH_PATTERN);
-        AmountDetailVO amountDetailVO = baseMapper.currentMonthsTotal(userId, thisMonth);
-        if (amountDetailVO == null){
-            amountDetailVO = new AmountDetailVO();
-            amountDetailVO.setGd(0);
-            amountDetailVO.setPos(BigDecimal.ZERO);
-            amountDetailVO.setZlb(BigDecimal.ZERO);
-            amountDetailVO.setLkb(BigDecimal.ZERO);
-        }
+
+        BigDecimal pos = baseMapper.currentMonthsPosTotal(userId, thisMonth);
+        pos = pos == null ? BigDecimal.ZERO : pos;
+        BigDecimal pos2 = baseMapper.currentMonthsPosTotal2(userId, thisMonth);
+        pos2 = pos2 == null ? BigDecimal.ZERO : pos2;
+        amountDetailVO.setPos(pos.add(pos2));
+
+        Integer gd = baseMapper.currentMonthsGdTotal(userId, thisMonth);
+        gd = gd == null ? 0 : gd;
+        amountDetailVO.setGd(gd);
+
+        BigDecimal zlb = baseMapper.currentMonthsZlbTotal(userId, thisMonth);
+        zlb = zlb == null ? BigDecimal.ZERO : zlb;
+        amountDetailVO.setZlb(zlb);
+
         return amountDetailVO;
     }
 }

+ 27 - 24
kxs-user/kxs-user-biz/src/main/resources/mapper/TradeDaySummaryMapper.xml

@@ -3,36 +3,39 @@
 <mapper namespace="com.kxs.user.biz.mapper.old.TradeDaySummaryMapper">
 
 
-    <select id="currentMonthsTotal" resultType="com.kxs.user.api.vo.kxsapp.userLevel.AmountDetailVO">
+    <select id="currentMonthsPosTotal" resultType="java.math.BigDecimal">
 
-        select IFNULL(sum(HelpNonDirectTradeAmt + HelpNonDirectDebitTradeAmt + NotHelpNonDirectTradeAmt +
-                   NotHelpNonDirectDebitTradeAmt + ProfitNonDirectTradeAmt + ProfitNonDirectDebitTradeAmt) +
-               pos2.posAmount2,0)       as pos,
-               IFNULL(gd.gdCount, 0) as gd,
-               IFNULL(zlb, 0)        as zlb
+        select IFNULL(SUM(HelpNonDirectTradeAmt + HelpNonDirectDebitTradeAmt + NotHelpNonDirectTradeAmt + NotHelpNonDirectDebitTradeAmt + ProfitNonDirectTradeAmt + ProfitNonDirectDebitTradeAmt),
+                      0) as pos
         from TradeDaySummary pos
-                 left join (select sum(ProfitTradeAmt + ProfitDebitTradeAmt) as posAmount2, UserId
-                            from TradeDaySummary2
-                            where UserId = #{userId}
-                              and TradeMonth = #{queryMonth}
-                              and SeoTitle = 'team'
-                            GROUP BY TradeMonth) pos2 on pos2.UserId = pos.UserId
-                 left join (select sum(ActiveBuddyMerStatus) as gdCount, UserId
-                            from UserTradeMonthSummary
-                            where UserId = #{userId}
-                              and SeoTitle = 'team'
-                              and BrandId = 14) gd on gd.UserId = pos.UserId
-
-                 left join (select sum(TradeAmount) as zlb, UserId
-                            from HelpProfitUserTradeSummay
-                            where UserId = #{userId}
-                              and TradeMonth = #{queryMonth}
-                              and SeoTitle = 'team'
-                            GROUP BY TradeMonth) zlb on zlb.UserId = pos.UserId
         where pos.UserId = #{userId}
           and pos.TradeMonth = #{queryMonth}
           and pos.SeoTitle = 'team'
         group by pos.TradeMonth
 
     </select>
+    <select id="currentMonthsPosTotal2" resultType="java.math.BigDecimal">
+        select IFNULL(SUM(ProfitTradeAmt + ProfitDebitTradeAmt), 0) as posAmount2
+        from TradeDaySummary2
+        where UserId = #{userId}
+          and TradeMonth = #{queryMonth}
+          and SeoTitle = 'team'
+        GROUP BY TradeMonth
+    </select>
+    <select id="currentMonthsGdTotal" resultType="java.lang.Integer">
+        select IFNULL(SUM(ActiveBuddyMerStatus), 0) as gdCount
+        from UserTradeMonthSummary
+        where UserId = #{userId}
+          and SeoTitle = 'team'
+          and BrandId = 14
+        GROUP BY UserId
+    </select>
+    <select id="currentMonthsZlbTotal" resultType="java.math.BigDecimal">
+        select IFNULL(SUM(TradeAmount), 0) as zlb
+        from HelpProfitUserTradeSummay
+        where UserId = #{userId}
+          and TradeMonth = #{queryMonth}
+          and SeoTitle = 'team'
+        GROUP BY TradeMonth
+    </select>
 </mapper>