|
|
|
using IdentityServer.DDD.Domain.Entites;
|
|
|
|
using Microsoft.EntityFrameworkCore;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
namespace IdentityServer.EF
|
|
|
|
{
|
|
|
|
public partial class IdentityContext : DbContext
|
|
|
|
{
|
|
|
|
public IdentityContext()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
public IdentityContext(DbContextOptions<IdentityContext> options)
|
|
|
|
: base(options)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
public virtual DbSet<IdentityRole> IdentityRole { get; set; }
|
|
|
|
public virtual DbSet<IdentityUser> IdentityUser { get; set; }
|
|
|
|
public virtual DbSet<IdentityUserOrganizationUnit> IdentityUserOrganizationUnit { get; set; }
|
|
|
|
public virtual DbSet<IdentityUserRole> IdentityUserRole { get; set; }
|
|
|
|
public virtual DbSet<PermissionGrant> PermissionGrant { get; set; }
|
|
|
|
public virtual DbSet<OrganizationUnit> OrganizationUnit { get; set; }
|
|
|
|
public virtual DbSet<OrganizationUnitRole> OrganizationUnitRole { get; set; }
|
|
|
|
|
|
|
|
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
|
|
|
|
{
|
|
|
|
if (!optionsBuilder.IsConfigured)
|
|
|
|
{
|
|
|
|
optionsBuilder.UseMySql("data source=127.0.0.1;initial catalog=Identity;user id=root;password=pwd123456", ServerVersion.Parse("8.0.28-mysql"));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
|
|
|
{
|
|
|
|
modelBuilder.UseCollation("utf8mb4_0900_ai_ci")
|
|
|
|
.HasCharSet("utf8mb4");
|
|
|
|
|
|
|
|
modelBuilder.Entity<IdentityRole>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasComment("角色表");
|
|
|
|
|
|
|
|
entity.Property(e => e.Id).HasComment("主键");
|
|
|
|
|
|
|
|
entity.Property(e => e.CreationTime).HasComment("创建时间");
|
|
|
|
|
|
|
|
entity.Property(e => e.RoleName).HasComment("角色名称");
|
|
|
|
|
|
|
|
entity.Property(e => e.TenantId).HasComment("租户Id");
|
|
|
|
});
|
|
|
|
|
|
|
|
modelBuilder.Entity<IdentityUser>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasComment("用户表");
|
|
|
|
|
|
|
|
entity.Property(e => e.Id).HasComment("主键Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.CreationTime).HasComment("创建时间");
|
|
|
|
|
|
|
|
entity.Property(e => e.Email).HasComment("邮箱");
|
|
|
|
|
|
|
|
entity.Property(e => e.EmailConfirmed).HasComment("false没配置true配置");
|
|
|
|
|
|
|
|
entity.Property(e => e.Gender).HasComment("true男,false女:默认false ");
|
|
|
|
|
|
|
|
entity.Property(e => e.LockoutEnabled).HasComment("用户是否被锁定true为锁定,false没锁定 ");
|
|
|
|
|
|
|
|
entity.Property(e => e.LockoutEnd).HasComment("锁定的结束日期 ");
|
|
|
|
|
|
|
|
entity.Property(e => e.NickName).HasComment("昵称 ");
|
|
|
|
|
|
|
|
entity.Property(e => e.PasswordHash).HasComment("密码");
|
|
|
|
|
|
|
|
entity.Property(e => e.PhoneNumber).HasComment("手机号");
|
|
|
|
|
|
|
|
entity.Property(e => e.PhoneNumberConfirmed).HasComment("false没配置true配置 ");
|
|
|
|
|
|
|
|
entity.Property(e => e.TenantId).HasComment("租户Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.UserAccount).HasComment("账户");
|
|
|
|
|
|
|
|
entity.HasMany(b => b.Roles);
|
|
|
|
|
|
|
|
entity.HasMany(b => b.OrganizationUnits);
|
|
|
|
});
|
|
|
|
|
|
|
|
modelBuilder.Entity<IdentityUserOrganizationUnit>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasComment("用户组织单位");
|
|
|
|
|
|
|
|
entity.Property(e => e.Id).HasComment("主键");
|
|
|
|
|
|
|
|
entity.Property(e => e.OrganizationUnitId).HasComment("组织Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.TenantId).HasComment("租户Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.UserId).HasComment("用户Id");
|
|
|
|
});
|
|
|
|
|
|
|
|
modelBuilder.Entity<IdentityUserRole>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasComment("用户角色");
|
|
|
|
|
|
|
|
entity.Property(e => e.Id).HasComment("主键");
|
|
|
|
|
|
|
|
entity.Property(e => e.CreationTime).HasComment("创建时间");
|
|
|
|
|
|
|
|
entity.Property(e => e.RoleId).HasComment("角色Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.UserId).HasComment("用户Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.TenantId).HasComment("租户Id");
|
|
|
|
});
|
|
|
|
|
|
|
|
modelBuilder.Entity<OrganizationUnit>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasComment("组织单位");
|
|
|
|
|
|
|
|
entity.Property(e => e.Id).HasComment("主键Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.Code).HasComment("此组织单位的层次代码。 示例:“00001.00042.00005”。这是组织单位的唯一代码。如果OU层次结构改变,它是可变的。");
|
|
|
|
|
|
|
|
entity.Property(e => e.CreationTime).HasComment("创建时间");
|
|
|
|
|
|
|
|
entity.Property(e => e.DisplayName).HasComment("此组织单位的显示名称。");
|
|
|
|
|
|
|
|
entity.Property(e => e.ParentId).HasComment("父Id Null是根。");
|
|
|
|
});
|
|
|
|
|
|
|
|
modelBuilder.Entity<OrganizationUnitRole>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasComment("组织单位成员");
|
|
|
|
|
|
|
|
entity.Property(e => e.Id).HasComment("主键Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.CreationTime).HasComment("创建时间");
|
|
|
|
|
|
|
|
entity.Property(e => e.OrganizationUnitId).HasComment("组织Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.RoleId).HasComment("角色Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.TenantId).HasComment("租户Id");
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
modelBuilder.Entity<Tenant>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasComment("租户表");
|
|
|
|
|
|
|
|
entity.Property(e => e.Id).HasComment("主键Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.CreationTime).HasComment("创建时间");
|
|
|
|
|
|
|
|
entity.Property(e => e.TenantName).HasComment("租户名称");
|
|
|
|
});
|
|
|
|
|
|
|
|
modelBuilder.Entity<PermissionGrant>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasComment("授权信息表");
|
|
|
|
|
|
|
|
entity.Property(e => e.Id).HasComment("主键Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.CreationTime).HasComment("创建时间");
|
|
|
|
|
|
|
|
entity.Property(e => e.PermissionName).HasComment("权限名称");
|
|
|
|
|
|
|
|
entity.Property(e => e.ProviderKey).HasComment("角色或者用户Id");
|
|
|
|
|
|
|
|
entity.Property(e => e.ProviderName).HasComment("提供者名称");
|
|
|
|
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|