using Domain.Entities.Members; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace Domain.Entities.Feed; public class FeedPost { [ForeignKey(nameof(MemberID))] public virtual Member Member { get; set; } = null!; // 댓글 public virtual List FeedComment { get; set; } = []; // 이미지 public virtual List FeedPostImage { get; set; } = []; // 미디어 (영상/오디오 URL) public virtual List FeedPostMedia { get; set; } = []; // 태그 public virtual List FeedPostTag { get; set; } = []; // 멘션 public virtual List FeedPostMention { get; set; } = []; // 좋아요 public virtual List FeedLike { get; set; } = []; // 북마크 public virtual List FeedBookmark { get; set; } = []; [Key] public int ID { get; set; } public int MemberID { get; set; } public string Content { get; set; } = default!; public string? Thumbnail { get; set; } public byte Images { get; set; } = 0; public byte Medias { get; set; } = 0; public byte Tags { get; set; } = 0; public int Likes { get; set; } = 0; public int Comments { get; set; } = 0; public int Bookmarks { get; set; } = 0; public int Views { get; set; } = 0; public int Reports { get; set; } = 0; public bool IsDeleted { get; set; } = false; public string? IpAddress { get; set; } public string? UserAgent { get; set; } public DateTime? DeletedAt { get; set; } public DateTime? UpdatedAt { get; set; } public DateTime CreatedAt { get; set; } = DateTime.UtcNow; }