Merge branch 'feature-nxdev' of https://gitea.nxsir.cn/code/IM into feature-nxdev

This commit is contained in:
2025-11-27 16:56:02 +08:00
25 changed files with 479 additions and 83 deletions
+10
View File
@@ -28,6 +28,16 @@ public partial class Friend
/// </summary>
public DateTime Created { get; set; }
/// <summary>
/// 好友备注名
/// </summary>
public string RemarkName { get; set; } = null!;
/// <summary>
/// 好友头像
/// </summary>
public string? Avatar { get; set; }
public virtual User FriendNavigation { get; set; } = null!;
public virtual User User { get; set; } = null!;
+1
View File
@@ -21,6 +21,7 @@ public partial class GroupMember
/// 成员角色(0:普通成员,1:管理员,2:群主)
/// </summary>
public sbyte Role { get; set; }
/// <summary>
/// 加入群聊时间
/// </summary>
+99
View File
@@ -0,0 +1,99 @@
using Microsoft.EntityFrameworkCore;
namespace IM_API.Models
{
public partial class ImContext
{
partial void OnModelCreatingPartial(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Admin>(entity =>
{
entity.Ignore(e => e.StateEnum);
});
modelBuilder.Entity<User>(entity =>
{
entity.Ignore(e => e.OnlineStatusEnum);
entity.Ignore(e => e.StatusEnum);
entity.HasQueryFilter(e => e.IsDeleted == 0);
});
modelBuilder.Entity<Conversation>(entity =>
{
});
modelBuilder.Entity<Device>(entity =>
{
entity.Ignore(e => e.DtypeEnum);
});
modelBuilder.Entity<File>(entity =>
{
});
modelBuilder.Entity<Friend>(entity =>
{
entity.Ignore(e => e.StatusEnum);
});
modelBuilder.Entity<FriendRequest>(entity =>
{
entity.Ignore(e => e.StateEnum);
});
modelBuilder.Entity<Group>(entity =>
{
entity.Ignore(e => e.StatusEnum);
entity.Ignore(e => e.AllMembersBannedEnum);
entity.Ignore(e => e.AuhorityEnum);
});
modelBuilder.Entity<GroupInvite>(entity =>
{
entity.Ignore(e => e.StateEnum);
});
modelBuilder.Entity<GroupMember>(entity =>
{
entity.Ignore(e => e.RoleEnum);
});
modelBuilder.Entity<GroupRequest>(entity =>
{
entity.Ignore(e => e.StateEnum);
});
modelBuilder.Entity<LoginLog>(entity =>
{
entity.Ignore(e => e.StateEnum);
});
modelBuilder.Entity<Message>(entity =>
{
entity.Ignore(e => e.StateEnum);
entity.Ignore(e => e.MsgTypeEnum);
});
modelBuilder.Entity<Notification>(entity =>
{
});
modelBuilder.Entity<Permission>(entity =>
{
});
modelBuilder.Entity<Permissionarole>(entity =>
{
});
modelBuilder.Entity<Role>(entity =>
{
});
}
}
}
+9 -18
View File
@@ -62,7 +62,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<Admin>(entity =>
{
entity.Ignore(x => x.StateEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -102,7 +101,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<Conversation>(entity =>
{
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -147,7 +145,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<Device>(entity =>
{
entity.Ignore(x => x.DtypeEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -219,7 +216,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<Friend>(entity =>
{
entity.Ignore(x => x.StatusEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -236,12 +232,18 @@ public partial class ImContext : DbContext
entity.Property(e => e.Id)
.HasColumnType("int(11)")
.HasColumnName("ID");
entity.Property(e => e.Avatar)
.HasMaxLength(255)
.HasComment("好友头像");
entity.Property(e => e.Created)
.HasComment("好友关系创建时间")
.HasColumnType("datetime");
entity.Property(e => e.FriendId)
.HasComment("用户2ID")
.HasColumnType("int(11)");
entity.Property(e => e.RemarkName)
.HasMaxLength(20)
.HasComment("好友备注名");
entity.Property(e => e.Status)
.HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)")
.HasColumnType("tinyint(4)");
@@ -262,7 +264,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<FriendRequest>(entity =>
{
entity.Ignore(x => x.StateEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -306,9 +307,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<Group>(entity =>
{
entity.Ignore(x => x.StatusEnum);
entity.Ignore(x => x.AllMembersBannedEnum);
entity.Ignore(x => x.AuhorityEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -353,7 +351,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<GroupInvite>(entity =>
{
entity.Ignore(x => x.StateEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -402,7 +399,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<GroupMember>(entity =>
{
entity.Ignore(x => x.RoleEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -446,7 +442,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<GroupRequest>(entity =>
{
entity.Ignore(x => x.StateEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -488,7 +483,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<LoginLog>(entity =>
{
entity.Ignore(x => x.StateEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -523,8 +517,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<Message>(entity =>
{
entity.Ignore(x => x.StateEnum);
entity.Ignore(x => x.MsgTypeEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -689,10 +681,6 @@ public partial class ImContext : DbContext
modelBuilder.Entity<User>(entity =>
{
// 忽略包装枚举属性
entity.Ignore(e => e.OnlineStatusEnum);
entity.Ignore(e => e.StatusEnum);
entity.HasKey(e => e.Id).HasName("PRIMARY");
entity
@@ -707,6 +695,9 @@ public partial class ImContext : DbContext
entity.Property(e => e.Id)
.HasColumnType("int(11)")
.HasColumnName("ID");
entity.Property(e => e.Avatar)
.HasMaxLength(255)
.HasComment("用户头像链接");
entity.Property(e => e.Created)
.HasDefaultValueSql("'1970-01-01 00:00:00'")
.HasComment("创建时间")
+5
View File
@@ -52,6 +52,11 @@ public partial class User
/// </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>();