using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace Nuuru.Server.Models { public enum BanAppealStatus { Pending, Accepted, Rejected } public class BanAppeal { [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public Guid Id { get; set; } = Guid.NewGuid(); [Required] public Guid BanId { get; set; } public Ban Ban { get; set; } = null!; [Required] public Guid UserId { get; set; } public ApplicationUser User { get; set; } = null!; [Required] [MaxLength(4000)] public string Reason { get; set; } = string.Empty; public BanAppealStatus Status { get; set; } = BanAppealStatus.Pending; public DateTime CreatedAt { get; set; } = DateTime.UtcNow; public DateTime? ResolvedAt { get; set; } [MaxLength(2000)] public string? ModeratorNote { get; set; } public Guid? ModeratorId { get; set; } public ApplicationUser? Moderator { get; set; } } }