using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Text.Json.Serialization; namespace Blahblah.FlowerStory.Server.Data.Model; /// /// 评论对象 /// [Table("comments")] public class CommentItem { /// /// 自增 id,主键 /// [Column("cid")] [Key] [Required] public int Id { get; set; } /// /// 关联人 id /// [Column("uid")] [ForeignKey(nameof(Owner))] [Required] public int OwnerId { get; set; } /// /// 关联人 /// [JsonIgnore] public UserItem? Owner { get; set; } /// /// 操作时间 /// [Column("date")] [Required] [JsonPropertyName("date")] public long DateUnixTime { get; set; } /// /// 关联的事件 id /// [Column("rid")] [Required] [ForeignKey(nameof(Record))] public int RecordId { get; set; } /// /// 关联的事件 /// [JsonIgnore] public RecordItem Record { get; set; } = null!; /// /// 评论类别:1-点赞,2-收藏,3-标签,default-评论 /// [Column("category")] public int? CommentCategoryId { get; set; } /// /// 操作人 uid /// [Column("byuid")] public int? ByUserId { get; set; } /// /// 操作人名称 /// [Column("byname")] public string? ByUserName { get; set; } /// /// 备注 /// [Column("text")] public string? Text { get; set; } /// /// 操作时间 /// [NotMapped] [JsonIgnore] public DateTimeOffset Date => DateTimeOffset.FromUnixTimeMilliseconds(DateUnixTime); /// /// 纬度 /// [Column("latitude")] public double? Latitude { get; set; } /// /// 经度 /// [Column("longitude")] public double? Longitude { get; set; } }