ソースを参照

:feat:游戏总数据,增加支付宝金额,微信金额,米大师金额字段

zhangxianyu 11 ヶ月 前
コミット
5a8d5e55ea

+ 17 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/PitcherDataTotalSumVO.java

@@ -121,6 +121,23 @@ public class PitcherDataTotalSumVO {
     @ApiModelProperty(value = "新用户充值金额")
     private BigDecimal newUserAmount;
 
+    /**
+     * 支付宝金额
+     */
+    @ApiModelProperty(value = "支付宝金额")
+    private BigDecimal alipayAmount;
+    /**
+     * 微信金额
+     */
+    @ApiModelProperty(value = "微信金额")
+    private BigDecimal wxAmount;
+    /**
+     * 米大师金额
+     */
+    @ApiModelProperty(value = "米大师金额")
+    private BigDecimal miMasterAmount;
+
+
     /**
      * 新增付费次数(首日新用户充值次数)
      */

+ 16 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/PitcherDataTotalVO.java

@@ -121,6 +121,22 @@ public class PitcherDataTotalVO {
     @ApiModelProperty(value = "新用户充值次数")
     private Long newUserAmountCount;
 
+    /**
+     * 支付宝金额
+     */
+    @ApiModelProperty(value = "支付宝金额")
+    private BigDecimal alipayAmount;
+    /**
+     * 微信金额
+     */
+    @ApiModelProperty(value = "微信金额")
+    private BigDecimal wxAmount;
+    /**
+     * 米大师金额
+     */
+    @ApiModelProperty(value = "米大师金额")
+    private BigDecimal miMasterAmount;
+
     /**
      * 新用户充值人数
      */

+ 26 - 7
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/impl/PitcherDataServiceImpl.java

@@ -535,12 +535,18 @@ public class PitcherDataServiceImpl implements IPitcherDataService {
             String dayNStr = pitcherDataTotalDayNMap.get(vo.getPitcherId().toString());
             //如果为空或不存在
             if (StringUtils.isBlank(dayNStr)) {
-                dayNStr = "0.00-0";
+                dayNStr = "0.00-0.00-0.00-0.00-0-0-0";
             }
             //新用户充值金额
             vo.setNewUserAmount(new BigDecimal(dayNStr.split("-")[0]));
+            //支付宝充值金额
+            vo.setAlipayAmount(new BigDecimal(dayNStr.split("-")[1]));
+            //微信充值金额
+            vo.setWxAmount(new BigDecimal(dayNStr.split("-")[2]));
+            //米大师充值金额
+            vo.setMiMasterAmount(new BigDecimal(dayNStr.split("-")[3]));
             //新用户充值次数
-            vo.setNewUserAmountCount(Long.parseLong(dayNStr.split("-")[1]));
+            vo.setNewUserAmountCount(Long.parseLong(dayNStr.split("-")[4]));
             //老用户充值人数、次数、金额
             vo.setOldAmount(vo.getAmount().subtract(vo.getNewUserAmount()));
             vo.setOldAmountCount(vo.getAmountCount() - vo.getNewUserAmountCount());
@@ -572,6 +578,7 @@ public class PitcherDataServiceImpl implements IPitcherDataService {
     public PitcherDataTotalSumVO getPitcherDataTotalSum(PitcherDataTotalSumDTO dto) {
         com.github.sd4324530.jtuple.Tuple2<List<Long>, List<Long>> poerInfo = dataPowerComponent.getPowerInfo(dto.getSourceSystem());
         List<Long> userIds = CollectionUtils.isEmpty(dto.getPitcherId()) ? poerInfo.first : dto.getPitcherId();
+//        List<Long> userIds = dto.getPitcherId();
         //如果注册时间参数为空,默认设置查询当天数据
         if (dto.getBeginDate() == null || dto.getEndDate() == null) {
             dto.setBeginDate(LocalDate.now());
@@ -641,8 +648,14 @@ public class PitcherDataServiceImpl implements IPitcherDataService {
         String dayNStr = tempDayNDataTotalPitcher(totalDTO, userIds);
         //新用户充值金额
         vo.setNewUserAmount(new BigDecimal(dayNStr.split("-")[0]));
+        //支付宝充值金额
+        vo.setAlipayAmount(new BigDecimal(dayNStr.split("-")[1]));
+        //微信充值金额
+        vo.setWxAmount(new BigDecimal(dayNStr.split("-")[2]));
+        //米大师充值金额
+        vo.setMiMasterAmount(new BigDecimal(dayNStr.split("-")[3]));
         //新用户充值次数
-        vo.setNewUserAmountCount(Long.parseLong(dayNStr.split("-")[1]));
+        vo.setNewUserAmountCount(Long.parseLong(dayNStr.split("-")[4]));
         //老用户充值人数、次数、金额
         vo.setOldAmount(vo.getAmount().subtract(vo.getNewUserAmount()));
         vo.setOldAmountCount(vo.getAmountCount() - vo.getNewUserAmountCount());
@@ -1692,7 +1705,7 @@ public class PitcherDataServiceImpl implements IPitcherDataService {
         for (AdsPitcherDayn adsPitcherDayn : list) {
             if (!tempMap.containsKey(adsPitcherDayn.getPitcherId())) {
                 //Map中没有该投手的相关数据,初始化tempMap
-                tempMap.put(adsPitcherDayn.getPitcherId(), "0.00-0");
+                tempMap.put(adsPitcherDayn.getPitcherId(), "0.00-0.00-0.00-0.00-0-0-0");
             }
             //解析每个 adsPitcherGameDayn 的 dayN
             parseJsonDataPitcher(adsPitcherDayn, tempMap, dto);
@@ -1831,7 +1844,7 @@ public class PitcherDataServiceImpl implements IPitcherDataService {
         List<AdsPitcherDayn> list = dayNSql.getList(AdsPitcherDayn.class);
         //初始化dayN结果
         Map<String, String> resMap = new HashMap<>();
-        resMap.put("dayN", "0.00-0");
+        resMap.put("dayN", "0.00-0.00-0.00-0.00-0-0-0");
 
         //循环遍历 list 按照 gameId 进行存储
         for (AdsPitcherDayn adsPitcherDayn : list) {
@@ -1946,10 +1959,16 @@ public class PitcherDataServiceImpl implements IPitcherDataService {
                 }
                 //充值的金额
                 BigDecimal chargeMoney = new BigDecimal(oldValues[0]).add(new BigDecimal(resValues[0])).setScale(2, RoundingMode.HALF_UP);
+                //支付宝金额
+                BigDecimal alipayMoney = new BigDecimal(oldValues[1]).add(new BigDecimal(resValues[1])).setScale(2, RoundingMode.HALF_UP);
+                //微信金额
+                BigDecimal wechatMoney = new BigDecimal(oldValues[2]).add(new BigDecimal(resValues[2])).setScale(2, RoundingMode.HALF_UP);
+                //米大师金额
+                BigDecimal miMasterMoney = new BigDecimal(oldValues[3]).add(new BigDecimal(resValues[3])).setScale(2, RoundingMode.HALF_UP);
                 //充值的次数
-                long count = Long.parseLong(oldValues[1]) + Long.parseLong(resValues[1]);
+                long count = Long.parseLong(oldValues[4]) + Long.parseLong(resValues[4]);
                 //合并成字符串 更新dayN的值
-                String newValue = chargeMoney + "-" + count;
+                String newValue = chargeMoney + "-" + alipayMoney + "-" + wechatMoney + "-" + miMasterMoney + "-" + count;
                 if (resMap.containsKey("dayN")) {
                     resMap.put("dayN", newValue);
                 } else {