Renamed RaidRole and RaidSignUpHistory

This commit is contained in:
t.ruspekhofer 2022-03-23 21:48:29 +01:00
parent 2bf630f3a1
commit bae69648d0
15 changed files with 144 additions and 121 deletions

View file

@ -0,0 +1,17 @@
namespace Lieb.Models.GuildWars2.Raid
{
public class DiscordRaidMessage
{
public int DiscordRaidMessageId { get; set; }
public int RaidId { get; set; }
public Raid Raid { get; set; }
public ulong DiscordMessageId { get; set; }
public ulong DiscordChannelId { get; set; }
public ulong DiscordGuildId { get; set; }
}
}

View file

@ -24,46 +24,12 @@ namespace Lieb.Models.GuildWars2.Raid
public ICollection<RaidSignUp> SignUps { get; set; } = new HashSet<RaidSignUp>();
public ICollection<SignUpHistory> SignUpHistory { get; set; } = new HashSet<SignUpHistory>();
//used to edit the Discord message
public ulong DiscordMessageId { get; set; }
public ICollection<RaidSignUpHistory> SignUpHistory { get; set; } = new HashSet<RaidSignUpHistory>();
public Raid() { }
public Raid(RaidTemplate template)
public Raid(RaidTemplate template) : base(template)
{
this.Title = template.Title;
this.Description = template.Description;
this.Organizer = template.Organizer;
this.Guild = template.Guild;
this.VoiceChat = template.VoiceChat;
this.RaidType = template.RaidType;
this.RequiredRole = template.RequiredRole;
this.DiscordChannelId = template.DiscordChannelId;
this.DiscordGuildId = template.DiscordGuildId;
foreach(PlannedRaidRole role in template.Roles)
{
this.Roles.Add(new PlannedRaidRole()
{
Description = role.Description,
Name = role.Name,
Spots = role.Spots
});
}
foreach(RaidReminder reminder in template.Reminders)
{
this.Reminders.Add(new RaidReminder()
{
ChannelId = reminder.ChannelId,
HoursBeforeRaid = reminder.HoursBeforeRaid,
Message = reminder.Message,
Sent = reminder.Sent,
Type = reminder.Type
});
}
TimeZoneInfo timeZone = TimeZoneInfo.FindSystemTimeZoneById(template.TimeZone);
StartTimeUTC = TimeZoneInfo.ConvertTimeToUtc(template.StartTime, timeZone);
EndTimeUTC = TimeZoneInfo.ConvertTimeToUtc(template.EndTime, timeZone);

View file

@ -2,7 +2,7 @@
namespace Lieb.Models.GuildWars2.Raid
{
public class RaidBase
public abstract class RaidBase
{
[Required]
[StringLength(100, ErrorMessage = "Title too long (100 character limit).")]
@ -34,13 +34,56 @@ namespace Lieb.Models.GuildWars2.Raid
public int RaidOwnerId { get; set; }
//role name, number of spots
public ICollection<PlannedRaidRole> Roles { get; set; } = new HashSet<PlannedRaidRole>();
public ICollection<RaidRole> Roles { get; set; } = new HashSet<RaidRole>();
public ICollection<RaidReminder> Reminders { get; set; } = new List<RaidReminder>();
//used to edit the Discord message
public ulong DiscordChannelId { get; set; }
public ICollection<DiscordRaidMessage> DiscordRaidMessages { get; set; } = new HashSet<DiscordRaidMessage>();
public ulong DiscordGuildId { get; set; }
public RaidBase() { }
public RaidBase(RaidBase template)
{
this.Title = template.Title;
this.Description = template.Description;
this.Organizer = template.Organizer;
this.Guild = template.Guild;
this.VoiceChat = template.VoiceChat;
this.RaidType = template.RaidType;
this.RequiredRole = template.RequiredRole;
this.MoveFlexUsers = template.MoveFlexUsers;
this.RaidOwnerId = template.RaidOwnerId;
foreach (RaidRole role in template.Roles)
{
this.Roles.Add(new RaidRole()
{
Description = role.Description,
Name = role.Name,
Spots = role.Spots
});
}
foreach (RaidReminder reminder in template.Reminders)
{
this.Reminders.Add(new RaidReminder()
{
ChannelId = reminder.ChannelId,
HoursBeforeRaid = reminder.HoursBeforeRaid,
Message = reminder.Message,
Sent = reminder.Sent,
Type = reminder.Type
});
}
foreach (DiscordRaidMessage message in template.DiscordRaidMessages)
{
this.DiscordRaidMessages.Add(new DiscordRaidMessage()
{
RaidId = message.RaidId,
DiscordMessageId = message.DiscordMessageId,
DiscordChannelId = message.DiscordChannelId,
DiscordGuildId = message.DiscordGuildId
});
}
}
}
}

View file

@ -2,9 +2,9 @@
namespace Lieb.Models.GuildWars2.Raid
{
public class PlannedRaidRole
public class RaidRole
{
public int PlannedRaidRoleId { get; set; }
public int RaidRoleId { get; set; }
public int Spots { get; set; }
[Required]

View file

@ -23,6 +23,6 @@
public Raid Raid { get; set; }
public LiebUser LiebUser { get; set; }
public GuildWars2Account GuildWars2Account { get; set; }
public PlannedRaidRole PlannedRaidRole { get; set; }
public RaidRole PlannedRaidRole { get; set; }
}
}

View file

@ -1,8 +1,8 @@
namespace Lieb.Models.GuildWars2.Raid
{
public class SignUpHistory
public class RaidSignUpHistory
{
public int SignUpHistoryId { get; set; }
public int RaidSignUpHistoryId { get; set; }
public string UserName { get; set; } = string.Empty;