added logging to raid and template changes

This commit is contained in:
Sarah Faey 2022-11-19 00:47:52 +01:00
parent 803332bc5c
commit aad07809d2
6 changed files with 16 additions and 4 deletions

View file

@ -50,7 +50,7 @@ namespace Lieb.Data
.FirstOrDefault(r => r.RaidId == raidId, new Raid()); .FirstOrDefault(r => r.RaidId == raidId, new Raid());
} }
public async Task AddOrEditRaid(Raid raid, List<RaidRole> rolesToDelete, List<RaidReminder> remindersToDelete, List<DiscordRaidMessage> messagesToDelete) public async Task AddOrEditRaid(Raid raid, List<RaidRole> rolesToDelete, List<RaidReminder> remindersToDelete, List<DiscordRaidMessage> messagesToDelete, ulong changedBy)
{ {
if (raid != null) if (raid != null)
{ {
@ -58,6 +58,8 @@ namespace Lieb.Data
if (raid.RaidId == 0) if (raid.RaidId == 0)
{ {
context.Raids.Add(raid); context.Raids.Add(raid);
RaidLog log = RaidLog.CreateRaidLog(changedBy, raid);
await context.RaidLogs.AddAsync(log);
await context.SaveChangesAsync(); await context.SaveChangesAsync();
} }
else else
@ -78,6 +80,8 @@ namespace Lieb.Data
context.RaidRoles.RemoveRange(raid.Roles.Where(r => !r.IsRandomSignUpRole)); context.RaidRoles.RemoveRange(raid.Roles.Where(r => !r.IsRandomSignUpRole));
} }
RaidLog log = RaidLog.CreateRaidLog(changedBy, raid);
await context.RaidLogs.AddAsync(log);
await context.SaveChangesAsync(); await context.SaveChangesAsync();
} }
await _discordService.PostRaidMessage(raid.RaidId); await _discordService.PostRaidMessage(raid.RaidId);

View file

@ -31,7 +31,7 @@ namespace Lieb.Data
.FirstOrDefault(t => t.RaidTemplateId == raidTemplateId); .FirstOrDefault(t => t.RaidTemplateId == raidTemplateId);
} }
public async Task AddOrEditTemplate(RaidTemplate template, List<RaidRole> rolesToDelete, List<RaidReminder> remindersToDelete, List<DiscordRaidMessage> messagesToDelete) public async Task AddOrEditTemplate(RaidTemplate template, List<RaidRole> rolesToDelete, List<RaidReminder> remindersToDelete, List<DiscordRaidMessage> messagesToDelete, ulong changedBy)
{ {
if (template != null) if (template != null)
{ {
@ -39,6 +39,8 @@ namespace Lieb.Data
if (template.RaidTemplateId == 0) if (template.RaidTemplateId == 0)
{ {
context.RaidTemplates.Add(template); context.RaidTemplates.Add(template);
RaidLog log = RaidLog.CreateRaidTemplateLog(changedBy, template);
await context.RaidLogs.AddAsync(log);
} }
else else
{ {
@ -46,6 +48,8 @@ namespace Lieb.Data
context.RaidRoles.RemoveRange(rolesToDelete); context.RaidRoles.RemoveRange(rolesToDelete);
context.RaidReminders.RemoveRange(remindersToDelete); context.RaidReminders.RemoveRange(remindersToDelete);
context.DiscordRaidMessages.RemoveRange(messagesToDelete); context.DiscordRaidMessages.RemoveRange(messagesToDelete);
RaidLog log = RaidLog.CreateRaidTemplateLog(changedBy, template);
await context.RaidLogs.AddAsync(log);
} }
await context.SaveChangesAsync(); await context.SaveChangesAsync();
} }

View file

@ -34,6 +34,7 @@ namespace Lieb.Models.GuildWars2.Raid
public static RaidLog CreateRaidLog(ulong userId, Raid raid) public static RaidLog CreateRaidLog(ulong userId, Raid raid)
{ {
raid.RaidLogs.Clear();
return new RaidLog() return new RaidLog()
{ {
Type = LogType.Raid, Type = LogType.Raid,
@ -59,6 +60,7 @@ namespace Lieb.Models.GuildWars2.Raid
public static RaidLog CreateRaidTemplateLog(ulong userId, RaidTemplate template) public static RaidLog CreateRaidTemplateLog(ulong userId, RaidTemplate template)
{ {
template.TemplateLogs.Clear();
return new RaidLog() return new RaidLog()
{ {
Type = LogType.RaidTemplate, Type = LogType.RaidTemplate,

View file

@ -19,5 +19,7 @@ namespace Lieb.Models.GuildWars2.Raid
public int Interval { get; set; } public int Interval { get; set; }
public int CreateDaysBefore { get; set; } public int CreateDaysBefore { get; set; }
public ICollection<RaidLog> TemplateLogs { get; set; } = new HashSet<RaidLog>();
} }
} }

View file

@ -313,7 +313,7 @@
_raid.Reminders.Add(reminder); _raid.Reminders.Add(reminder);
} }
await RaidService.AddOrEditRaid(_raid, _rolesToDelete, _remindersToDelete, _messagesToDelete); await RaidService.AddOrEditRaid(_raid, _rolesToDelete, _remindersToDelete, _messagesToDelete, _user.Id);
NavigationManager.NavigateTo("raidoverview"); NavigationManager.NavigateTo("raidoverview");
} }
} }

View file

@ -334,7 +334,7 @@
_template.Reminders.Add(reminder); _template.Reminders.Add(reminder);
} }
await RaidTemplateService.AddOrEditTemplate(_template, _rolesToDelete, _remindersToDelete, _messagesToDelete); await RaidTemplateService.AddOrEditTemplate(_template, _rolesToDelete, _remindersToDelete, _messagesToDelete, _user.Id);
NavigationManager.NavigateTo("raidtemplateoverview"); NavigationManager.NavigateTo("raidtemplateoverview");
} }
} }