Files
IM/backend/IM_API/Models/User.cs
T
nanxun 58bc8b4b5a 前端:
1、优化消息排序逻辑
2、新增加载历史消息
3、修复已知问题
后端:
1、优化消息排序逻辑
2、增加用户信息缓存机制
3、修改日期类型为DateTimeOffset改善时区信息丢失问题
3、修复了已知问题
数据库:
1、新增SequenceId字段用于消息排序
2、新增ClientMsgId字段用于客户端消息回执
2026-02-07 22:37:56 +08:00

90 lines
2.7 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
namespace IM_API.Models;
public partial class User
{
public int Id { get; set; }
/// <summary>
/// 唯一用户名
/// </summary>
public string Username { get; set; } = null!;
/// <summary>
/// 密码
/// </summary>
public string Password { get; set; } = null!;
/// <summary>
/// 用户昵称
/// </summary>
public string? NickName { get; set; }
/// <summary>
/// 用户在线状态
/// 0(默认):不在线
/// 1:在线
/// </summary>
public sbyte OnlineStatus { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTimeOffset Created { get; set; }
/// <summary>
/// 修改时间
/// </summary>
[Column(TypeName = "datetimeoffset")]
public DateTimeOffset? Updated { get; set; }
/// <summary>
/// 账户状态
/// (0:未激活,1:正常,2:封禁)
/// </summary>
public sbyte Status { get; set; }
/// <summary>
/// 软删除标识
/// 0:账号正常
/// 1:账号已删除
/// </summary>
public sbyte IsDeleted { get; set; }
/// <summary>
/// 用户头像链接
/// </summary>
public string? Avatar { get; set; }
public virtual ICollection<Conversation> Conversations { get; set; } = new List<Conversation>();
public virtual ICollection<Device> Devices { get; set; } = new List<Device>();
public virtual ICollection<Friend> FriendFriendNavigations { get; set; } = new List<Friend>();
public virtual ICollection<FriendRequest> FriendRequestRequestUserNavigations { get; set; } = new List<FriendRequest>();
public virtual ICollection<FriendRequest> FriendRequestResponseUserNavigations { get; set; } = new List<FriendRequest>();
public virtual ICollection<Friend> FriendUsers { get; set; } = new List<Friend>();
public virtual ICollection<GroupInvite> GroupInviteInviteUserNavigations { get; set; } = new List<GroupInvite>();
public virtual ICollection<GroupInvite> GroupInviteInvitedUserNavigations { get; set; } = new List<GroupInvite>();
public virtual ICollection<GroupMember> GroupMembers { get; set; } = new List<GroupMember>();
public virtual ICollection<GroupRequest> GroupRequests { get; set; } = new List<GroupRequest>();
public virtual ICollection<Group> Groups { get; set; } = new List<Group>();
public virtual ICollection<LoginLog> LoginLogs { get; set; } = new List<LoginLog>();
public virtual ICollection<Message> Messages { get; set; } = new List<Message>();
public virtual ICollection<Notification> Notifications { get; set; } = new List<Notification>();
}