浏览代码

修改内容:修复删除区服再新增导致查询结果重复bug

lth 1 年之前
父节点
当前提交
61861967fc

+ 56 - 35
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/impl/PlayerDataServiceImpl.java

@@ -878,7 +878,12 @@ public class PlayerDataServiceImpl implements IPlayerDataService {
                 				a.source_system
                 				a.source_system
                 			FROM dm_game_order.t_game_server a
                 			FROM dm_game_order.t_game_server a
                 			LEFT JOIN dm_game_order.t_game b on a.source_system = b.source_system AND a.game_id = b.id
                 			LEFT JOIN dm_game_order.t_game b on a.source_system = b.source_system AND a.game_id = b.id
-                		)a LEFT JOIN dm_game_order.t_game_server_merge b
+                		)a LEFT JOIN (
+                			SELECT
+                				*
+                			FROM dm_game_order.t_game_server_merge
+                			WHERE is_delete = 0
+                		) b
                 		on a.source_system = b.source_system AND a.super_game_id = b.game_id AND a.server_id = b.server_id
                 		on a.source_system = b.source_system AND a.super_game_id = b.game_id AND a.server_id = b.server_id
                 	) h on a.source_system = h.source_system AND a.server_id = h.server_id AND a.game_id = h.game_id
                 	) h on a.source_system = h.source_system AND a.server_id = h.server_id AND a.game_id = h.game_id
                 	LEFT JOIN (
                 	LEFT JOIN (
@@ -988,7 +993,12 @@ public class PlayerDataServiceImpl implements IPlayerDataService {
                 				a.source_system
                 				a.source_system
                 			FROM dm_game_order.t_game_server a
                 			FROM dm_game_order.t_game_server a
                 			LEFT JOIN dm_game_order.t_game b on a.source_system = b.source_system AND a.game_id = b.id
                 			LEFT JOIN dm_game_order.t_game b on a.source_system = b.source_system AND a.game_id = b.id
-                		)a LEFT JOIN dm_game_order.t_game_server_merge b
+                		)a LEFT JOIN (
+                			SELECT
+                				*
+                			FROM dm_game_order.t_game_server_merge
+                			WHERE is_delete = 0
+                		) b
                 		on a.source_system = b.source_system AND a.super_game_id = b.game_id AND a.server_id = b.server_id
                 		on a.source_system = b.source_system AND a.super_game_id = b.game_id AND a.server_id = b.server_id
                 	) h on a.source_system = h.source_system AND a.server_id = h.server_id AND a.game_id = h.game_id
                 	) h on a.source_system = h.source_system AND a.server_id = h.server_id AND a.game_id = h.game_id
                 	LEFT JOIN (
                 	LEFT JOIN (
@@ -1099,7 +1109,12 @@ public class PlayerDataServiceImpl implements IPlayerDataService {
                 				a.source_system
                 				a.source_system
                 			FROM dm_game_order.t_game_server a
                 			FROM dm_game_order.t_game_server a
                 			LEFT JOIN dm_game_order.t_game b on a.source_system = b.source_system AND a.game_id = b.id
                 			LEFT JOIN dm_game_order.t_game b on a.source_system = b.source_system AND a.game_id = b.id
-                		)a LEFT JOIN dm_game_order.t_game_server_merge b
+                		)a LEFT JOIN (
+                			SELECT
+                				*
+                			FROM dm_game_order.t_game_server_merge
+                			WHERE is_delete = 0
+                		) b
                 		on a.source_system = b.source_system AND a.super_game_id = b.game_id AND a.server_id = b.server_id
                 		on a.source_system = b.source_system AND a.super_game_id = b.game_id AND a.server_id = b.server_id
                 	) h on a.source_system = h.source_system AND a.server_id = h.server_id AND a.game_id = h.game_id
                 	) h on a.source_system = h.source_system AND a.server_id = h.server_id AND a.game_id = h.game_id
                 	LEFT JOIN (
                 	LEFT JOIN (
@@ -1163,7 +1178,12 @@ public class PlayerDataServiceImpl implements IPlayerDataService {
                 	LEFT JOIN dm_game_order.t_game_user c on a.source_system = c.source_system AND a.user_id = c.id
                 	LEFT JOIN dm_game_order.t_game_user c on a.source_system = c.source_system AND a.user_id = c.id
                 	LEFT JOIN dm_game_order.t_game_user_role d on a.source_system = d.source_system AND a.user_id = d.user_id AND a.role_id = d.role_id
                 	LEFT JOIN dm_game_order.t_game_user_role d on a.source_system = d.source_system AND a.user_id = d.user_id AND a.role_id = d.role_id
                 	LEFT JOIN dm_game_order.t_game e on b.source_system = e.source_system AND b.parent_id = e.id
                 	LEFT JOIN dm_game_order.t_game e on b.source_system = e.source_system AND b.parent_id = e.id
-                	LEFT JOIN dm_game_order.t_game_server_merge f on a.source_system = f.source_system AND b.super_game_id = f.game_id AND d.server_id = f.server_id
+                	LEFT JOIN (
+                		SELECT
+                			*
+                		FROM dm_game_order.t_game_server_merge
+                		WHERE is_delete = 0
+                	) f on a.source_system = f.source_system AND b.super_game_id = f.game_id AND d.server_id = f.server_id
                 ) a
                 ) a
                 """;
                 """;
     }
     }
@@ -1177,37 +1197,38 @@ public class PlayerDataServiceImpl implements IPlayerDataService {
                 SELECT
                 SELECT
                     COUNT(1)
                     COUNT(1)
                 FROM (
                 FROM (
-                        SELECT
-                        *
-                    FROM (
-                        SELECT
-                            a.source_system , -- SDK来源
-                            a.id , -- 主键id
-                            a.create_time as dt, -- 时间
-                            c.username , -- 玩家账号
-                            a.user_id , -- 用户id
-                            a.game_id , -- 登陆游戏id
-                            b.game_name , -- 登陆游戏名
-                            b.classify , -- 游戏类型
-                            IFNULL(b.parent_id, a.game_id ) as parent_game_id , -- 父游戏id
-                            IFNULL(e.game_name, b.game_name) as parent_game_name, -- 父游戏名
-                            b.super_game_id , -- 超父游戏id
-                            a.role_id , -- 角色id
-                            a.role_name , -- 角色名
-                            d.server_id , -- 区服id
-                            d.server_name , -- 区服名
-                            f.server_name , -- 原始区服名
-                            a.os , -- 操作系统
-                            a.ip , -- 登陆ip
-                            a.device_type , -- 客户端类型
-                            a.`type` as log_type -- 登陆类型 0-注册;1-登陆;2-退出
-                        FROM dm_game_order.t_user_login_log a
-                        LEFT JOIN dm_game_order.t_game b on a.source_system = b.source_system AND a.game_id = b.id
-                        LEFT JOIN dm_game_order.t_game_user c on a.source_system = c.source_system AND a.user_id = c.id
-                        LEFT JOIN dm_game_order.t_game_user_role d on a.source_system = d.source_system AND a.user_id = d.user_id AND a.role_id = d.role_id
-                        LEFT JOIN dm_game_order.t_game e on b.source_system = e.source_system AND b.parent_id = e.id
-                        LEFT JOIN dm_game_order.t_game_server_merge f on a.source_system = f.source_system AND b.super_game_id = f.game_id AND d.server_id = f.server_id
-                    ) a
+                	SELECT
+                		a.source_system , -- SDK来源
+                		a.id , -- 主键id
+                		a.create_time as dt, -- 时间
+                		c.username , -- 玩家账号
+                		a.user_id , -- 用户id
+                		a.game_id , -- 登陆游戏id
+                		b.game_name , -- 登陆游戏名
+                		b.classify , -- 游戏类型
+                		IFNULL(b.parent_id, a.game_id ) as parent_game_id , -- 父游戏id
+                		IFNULL(e.game_name, b.game_name) as parent_game_name, -- 父游戏名
+                		b.super_game_id , -- 超父游戏id
+                		a.role_id , -- 角色id
+                		a.role_name , -- 角色名
+                		d.server_id , -- 区服id
+                		d.server_name , -- 区服名
+                		f.server_name as source_server_name, -- 原始区服名
+                		a.os , -- 操作系统
+                		a.ip , -- 登陆ip
+                		a.device_type , -- 客户端类型
+                		a.`type` as log_type -- 登陆类型 0-注册;1-登陆;2-退出
+                	FROM dm_game_order.t_user_login_log a
+                	LEFT JOIN dm_game_order.t_game b on a.source_system = b.source_system AND a.game_id = b.id
+                	LEFT JOIN dm_game_order.t_game_user c on a.source_system = c.source_system AND a.user_id = c.id
+                	LEFT JOIN dm_game_order.t_game_user_role d on a.source_system = d.source_system AND a.user_id = d.user_id AND a.role_id = d.role_id
+                	LEFT JOIN dm_game_order.t_game e on b.source_system = e.source_system AND b.parent_id = e.id
+                	LEFT JOIN (
+                		SELECT
+                			*
+                		FROM dm_game_order.t_game_server_merge
+                		WHERE is_delete = 0
+                	) f on a.source_system = f.source_system AND b.super_game_id = f.game_id AND d.server_id = f.server_id
                 ) a
                 ) a
                 """;
                 """;
     }
     }

文件差异内容过多而无法显示
+ 620 - 300
game-data/game-data-serve/src/main/java/com/zanxiang/game/data/serve/service/impl/RoleManageServiceImpl.java


部分文件因为文件数量过多而无法显示