浏览代码

修改内容:角色战力排行榜

lth 1 年之前
父节点
当前提交
3006fa4350

+ 246 - 232
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/impl/RoleManageServiceImpl.java

@@ -505,6 +505,8 @@ public class RoleManageServiceImpl implements IRoleManageService {
         if (StringUtils.isNotBlank(dto.getSourceSystem())) {
             cri.where().andEquals("source_system", dto.getSourceSystem());
         }
+        //原始服可以参与多次合服,只看最新一次的合服的原始服信息
+        cri.where().andEquals("is_merge", 0);
         //拼接分组条件
         cri.getGroupBy().groupBy("source_system" , "server_id" , "boss_server_id" , "super_game_id");
         //分页
@@ -1873,10 +1875,12 @@ public class RoleManageServiceImpl implements IRoleManageService {
                 	server_id, -- 区服ID
                 	MAX(server_name) as server_name, -- 区服名
                 	MAX(dt) as dt, -- 开服日期
+                	TIMESTAMPDIFF(DAY, MAX(dt), NOW()) start_day, -- 开服天数
                 	boss_server_id, -- 合服ID
                 	MAX(boss_server_name) as boss_server_name, -- 合服名
                 	MAX(merge_time) as merge_time , -- 合服时间
                 	MAX(sum_server_count) as sum_server_count, -- 合服次数
+                	MAX(h.is_merge) as is_merge, -- 是否参与过合服
                 	SUM(server_combat_num) as server_combat_num, -- 区服战力
                 	MAX(c.new_user_count) as new_user_count, -- 新用户人数
                 	MAX(d.create_role_count) as create_role_count , -- 创角人数
@@ -2071,6 +2075,14 @@ public class RoleManageServiceImpl implements IRoleManageService {
                 	) d on a.source_system = d.source_system AND a.server_id = d.server_id AND c.super_game_id = d.super_game_id
                 	group by a.source_system ,a.server_id ,d.boss_server_id, c.super_game_id
                 ) f on a.source_system = f.f_source_system AND a.server_id = f.f_server_id AND a.super_game_id = f.f_super_game_id AND a.boss_server_id = f.f_boss_server_id
+                LEFT JOIN (
+                	SELECT
+                		source_system as h_source_system,
+                		game_id as h_game_id,
+                		server_id as h_server_id,
+                		is_merge -- 是否参与过合服
+                	FROM dm_game_order.t_game_server_merge
+                ) h on a.source_system = h.h_source_system AND a.boss_server_id = h.h_server_id AND a.super_game_id = h.h_game_id
                 """;
     }
 
@@ -2091,10 +2103,12 @@ public class RoleManageServiceImpl implements IRoleManageService {
                     	server_id, -- 区服ID
                     	MAX(server_name) as server_name, -- 区服名
                     	MAX(dt) as dt, -- 开服日期
+                    	TIMESTAMPDIFF(DAY, MAX(dt), NOW()) start_day, -- 开服天数
                     	boss_server_id, -- 合服ID
                     	MAX(boss_server_name) as boss_server_name, -- 合服名
                     	MAX(merge_time) as merge_time , -- 合服时间
                     	MAX(sum_server_count) as sum_server_count, -- 合服次数
+                    	MAX(h.is_merge) as is_merge, -- 是否参与过合服
                     	SUM(server_combat_num) as server_combat_num, -- 区服战力
                     	MAX(c.new_user_count) as new_user_count, -- 新用户人数
                     	MAX(d.create_role_count) as create_role_count , -- 创角人数
@@ -2306,17 +2320,17 @@ public class RoleManageServiceImpl implements IRoleManageService {
                 	source_system,
                 	super_game_id , -- 超父游戏ID
                 	MAX(super_game_name) as super_game_name , -- 超父游戏名
-                	boss_server_id, -- 合服ID
-                	MAX(boss_server_name) as boss_server_name, -- 合服名
-                	MAX(merge_time) as merge_time , -- 合服时间
+                	boss_server_id as server_id, -- 合服ID
+                	MAX(boss_server_name) as server_name, -- 合服名
+                	MAX(merge_time) as dt, -- 合服时间
                 	TIMESTAMPDIFF(DAY, MAX(merge_time), NOW()) start_day, -- 开服天数
                 	MAX(sum_server_count) as sum_server_count, -- 合服次数
                 	MAX(h.is_merge) as is_merge, -- 是否参与过合服
                 	MAX(b.main_server_id) as main_server_id, -- 主服ID
                 	MAX(b.main_server_name) as main_server_name, -- 主服名
-                	MAX(son_server_ids) as son_server_ids, -- 合服的子服ID列表
-                    MAX(source_server_ids) as source_server_ids, -- 子服ID列表
-                    MAX(source_server_ids_name) as source_server_ids_name, -- 子服名列表
+                	MAX(son_server_ids) as son_server_ids, -- 合服ID列表
+                    MAX(source_server_ids) as source_server_ids, -- 原始子服ID列表
+                    MAX(source_server_ids_name) as source_server_ids_name, -- 原始子服名列表
                 	SUM(server_combat_num) as server_combat_num, -- 区服战力
                     MAX(d.new_user_count) as new_user_count, -- 新用户人数
                     MAX(e.create_role_count) as create_role_count, -- 创角人数
@@ -2413,12 +2427,12 @@ public class RoleManageServiceImpl implements IRoleManageService {
                 		a.source_system as b_source_system,
                 		a.server_id as b_server_id,
                 		a.game_id as b_game_id,
-                		MAX(a.server_name) as server_name  ,
-                		MAX(a.main_server_id) as main_server_id,
-                		MAX(c.server_name) as main_server_name,
-                		MAX(a.son_server_ids) as son_server_ids ,
-                		GROUP_CONCAT(a.source_server_ids, ',') as source_server_ids,
-                		GROUP_CONCAT(b.server_name , ',') as source_server_ids_name
+                		MAX(a.server_name) as server_name,
+                		MAX(a.main_server_id) as main_server_id, -- 主服ID
+                		MAX(c.server_name) as main_server_name, -- 主服名
+                		MAX(a.son_server_ids) as son_server_ids , -- 合服子服ID列表
+                		GROUP_CONCAT(a.source_server_ids, ',') as source_server_ids, -- 原始子服ID列表
+                		GROUP_CONCAT(b.server_name , ',') as source_server_ids_name -- 原始子服名
                 	FROM dm_game_order.t_game_server_merge a
                 	LEFT JOIN dm_game_order.t_game_server_merge b on a.source_system = b.source_system AND a.game_id = b.game_id AND a.source_server_ids = b.server_id
                 	LEFT JOIN (
@@ -2570,22 +2584,22 @@ public class RoleManageServiceImpl implements IRoleManageService {
                     COUNT(1)
                 FROM(
                     SELECT
-                    	-- 查询每个超父游戏-合服维度的信息
-                    	source_system,
-                    	super_game_id , -- 超父游戏ID
-                    	MAX(super_game_name) as super_game_name , -- 超父游戏名
-                    	boss_server_id, -- 合服ID
-                    	MAX(boss_server_name) as boss_server_name, -- 合服名
-                    	MAX(merge_time) as merge_time , -- 合服时间
-                    	TIMESTAMPDIFF(DAY, MAX(merge_time), NOW()) start_day, -- 开服天数
-                    	MAX(sum_server_count) as sum_server_count, -- 合服次数
-                    	MAX(h.is_merge) as is_merge, -- 是否参与过合服
-                    	MAX(b.main_server_id) as main_server_id, -- 主服ID
-                    	MAX(b.main_server_name) as main_server_name, -- 主服名
-                    	MAX(son_server_ids) as son_server_ids, -- 合服的子服ID列表
-                        MAX(source_server_ids) as source_server_ids, -- 子服ID列表
-                        MAX(source_server_ids_name) as source_server_ids_name, -- 子服名列表
-                    	SUM(server_combat_num) as server_combat_num, -- 区服战力
+                        -- 查询每个超父游戏-合服维度的信息
+                        source_system,
+                        super_game_id , -- 超父游戏ID
+                        MAX(super_game_name) as super_game_name , -- 超父游戏名
+                        boss_server_id as server_id, -- 合服ID
+                        MAX(boss_server_name) as server_name, -- 合服名
+                        MAX(merge_time) as dt, -- 合服时间
+                        TIMESTAMPDIFF(DAY, MAX(merge_time), NOW()) start_day, -- 开服天数
+                        MAX(sum_server_count) as sum_server_count, -- 合服次数
+                        MAX(h.is_merge) as is_merge, -- 是否参与过合服
+                        MAX(b.main_server_id) as main_server_id, -- 主服ID
+                        MAX(b.main_server_name) as main_server_name, -- 主服名
+                        MAX(son_server_ids) as son_server_ids, -- 合服ID列表
+                        MAX(source_server_ids) as source_server_ids, -- 原始子服ID列表
+                        MAX(source_server_ids_name) as source_server_ids_name, -- 原始子服名列表
+                        SUM(server_combat_num) as server_combat_num, -- 区服战力
                         MAX(d.new_user_count) as new_user_count, -- 新用户人数
                         MAX(e.create_role_count) as create_role_count, -- 创角人数
                         MAX(c.role_count) as role_count, -- 角色数量
@@ -2606,224 +2620,224 @@ public class RoleManageServiceImpl implements IRoleManageService {
                         SUM(ba3_count) as ba3_count, -- 前天付费次数
                         MAX(g.ba3_active_num) as ba3_active_num -- 前天活跃人数
                     FROM (
-                    	SELECT
-                    		-- 子查询,查询每个超父游戏-原始区服维度的信息
-                    		source_system,
-                    		super_game_id , -- 超父游戏ID
-                    		MAX(super_game_name) as super_game_name , -- 超父游戏名
-                    		server_id, -- 区服ID
-                    		MAX(server_name) as server_name, -- 区服名
-                    		boss_server_id, -- 合服ID
-                    		MAX(boss_server_name) as boss_server_name, -- 合服名
-                    		MAX(merge_time) as merge_time , -- 合服时间
-                    		MAX(sum_server_count) as sum_server_count, -- 合服次数
-                    		SUM(server_combat_num) as server_combat_num, -- 区服战力
-                    	    SUM(total_amount) as total_amount, -- 总付费金额
-                    	    SUM(ba1) as ba1, -- 今日付费金额
-                    	    SUM(ba1_count) as ba1_count, -- 今日付费次数
-                    	    SUM(ba2) as ba2, -- 昨日付费金额
-                    	    SUM(ba2_count) as ba2_count, -- 昨日付费次数
-                    	    SUM(ba3) as ba3, -- 前天付费金额
-                    	    SUM(ba3_count) as ba3_count -- 前天付费次数
-                    	FROM (
-                    		SELECT
-                    			-- 子查询,查询每个父游戏-区服维度的信息
-                    			source_system,
-                    			parent_game_id, -- 父游戏ID
-                    			MAX(parent_game_name) as parent_game_name, -- 父游戏名
-                    			super_game_id , -- 超父游戏ID
-                    			MAX(super_game_name) as super_game_name , -- 超父游戏名
-                    			server_id, -- 区服ID
-                    			MAX(server_name) as server_name, -- 区服名
-                    			boss_server_id, -- 合服ID
-                    			MAX(boss_server_name) as boss_server_name, -- 合服名
-                    			MAX(merge_time) as merge_time , -- 合服时间
-                    			MAX(sum_server_count) as sum_server_count, -- 合服次数
-                    			SUM(server_combat_num) as server_combat_num, -- 区服战力
-                    		    SUM(total_amount) as total_amount, -- 总付费金额
-                    		    SUM(ba1) as ba1, -- 今日付费金额
-                    		    SUM(ba1_count) as ba1_count, -- 今日付费次数
-                    		    SUM(ba2) as ba2, -- 昨日付费金额
-                    		    SUM(ba2_count) as ba2_count, -- 昨日付费次数
-                    		    SUM(ba3) as ba3, -- 前天付费金额
-                    		    SUM(ba3_count) as ba3_count -- 前天付费次数
-                    		FROM (
-                    			-- 子查询,查询每个子游戏-原始区服维度的信息
-                    			SELECT
-                    				source_system,
-                    				game_id, -- 子游戏ID
-                    				MAX(game_name) as game_name, -- 子游戏名
-                    				parent_game_id, -- 父游戏ID
-                    				MAX(parent_game_name) as parent_game_name, -- 父游戏名
-                    				super_game_id , -- 超父游戏ID
-                    				MAX(super_game_name) as super_game_name , -- 超父游戏名
-                    				server_id, -- 区服ID
-                    				MAX(server_name) as server_name, -- 区服名
-                    				boss_server_id, -- 合服ID
-                    				MAX(boss_server_name) as boss_server_name, -- 合服名
-                    				MAX(merge_time) as merge_time , -- 合服时间
-                    				MAX(sum_server_count) as sum_server_count, -- 合服次数
-                    				MAX(server_combat_num) as server_combat_num, -- 区服战力
-                    				MAX(total_amount) as total_amount, -- 总付费金额
-                    				MAX(ba1) as ba1, -- 今日付费金额
-                    				MAX(ba1_count) as ba1_count, -- 今日付费次数
-                    				MAX(ba2) as ba2, -- 昨日付费金额
-                    				MAX(ba2_count) as ba2_count, -- 昨日付费次数
-                    				MAX(ba3) as ba3, -- 前天付费金额
-                    				MAX(ba3_count) as ba3_count -- 前天付费次数
-                    			FROM game_ads.ads_role_combat_num_ranking
-                    			GROUP BY game_id ,parent_game_id ,super_game_id ,server_id ,boss_server_id ,source_system
-                    		) a GROUP BY parent_game_id ,super_game_id ,server_id ,boss_server_id ,source_system
-                    	) a GROUP BY super_game_id ,server_id ,boss_server_id ,source_system
+                        SELECT
+                            -- 子查询,查询每个超父游戏-原始区服维度的信息
+                            source_system,
+                            super_game_id , -- 超父游戏ID
+                            MAX(super_game_name) as super_game_name , -- 超父游戏名
+                            server_id, -- 区服ID
+                            MAX(server_name) as server_name, -- 区服名
+                            boss_server_id, -- 合服ID
+                            MAX(boss_server_name) as boss_server_name, -- 合服名
+                            MAX(merge_time) as merge_time , -- 合服时间
+                            MAX(sum_server_count) as sum_server_count, -- 合服次数
+                            SUM(server_combat_num) as server_combat_num, -- 区服战力
+                            SUM(total_amount) as total_amount, -- 总付费金额
+                            SUM(ba1) as ba1, -- 今日付费金额
+                            SUM(ba1_count) as ba1_count, -- 今日付费次数
+                            SUM(ba2) as ba2, -- 昨日付费金额
+                            SUM(ba2_count) as ba2_count, -- 昨日付费次数
+                            SUM(ba3) as ba3, -- 前天付费金额
+                            SUM(ba3_count) as ba3_count -- 前天付费次数
+                        FROM (
+                            SELECT
+                                -- 子查询,查询每个父游戏-区服维度的信息
+                                source_system,
+                                parent_game_id, -- 父游戏ID
+                                MAX(parent_game_name) as parent_game_name, -- 父游戏名
+                                super_game_id , -- 超父游戏ID
+                                MAX(super_game_name) as super_game_name , -- 超父游戏名
+                                server_id, -- 区服ID
+                                MAX(server_name) as server_name, -- 区服名
+                                boss_server_id, -- 合服ID
+                                MAX(boss_server_name) as boss_server_name, -- 合服名
+                                MAX(merge_time) as merge_time , -- 合服时间
+                                MAX(sum_server_count) as sum_server_count, -- 合服次数
+                                SUM(server_combat_num) as server_combat_num, -- 区服战力
+                                SUM(total_amount) as total_amount, -- 总付费金额
+                                SUM(ba1) as ba1, -- 今日付费金额
+                                SUM(ba1_count) as ba1_count, -- 今日付费次数
+                                SUM(ba2) as ba2, -- 昨日付费金额
+                                SUM(ba2_count) as ba2_count, -- 昨日付费次数
+                                SUM(ba3) as ba3, -- 前天付费金额
+                                SUM(ba3_count) as ba3_count -- 前天付费次数
+                            FROM (
+                                -- 子查询,查询每个子游戏-原始区服维度的信息
+                                SELECT
+                                    source_system,
+                                    game_id, -- 子游戏ID
+                                    MAX(game_name) as game_name, -- 子游戏名
+                                    parent_game_id, -- 父游戏ID
+                                    MAX(parent_game_name) as parent_game_name, -- 父游戏名
+                                    super_game_id , -- 超父游戏ID
+                                    MAX(super_game_name) as super_game_name , -- 超父游戏名
+                                    server_id, -- 区服ID
+                                    MAX(server_name) as server_name, -- 区服名
+                                    boss_server_id, -- 合服ID
+                                    MAX(boss_server_name) as boss_server_name, -- 合服名
+                                    MAX(merge_time) as merge_time , -- 合服时间
+                                    MAX(sum_server_count) as sum_server_count, -- 合服次数
+                                    MAX(server_combat_num) as server_combat_num, -- 区服战力
+                                    MAX(total_amount) as total_amount, -- 总付费金额
+                                    MAX(ba1) as ba1, -- 今日付费金额
+                                    MAX(ba1_count) as ba1_count, -- 今日付费次数
+                                    MAX(ba2) as ba2, -- 昨日付费金额
+                                    MAX(ba2_count) as ba2_count, -- 昨日付费次数
+                                    MAX(ba3) as ba3, -- 前天付费金额
+                                    MAX(ba3_count) as ba3_count -- 前天付费次数
+                                FROM game_ads.ads_role_combat_num_ranking
+                                GROUP BY game_id ,parent_game_id ,super_game_id ,server_id ,boss_server_id ,source_system
+                            ) a GROUP BY parent_game_id ,super_game_id ,server_id ,boss_server_id ,source_system
+                        ) a GROUP BY super_game_id ,server_id ,boss_server_id ,source_system
                     ) a
                     LEFT JOIN (
-                    	SELECT
-                    		a.source_system as b_source_system,
-                    		a.server_id as b_server_id,
-                    		a.game_id as b_game_id,
-                    		MAX(a.server_name) as server_name  ,
-                    		MAX(a.main_server_id) as main_server_id,
-                    		MAX(c.server_name) as main_server_name,
-                    		MAX(a.son_server_ids) as son_server_ids ,
-                    		GROUP_CONCAT(a.source_server_ids, ',') as source_server_ids,
-                    		GROUP_CONCAT(b.server_name , ',') as source_server_ids_name
-                    	FROM dm_game_order.t_game_server_merge a
-                    	LEFT JOIN dm_game_order.t_game_server_merge b on a.source_system = b.source_system AND a.game_id = b.game_id AND a.source_server_ids = b.server_id
-                    	LEFT JOIN (
-                    		SELECT
-                    			source_system ,
-                    			game_id ,
-                    			server_id  ,
-                    			MAX(server_name) as server_name
-                    		FROM dm_game_order.t_game_server_merge
-                    		GROUP BY server_id ,source_system ,game_id
-                    	) c on a.source_system = c.source_system AND a.game_id = c.game_id AND a.main_server_id = c.server_id
-                    	group by a.server_id , a.source_system , a.game_id
+                        SELECT
+                            a.source_system as b_source_system,
+                            a.server_id as b_server_id,
+                            a.game_id as b_game_id,
+                            MAX(a.server_name) as server_name,
+                            MAX(a.main_server_id) as main_server_id, -- 主服ID
+                            MAX(c.server_name) as main_server_name, -- 主服名
+                            MAX(a.son_server_ids) as son_server_ids , -- 合服子服ID列表
+                            GROUP_CONCAT(a.source_server_ids, ',') as source_server_ids, -- 原始子服ID列表
+                            GROUP_CONCAT(b.server_name , ',') as source_server_ids_name -- 原始子服名
+                        FROM dm_game_order.t_game_server_merge a
+                        LEFT JOIN dm_game_order.t_game_server_merge b on a.source_system = b.source_system AND a.game_id = b.game_id AND a.source_server_ids = b.server_id
+                        LEFT JOIN (
+                            SELECT
+                                source_system ,
+                                game_id ,
+                                server_id  ,
+                                MAX(server_name) as server_name
+                            FROM dm_game_order.t_game_server_merge
+                            GROUP BY server_id ,source_system ,game_id
+                        ) c on a.source_system = c.source_system AND a.game_id = c.game_id AND a.main_server_id = c.server_id
+                        group by a.server_id , a.source_system , a.game_id
                     ) b ON a.source_system = b.b_source_system AND a.super_game_id = b.b_game_id AND a.boss_server_id = b.b_server_id
                     LEFT JOIN (
-                    	SELECT
-                    		-- 超父-合服维度
-                    		source_system as c_source_system,
-                    		super_game_id as c_super_game_id,
-                    		boss_server_id as c_boss_server_id,
-                    		COUNT(DISTINCT role_id) as role_count -- 角色数量
-                    	FROM game_ads.ads_role_combat_num_ranking
-                    	GROUP BY super_game_id, source_system, boss_server_id
+                        SELECT
+                            -- 超父-合服维度
+                            source_system as c_source_system,
+                            super_game_id as c_super_game_id,
+                            boss_server_id as c_boss_server_id,
+                            COUNT(DISTINCT role_id) as role_count -- 角色数量
+                        FROM game_ads.ads_role_combat_num_ranking
+                        GROUP BY super_game_id, source_system, boss_server_id
                     ) c on a.source_system = c.c_source_system AND a.super_game_id = c.c_super_game_id AND a.boss_server_id = c.c_boss_server_id
                     LEFT JOIN (
-                    	SELECT
-                    		-- 超父-合服维度
-                    		a.source_system as d_source_system,
-                    		a.super_game_id as d_super_game_id,
-                    		b.boss_server_id as d_boss_server_id,
-                    		COUNT(a.association_user_id) as new_user_count -- 新用户人数
-                    	FROM (
-                    		SELECT
-                    			a.source_system ,
-                    			b.id,
-                    			a.game_id ,
-                    			a.server_id,
-                    			a.role_id ,
-                    			a.role_name ,
-                    			b.association_user_id ,
-                    			a.create_time ,
-                    			IFNULL(c.super_game_id , a.game_id) as super_game_id,
-                    			ROW_NUMBER()over(partition by b.association_user_id , a.source_system order by a.create_time asc, a.user_id asc) as num
-                    		FROM dm_game_order.t_game_user_role a
-                    		LEFT JOIN dm_game_order.t_game_user b on a.source_system = b.source_system AND a.user_id = b.id
-                    		LEFT JOIN dm_game_order.t_game c on a.source_system = c.source_system AND a.game_id = c.id
-                    	) a
-                    	LEFT JOIN (
-                    		SELECT
-                    			source_system,
-                    			server_id,
-                    			boss_server_id,
-                    			super_game_id
-                    		FROM game_ads.ads_role_combat_num_ranking
-                    		GROUP BY source_system, super_game_id, server_id, boss_server_id
-                    	) b on a.source_system = b.source_system AND a.server_id = b.server_id AND a.super_game_id = b.super_game_id
-                    	WHERE num = 1
-                    	GROUP BY a.super_game_id, b.boss_server_id, a.source_system
+                        SELECT
+                            -- 超父-合服维度
+                            a.source_system as d_source_system,
+                            a.super_game_id as d_super_game_id,
+                            b.boss_server_id as d_boss_server_id,
+                            COUNT(a.association_user_id) as new_user_count -- 新用户人数
+                        FROM (
+                            SELECT
+                                a.source_system ,
+                                b.id,
+                                a.game_id ,
+                                a.server_id,
+                                a.role_id ,
+                                a.role_name ,
+                                b.association_user_id ,
+                                a.create_time ,
+                                IFNULL(c.super_game_id , a.game_id) as super_game_id,
+                                ROW_NUMBER()over(partition by b.association_user_id , a.source_system order by a.create_time asc, a.user_id asc) as num
+                            FROM dm_game_order.t_game_user_role a
+                            LEFT JOIN dm_game_order.t_game_user b on a.source_system = b.source_system AND a.user_id = b.id
+                            LEFT JOIN dm_game_order.t_game c on a.source_system = c.source_system AND a.game_id = c.id
+                        ) a
+                        LEFT JOIN (
+                            SELECT
+                                source_system,
+                                server_id,
+                                boss_server_id,
+                                super_game_id
+                            FROM game_ads.ads_role_combat_num_ranking
+                            GROUP BY source_system, super_game_id, server_id, boss_server_id
+                        ) b on a.source_system = b.source_system AND a.server_id = b.server_id AND a.super_game_id = b.super_game_id
+                        WHERE num = 1
+                        GROUP BY a.super_game_id, b.boss_server_id, a.source_system
                     ) d on a.source_system = d.d_source_system AND a.super_game_id = d.d_super_game_id AND a.boss_server_id = d.d_boss_server_id
                     LEFT JOIN (
-                    	SELECT
-                    		-- 超父-合服维度
-                    		source_system as e_source_system,
-                    		super_game_id as e_super_game_id,
-                    		boss_server_id as e_boss_server_id,
-                    		COUNT(DISTINCT user_id) as create_role_count -- 创角人数
-                    	FROM game_ads.ads_role_combat_num_ranking
-                    	GROUP BY super_game_id, source_system, boss_server_id
+                        SELECT
+                            -- 超父-合服维度
+                            source_system as e_source_system,
+                            super_game_id as e_super_game_id,
+                            boss_server_id as e_boss_server_id,
+                            COUNT(DISTINCT user_id) as create_role_count -- 创角人数
+                        FROM game_ads.ads_role_combat_num_ranking
+                        GROUP BY super_game_id, source_system, boss_server_id
                     ) e on a.source_system = e.e_source_system AND a.super_game_id = e.e_super_game_id AND a.boss_server_id = e.e_boss_server_id
                     LEFT JOIN (
-                    	SELECT
-                    		-- 超父-合服维度
-                    		a.source_system as f_source_system,
-                    		c.super_game_id as f_super_game_id,
-                    		d.boss_server_id as f_boss_server_id,
-                    		count(DISTINCT IF(Date(NOW()) = day,user_id,NULL)) as ba1_num, -- 今日充值人数
-                    		count(DISTINCT IF(date_add(Date(NOW()),-1)=day,user_id,NULL)) as ba2_num, -- 昨日充值人数
-                    		count(DISTINCT IF(date_add(Date(NOW()),-2)=day,user_id,NULL)) as ba3_num, -- 前天充值人数
-                    		count(DISTINCT user_id) as total_num -- 总充值人数
-                    	FROM dm_game_order.t_game_server a
-                    	LEFT JOIN game_dw.dw_order_day_amount b
-                    	on a.source_system = b.source_system and a.server_id =b.server_id and a.game_id =b.game_id
-                    	LEFT JOIN (
-                    		SELECT
-                    			source_system ,
-                    			id,
-                    			IFNULL(parent_id, id) as parent_id,
-                    			IFNULL(super_game_id, id) as super_game_id
-                    		FROM dm_game_order.t_game
-                    	) c on a.source_system = c.source_system AND a.game_id = c.id
-                    	LEFT JOIN (
-                    		SELECT
-                    			source_system,
-                    			server_id,
-                    			boss_server_id,
-                    			super_game_id
-                    		FROM game_ads.ads_role_combat_num_ranking
-                    		GROUP BY source_system, super_game_id, server_id, boss_server_id
-                    	) d on a.source_system = d.source_system AND a.server_id = d.server_id AND c.super_game_id = d.super_game_id
-                    	group by a.source_system ,a.server_id ,d.boss_server_id, c.super_game_id
+                        SELECT
+                            -- 超父-合服维度
+                            a.source_system as f_source_system,
+                            c.super_game_id as f_super_game_id,
+                            d.boss_server_id as f_boss_server_id,
+                            count(DISTINCT IF(Date(NOW()) = day,user_id,NULL)) as ba1_num, -- 今日充值人数
+                            count(DISTINCT IF(date_add(Date(NOW()),-1)=day,user_id,NULL)) as ba2_num, -- 昨日充值人数
+                            count(DISTINCT IF(date_add(Date(NOW()),-2)=day,user_id,NULL)) as ba3_num, -- 前天充值人数
+                            count(DISTINCT user_id) as total_num -- 总充值人数
+                        FROM dm_game_order.t_game_server a
+                        LEFT JOIN game_dw.dw_order_day_amount b
+                        on a.source_system = b.source_system and a.server_id =b.server_id and a.game_id =b.game_id
+                        LEFT JOIN (
+                            SELECT
+                                source_system ,
+                                id,
+                                IFNULL(parent_id, id) as parent_id,
+                                IFNULL(super_game_id, id) as super_game_id
+                            FROM dm_game_order.t_game
+                        ) c on a.source_system = c.source_system AND a.game_id = c.id
+                        LEFT JOIN (
+                            SELECT
+                                source_system,
+                                server_id,
+                                boss_server_id,
+                                super_game_id
+                            FROM game_ads.ads_role_combat_num_ranking
+                            GROUP BY source_system, super_game_id, server_id, boss_server_id
+                        ) d on a.source_system = d.source_system AND a.server_id = d.server_id AND c.super_game_id = d.super_game_id
+                        group by a.source_system ,a.server_id ,d.boss_server_id, c.super_game_id
                     ) f on a.source_system = f.f_source_system AND a.super_game_id = f.f_super_game_id AND a.boss_server_id = f.f_boss_server_id
                     LEFT JOIN (
-                    	select
-                    		-- 超父-合服维度
-                    		a.source_system as g_source_system,
-                    		d.boss_server_id as g_boss_server_id,
-                    		c.super_game_id as g_super_game_id,
-                    		count(distinct IF(Date(NOW()) = dt,user_id,NULL)) as ba1_active_num, -- 今日活跃人数
-                    		count(distinct IF(date_add(Date(NOW()),-1)=dt,user_id,NULL)) as ba2_active_num, -- 昨日活跃人数
-                    		count(distinct IF(date_add(Date(NOW()),-2)=dt,user_id,NULL)) as ba3_active_num -- 前日活跃人数
-                    	from dm_game_order.t_game_server a
-                    	left join game_dw.dw_active_log b on a.source_system = b.source_system and a.server_id = b.server_id and a.game_id = b.game_id
-                    	LEFT JOIN (
-                    		SELECT
-                    			source_system ,
-                    			id,
-                    			IFNULL(parent_id, id) as parent_id,
-                    			IFNULL(super_game_id, id) as super_game_id
-                    		FROM dm_game_order.t_game
-                    	) c on a.source_system = c.source_system AND a.game_id = c.id
-                    	LEFT JOIN (
-                    		SELECT
-                    			source_system,
-                    			server_id,
-                    			boss_server_id,
-                    			super_game_id
-                    		FROM game_ads.ads_role_combat_num_ranking
-                    		GROUP BY source_system, super_game_id, server_id, boss_server_id
-                    	) d on a.source_system = d.source_system AND a.server_id = d.server_id AND c.super_game_id = d.super_game_id
-                    	group by a.source_system ,a.server_id ,d.boss_server_id, c.super_game_id
+                        select
+                            -- 超父-合服维度
+                            a.source_system as g_source_system,
+                            d.boss_server_id as g_boss_server_id,
+                            c.super_game_id as g_super_game_id,
+                            count(distinct IF(Date(NOW()) = dt,user_id,NULL)) as ba1_active_num, -- 今日活跃人数
+                            count(distinct IF(date_add(Date(NOW()),-1)=dt,user_id,NULL)) as ba2_active_num, -- 昨日活跃人数
+                            count(distinct IF(date_add(Date(NOW()),-2)=dt,user_id,NULL)) as ba3_active_num -- 前日活跃人数
+                        from dm_game_order.t_game_server a
+                        left join game_dw.dw_active_log b on a.source_system = b.source_system and a.server_id = b.server_id and a.game_id = b.game_id
+                        LEFT JOIN (
+                            SELECT
+                                source_system ,
+                                id,
+                                IFNULL(parent_id, id) as parent_id,
+                                IFNULL(super_game_id, id) as super_game_id
+                            FROM dm_game_order.t_game
+                        ) c on a.source_system = c.source_system AND a.game_id = c.id
+                        LEFT JOIN (
+                            SELECT
+                                source_system,
+                                server_id,
+                                boss_server_id,
+                                super_game_id
+                            FROM game_ads.ads_role_combat_num_ranking
+                            GROUP BY source_system, super_game_id, server_id, boss_server_id
+                        ) d on a.source_system = d.source_system AND a.server_id = d.server_id AND c.super_game_id = d.super_game_id
+                        group by a.source_system ,a.server_id ,d.boss_server_id, c.super_game_id
                     ) g on a.source_system = g.g_source_system AND a.super_game_id = g.g_super_game_id AND a.boss_server_id = g.g_boss_server_id
                     LEFT JOIN (
-                    	SELECT
-                    		source_system as h_source_system,
-                    		game_id,
-                    		server_id,
-                    		is_merge -- 是否参与过合服
-                    	FROM dm_game_order.t_game_server_merge
+                        SELECT
+                            source_system as h_source_system,
+                            game_id,
+                            server_id,
+                            is_merge -- 是否参与过合服
+                        FROM dm_game_order.t_game_server_merge
                     ) h on a.source_system = h.h_source_system AND a.boss_server_id = h.server_id AND a.super_game_id = h.game_id
                 """ + cri +
                 """