using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Microsoft.EntityFrameworkCore; namespace IM_API.Models; [Table("users")] [Index("Id", Name = "ID")] [Index("Username", Name = "Username", IsUnique = true)] [MySqlCharSet("utf8mb4")] [MySqlCollation("utf8mb4_general_ci")] public partial class User { [Key] [Column("ID", TypeName = "int(11)")] public int Id { get; set; } /// /// 唯一用户名 /// [StringLength(50)] public string Username { get; set; } = null!; /// /// 密码 /// [StringLength(50)] public string Password { get; set; } = null!; /// /// 用户昵称 /// [StringLength(50)] public string NickName { get; set; } = null!; /// /// 用户在线状态 /// 0(默认):不在线 /// 1:在线 /// [Column(TypeName = "tinyint(4)")] public sbyte OlineStatus { get; set; } /// /// 创建时间 /// [Column(TypeName = "datetime")] public DateTime Created { get; set; } /// /// 修改时间 /// [Column(TypeName = "datetime")] public DateTime? Updated { get; set; } /// /// 账户状态 /// (0:未激活,1:正常,2:封禁) /// [Column(TypeName = "tinyint(4)")] public sbyte Status { get; set; } /// /// 软删除标识 /// 0:账号正常 /// 1:账号已删除 /// [Column(TypeName = "tinyint(4)")] public sbyte IsDeleted { get; set; } [InverseProperty("User")] public virtual ICollection Conversations { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection Devices { get; set; } = new List(); [InverseProperty("FriendldNavigation")] public virtual ICollection FriendFriendldNavigations { get; set; } = new List(); [InverseProperty("UserldNavigation")] public virtual ICollection FriendUserldNavigations { get; set; } = new List(); [InverseProperty("RequestUserNavigation")] public virtual ICollection FriendrequestRequestUserNavigations { get; set; } = new List(); [InverseProperty("ResponseUserNavigation")] public virtual ICollection FriendrequestResponseUserNavigations { get; set; } = new List(); [InverseProperty("InviteUserNavigation")] public virtual ICollection GroupinviteInviteUserNavigations { get; set; } = new List(); [InverseProperty("InvitedUserNavigation")] public virtual ICollection GroupinviteInvitedUserNavigations { get; set; } = new List(); [InverseProperty("GroupldNavigation")] public virtual ICollection GroupmemberGroupldNavigations { get; set; } = new List(); [InverseProperty("UserldNavigation")] public virtual ICollection GroupmemberUserldNavigations { get; set; } = new List(); [InverseProperty("GroupNavigation")] public virtual ICollection Grouprequests { get; set; } = new List(); [InverseProperty("GroupMasterNavigation")] public virtual ICollection Groups { get; set; } = new List(); [InverseProperty("UserldNavigation")] public virtual ICollection LoginLogs { get; set; } = new List(); [InverseProperty("SenderNavigation")] public virtual ICollection Messages { get; set; } = new List(); [InverseProperty("UserldNavigation")] public virtual ICollection Notifications { get; set; } = new List(); }