From 6be8403ac6b241b697572d5aab798b86cab2afed Mon Sep 17 00:00:00 2001 From: Toastie Date: Thu, 28 Nov 2024 23:20:37 +1300 Subject: [PATCH] fixed sar migration --- src/EllieBot/EllieBot.csproj | 2 +- src/EllieBot/Migrations/MigrationQueries.cs | 22 +++++++++++---------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/EllieBot/EllieBot.csproj b/src/EllieBot/EllieBot.csproj index 19ea312..50797b4 100644 --- a/src/EllieBot/EllieBot.csproj +++ b/src/EllieBot/EllieBot.csproj @@ -4,7 +4,7 @@ enable true en - 5.2.0 + 5.2.1 $(MSBuildProjectDirectory) diff --git a/src/EllieBot/Migrations/MigrationQueries.cs b/src/EllieBot/Migrations/MigrationQueries.cs index 7139467..2f81412 100644 --- a/src/EllieBot/Migrations/MigrationQueries.cs +++ b/src/EllieBot/Migrations/MigrationQueries.cs @@ -21,15 +21,17 @@ public static class MigrationQueries INNER JOIN GuildConfigs as GC ON GN.GuildConfigId = GC.Id; INSERT INTO Sar (GuildId, RoleId, SarGroupId, LevelReq) - SELECT SAR.GuildId, SAR.RoleId, MIN(SG2.Id), MIN(SAR.LevelRequirement) - FROM SelfAssignableRoles as SAR - INNER JOIN (SELECT GuildId FROM GroupName as gn - INNER JOIN GuildConfigs as gc ON gn.GuildConfigId =gc.Id - ) as SG - ON SG.GuildId = SAR.GuildId - INNER JOIN GroupName as SG2 - ON SG2.Number = SAR."Group" - GROUP BY SAR.GuildId, SAR.RoleId; + SELECT SAR.GuildId, SAR.RoleId, SG2.Id, MIN(SAR.LevelRequirement) + FROM SelfAssignableRoles as SAR + INNER JOIN (SELECT GuildId FROM GroupName as gn + INNER JOIN GuildConfigs as gc ON gn.GuildConfigId =gc.Id + ) as SG + ON SG.GuildId = SAR.GuildId + INNER JOIN (SELECT gn.Id, Number FROM GroupName as gn + INNER JOIN GuildConfigs as gc ON gn.GuildConfigId =gc.Id + ) as SG2 + ON SG2.Number = SAR."Group" + GROUP BY SAR.GuildId, SAR.RoleId; INSERT INTO SarAutoDelete (GuildId, IsEnabled) SELECT GuildId, AutoDeleteSelfAssignedRoleMessages FROM GuildConfigs WHERE AutoDeleteSelfAssignedRoleMessages = TRUE; @@ -109,7 +111,7 @@ left join guildconfigs on reactionrolemessage.guildconfigid = guildconfigs.id;") DELETE FROM WarningPunishment WHERE GuildConfigId IS NULL OR GuildConfigId NOT IN (SELECT Id FROM GuildConfigs); UPDATE WarningPunishment SET GuildId = (SELECT GuildId FROM GuildConfigs WHERE Id = GuildConfigId); - + DELETE FROM WarningPunishment as wp WHERE (wp.Count, wp.GuildConfigId) in ( SELECT wp2.Count, wp2.GuildConfigId FROM WarningPunishment as wp2