Jelajahi Sumber

:feat:加百分比
- 头条广告列表加七日付费人数

zhangxianyu 1 tahun lalu
induk
melakukan
73757ca4cf

+ 6 - 0
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/pojo/vo/PromotionDayVO.java

@@ -1073,6 +1073,12 @@ public class PromotionDayVO {
     @ApiModelProperty("7日付费次数(广告)")
     private Long attributionGamePay7dCount;
 
+    /**
+     * 七日首次付费次数(广告)(也就是7日内付费的人数)
+     */
+    @ApiModelProperty("七日首次付费次数(广告)(也就是7日内付费的人数)")
+    private Long firstAttributionGamePay7dCount;
+
     /**
      * 七日人均付费次数(广告)
      */

+ 19 - 14
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/impl/PromotionDayServiceImpl.java

@@ -146,6 +146,8 @@ public class PromotionDayServiceImpl implements IAdsPromotionDayService {
         Tuple2<List<Long>, List<Long>> poerInfo = dataPowerComponent.getPowerInfo();
         List<Long> userIds = dto.getPitcherId() == null ? poerInfo.first : Collections.singletonList(dto.getPitcherId());
         List<Long> gameIds = dto.getGameId() == null ? poerInfo.second : Collections.singletonList(dto.getGameId());
+//        List<Long> userIds = dto.getPitcherId() == null ? null : Collections.singletonList(dto.getPitcherId());
+//        List<Long> gameIds = dto.getGameId() == null ? null : Collections.singletonList(dto.getGameId());
 
         //如果没有排序条件给默认值
         if (StringUtils.isBlank(dto.getSortFiled())) {
@@ -230,6 +232,8 @@ public class PromotionDayServiceImpl implements IAdsPromotionDayService {
         Tuple2<List<Long>, List<Long>> poerInfo = dataPowerComponent.getPowerInfo();
         List<Long> userIds = dto.getPitcherId() == null ? poerInfo.first : Collections.singletonList(dto.getPitcherId());
         List<Long> gameIds = dto.getGameId() == null ? poerInfo.second : Collections.singletonList(dto.getGameId());
+//        List<Long> userIds = dto.getPitcherId() == null ? null : Collections.singletonList(dto.getPitcherId());
+//        List<Long> gameIds = dto.getGameId() == null ? null : Collections.singletonList(dto.getGameId());
 
         //创建查询条件
         Criteria cri = Cnd.cri();
@@ -1141,6 +1145,7 @@ public class PromotionDayServiceImpl implements IAdsPromotionDayService {
                 		SUM(new_user_total_amount_count) as new_user_total_amount_count,
                 		SUM(new_user_total_amount_num) as new_user_total_amount_num,
                 		SUM(new_user_total_amount) as new_user_total_amount,
+                		SUM(first_attribution_game_pay7d_count) as first_attribution_game_pay7d_count,  -- 七日首次付费次数(也就是七日付费人数)
                 		round(if(SUM(today_cost) > 0, SUM(first_new_user_amount) / SUM(today_cost), 0), 4) as first_roi,
                 		SUM(twenty_four_hours_amount) as twenty_four_hours_amount,
                 		round(if(SUM(today_cost) > 0, SUM(twenty_four_hours_amount) / SUM(today_cost), 0), 4) as twenty_four_hours_roi,
@@ -1208,13 +1213,13 @@ public class PromotionDayServiceImpl implements IAdsPromotionDayService {
                      	SUM(new_user_two_hundred_user_num) as new_user_two_hundred_user_num,
                      	SUM(new_user_two_hundred_user_num_cost) as new_user_two_hundred_user_num_cost,
                         -- 2-8日的roi
-                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv2days)/SUM(today_cost),0),4) as attribution_game_in_app_roi2days,
-                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv3days)/SUM(today_cost),0),4) as attribution_game_in_app_roi3days,
-                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv4days)/SUM(today_cost),0),4) as attribution_game_in_app_roi4days,
-                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv5days)/SUM(today_cost),0),4) as attribution_game_in_app_roi5days,
-                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv6days)/SUM(today_cost),0),4) as attribution_game_in_app_roi6days,
-                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv7days)/SUM(today_cost),0),4) as attribution_game_in_app_roi7days,
-                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv8days)/SUM(today_cost),0),4) as attribution_game_in_app_roi8days
+                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv2days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi2days,
+                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv3days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi3days,
+                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv4days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi4days,
+                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv5days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi5days,
+                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv6days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi6days,
+                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv7days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi7days,
+                        ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv8days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi8days
                 	FROM
                 		game_ads.ads_promotion_day
                 """ + criA +
@@ -1360,13 +1365,13 @@ public class PromotionDayServiceImpl implements IAdsPromotionDayService {
                     SUM(new_user_two_hundred_user_num) as new_user_two_hundred_user_num,
                     SUM(new_user_two_hundred_user_num_cost) as new_user_two_hundred_user_num_cost,
                      -- 2-8日的roi
-                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv2days)/SUM(today_cost),0),4) as attribution_game_in_app_roi2days,
-                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv3days)/SUM(today_cost),0),4) as attribution_game_in_app_roi3days,
-                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv4days)/SUM(today_cost),0),4) as attribution_game_in_app_roi4days,
-                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv5days)/SUM(today_cost),0),4) as attribution_game_in_app_roi5days,
-                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv6days)/SUM(today_cost),0),4) as attribution_game_in_app_roi6days,
-                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv7days)/SUM(today_cost),0),4) as attribution_game_in_app_roi7days,
-                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv8days)/SUM(today_cost),0),4) as attribution_game_in_app_roi8days
+                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv2days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi2days,
+                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv3days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi3days,
+                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv4days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi4days,
+                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv5days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi5days,
+                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv6days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi6days,
+                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv7days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi7days,
+                    ROUND(IF(SUM(today_cost)>0,SUM(attribution_game_in_app_ltv8days)/SUM(today_cost)*100,0),2) as attribution_game_in_app_roi8days
                 FROM
                 	game_ads.ads_promotion_day
                 """;