using Domain.Entities.Forum.Boards; using Domain.Entities.Forum.ValueObject; using Domain.Entities.Members; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace Domain.Entities.Forum.Posts { public class PostReport { [ForeignKey(nameof(BoardID))] public Board Board { get; set; } = null!; [ForeignKey(nameof(PostID))] public Post Post { get; set; } = null!; [ForeignKey(nameof(MemberID))] public Member Member { get; set; } = null!; [Key] public int ID { get; set; } public int BoardID { get; set; } public int PostID { get; set; } public int MemberID { get; set; } public ReportType Type { get; set; } public string? Reason { get; set; } public ReportStatus Status { get; set; } = ReportStatus.Received; public string? Memo { get; set; } public string? IpAddress { get; set; } public string? UserAgent { get; set; } public DateTime? UpdatedAt { get; set; } public DateTime CreatedAt { get; set; } = DateTime.UtcNow; } }