@@ -89,31 +89,32 @@ export const getInstancePlayersStanding = async (instanceId: bigint | string) =>
8989 'flaggedAt', fip.flagged_at
9090 ) AS "data"
9191 FROM flag_instance_player fip
92- JOIN instance i ON i. instance_id = fip.instance_id
92+ JOIN instance i USING ( instance_id)
9393 WHERE fip.membership_id = p.membership_id
9494 AND fip.instance_id <> $1::bigint
95- ORDER BY date_trunc('week', fip.flagged_at) DESC, fip.cheat_probability DESC
96- LIMIT 10
95+ ORDER BY ( fip.cheat_probability - EXTRACT(EPOCH FROM (NOW() - i.date_started)) / 86400 / 365) DESC
96+ LIMIT 15
9797 ) AS f
9898 ) AS "otherRecentFlags",
9999 (
100100 SELECT COALESCE(jsonb_agg(b.data), '[]'::jsonb)
101101 FROM (
102102 SELECT json_build_object(
103- 'instanceId', bip .instance_id,
103+ 'instanceId', bi .instance_id::text ,
104104 'individualReason', bip.reason,
105105 'reason', bi.reason,
106106 'createdAt', bi.created_at,
107107 'instanceDate', i.date_started
108108 ) AS "data"
109- FROM blacklist_instance_player bip
110- JOIN instance i ON i.instance_id = bip.instance_id
111- JOIN blacklist_instance bi ON bi.instance_id = bip.instance_id
112- WHERE bip.membership_id = p.membership_id
113- AND bip.instance_id <> $1::bigint
114- AND i.date_started < NOW() - INTERVAL '6 months'
115- ORDER BY bip.instance_id DESC
116- LIMIT 10
109+ FROM blacklist_instance bi
110+ JOIN instance i ON i.instance_id = bi.instance_id
111+ JOIN instance_player ip ON ip.instance_id = bi.instance_id AND ip.membership_id = p.membership_id
112+ LEFT JOIN blacklist_instance_player bip ON bi.instance_id = bip.instance_id
113+ AND bip.membership_id = p.membership_id
114+ WHERE bi.instance_id <> $1::bigint
115+ AND NOT (bi.report_source = 'BlacklistedPlayerCascade' AND bip.membership_id IS NOT NULL)
116+ ORDER BY i.date_started DESC
117+ LIMIT 15
117118 ) AS b
118119 ) AS "blacklistedInstances"
119120 FROM instance_player ip
0 commit comments