Merge branch 'Test_IRC_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
commit
cff6b87daa
|
@ -583,6 +583,8 @@ namespace IRaCIS.Core.Application.Service
|
||||||
saveItem.IsTestUser = true;
|
saveItem.IsTestUser = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
saveItem.UserCeateSource = UserCeateSource.ReviewerSelect;
|
||||||
|
saveItem.TrialId = trialId;
|
||||||
|
|
||||||
saveItem.Code = _identityUserRepository.Select(t => t.Code).DefaultIfEmpty().Max() + 1;
|
saveItem.Code = _identityUserRepository.Select(t => t.Code).DefaultIfEmpty().Max() + 1;
|
||||||
|
|
||||||
|
|
|
@ -336,6 +336,18 @@ namespace IRaCIS.Application.Contracts
|
||||||
public DateTime? LastChangePassWordTime { get; set; }
|
public DateTime? LastChangePassWordTime { get; set; }
|
||||||
|
|
||||||
public List<IdentityUserTypeDTO> UserRoleList { get; set; }
|
public List<IdentityUserTypeDTO> UserRoleList { get; set; }
|
||||||
|
|
||||||
|
#region 用户来源
|
||||||
|
|
||||||
|
public UserCeateSource UserCeateSource { get; set; }
|
||||||
|
|
||||||
|
public Guid? TrialId { get; set; }
|
||||||
|
|
||||||
|
public string TrialCode { get; set; }
|
||||||
|
|
||||||
|
public string ResearchProgramNo { get; set; }
|
||||||
|
|
||||||
|
#endregion
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -93,6 +93,12 @@ namespace IRaCIS.Core.Application.Contracts
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public class UserTypeSelectDto
|
||||||
|
{
|
||||||
|
public Guid UserTypeId { get; set; }
|
||||||
|
public string UserTypeShortName { get; set; } = string.Empty;
|
||||||
|
}
|
||||||
|
|
||||||
public class UserTypeSimpleDTO
|
public class UserTypeSimpleDTO
|
||||||
{
|
{
|
||||||
public Guid Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
|
|
|
@ -579,7 +579,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
saveItem.OrganizationName = organizationName;
|
saveItem.OrganizationName = organizationName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
saveItem.UserCeateSource = UserCeateSource.AdminCreate;
|
||||||
saveItem.Password = MD5Helper.Md5(IRCEmailPasswordHelper.GenerateRandomPassword(10));
|
saveItem.Password = MD5Helper.Md5(IRCEmailPasswordHelper.GenerateRandomPassword(10));
|
||||||
|
|
||||||
var addRoleList = new List<UserRole>();
|
var addRoleList = new List<UserRole>();
|
||||||
|
|
|
@ -160,8 +160,7 @@ namespace IRaCIS.Core.Application.Contracts
|
||||||
{
|
{
|
||||||
//排除其他组的用户
|
//排除其他组的用户
|
||||||
var query = _userTypeRepository
|
var query = _userTypeRepository
|
||||||
.WhereIf(_userInfo.UserTypeEnumInt != (int)UserTypeEnum.SuperAdmin, t => t.IsEnable == true)
|
.Where(x => x.UserTypeEnum != UserTypeEnum.SuperAdmin && x.IsEnable==true)
|
||||||
.Where(x => x.UserTypeEnum != UserTypeEnum.SuperAdmin)
|
|
||||||
.Where(t => !t.UserTypeGroupList.Any(t => t.Group.Code == "3"))
|
.Where(t => !t.UserTypeGroupList.Any(t => t.Group.Code == "3"))
|
||||||
.OrderBy(t => t.UserTypeShortName).ProjectTo<TrialUserType>(_mapper.ConfigurationProvider);
|
.OrderBy(t => t.UserTypeShortName).ProjectTo<TrialUserType>(_mapper.ConfigurationProvider);
|
||||||
|
|
||||||
|
|
|
@ -152,7 +152,9 @@ namespace IRaCIS.Core.Application.Service
|
||||||
|
|
||||||
CreateMap<IdentityUser, UserBasicInfo>()
|
CreateMap<IdentityUser, UserBasicInfo>()
|
||||||
.ForMember(d => d.IdentityUserId, c => c.MapFrom(t => t.Id));
|
.ForMember(d => d.IdentityUserId, c => c.MapFrom(t => t.Id));
|
||||||
CreateMap<IdentityUser, UserListDTO>();
|
CreateMap<IdentityUser, UserListDTO>()
|
||||||
|
.ForMember(d => d.TrialCode, u => u.MapFrom(s => s.Trial.TrialCode))
|
||||||
|
.ForMember(d => d.ResearchProgramNo, u => u.MapFrom(s => s.Trial.ResearchProgramNo));
|
||||||
|
|
||||||
CreateMap<UserAddUserType, UserRole>().ReverseMap();
|
CreateMap<UserAddUserType, UserRole>().ReverseMap();
|
||||||
|
|
||||||
|
|
|
@ -925,7 +925,8 @@ namespace IRaCIS.Core.Application.Contracts
|
||||||
|
|
||||||
//generateUser.UserName = generateUser.UserCode;
|
//generateUser.UserName = generateUser.UserCode;
|
||||||
|
|
||||||
|
generateUser.UserCeateSource = UserCeateSource.SiteSruvey;
|
||||||
|
generateUser.TrialId = trialId;
|
||||||
generateUser.Password = MD5Helper.Md5(IRCEmailPasswordHelper.GenerateRandomPassword(10));
|
generateUser.Password = MD5Helper.Md5(IRCEmailPasswordHelper.GenerateRandomPassword(10));
|
||||||
|
|
||||||
generateUser.Status = UserStateEnum.Enable;
|
generateUser.Status = UserStateEnum.Enable;
|
||||||
|
@ -1168,6 +1169,8 @@ namespace IRaCIS.Core.Application.Contracts
|
||||||
|
|
||||||
//generateUser.UserName = generateUser.UserCode;
|
//generateUser.UserName = generateUser.UserCode;
|
||||||
|
|
||||||
|
generateUser.UserCeateSource = UserCeateSource.SiteSruvey;
|
||||||
|
generateUser.TrialId = trialId;
|
||||||
generateUser.Password = MD5Helper.Md5(IRCEmailPasswordHelper.GenerateRandomPassword(10));
|
generateUser.Password = MD5Helper.Md5(IRCEmailPasswordHelper.GenerateRandomPassword(10));
|
||||||
|
|
||||||
generateUser.Status = UserStateEnum.Enable;
|
generateUser.Status = UserStateEnum.Enable;
|
||||||
|
|
|
@ -103,6 +103,44 @@ namespace IRaCIS.Application.Contracts
|
||||||
public string FullName { get; set; }
|
public string FullName { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class IdentityUserJoinedTrialQuery : PageInput
|
||||||
|
{
|
||||||
|
[NotDefault]
|
||||||
|
public Guid IdentityUserId { get; set; }
|
||||||
|
public string? TrialCode { get; set; }
|
||||||
|
|
||||||
|
public string? ResearchProgramNo { get; set; }
|
||||||
|
|
||||||
|
public string? ExperimentName { get; set; }
|
||||||
|
|
||||||
|
public Guid? UserTypeId { get; set; }
|
||||||
|
|
||||||
|
public bool? IsDeleted { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class IdentityUserJoinedTrialView
|
||||||
|
{
|
||||||
|
public Guid TrialId { get; set; }
|
||||||
|
public string TrialCode { get; set; }
|
||||||
|
|
||||||
|
public string ResearchProgramNo { get; set; }
|
||||||
|
|
||||||
|
public string ExperimentName { get; set; }
|
||||||
|
|
||||||
|
public string TrialStatusStr { get; set; }
|
||||||
|
|
||||||
|
public DateTime TrialCreateTime { get; set; }
|
||||||
|
|
||||||
|
public List<UserTypeSelectDto> TrialUserRoleList { get; set; }
|
||||||
|
|
||||||
|
public bool IsDeleted { get; set; }
|
||||||
|
|
||||||
|
public DateTime? RemoveTime { get; set; }
|
||||||
|
|
||||||
|
public DateTime? JoinTime { get; set; }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public class TrialMaintenanceDTO : UserTrialCommand
|
public class TrialMaintenanceDTO : UserTrialCommand
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
|
@ -280,7 +280,8 @@ namespace IRaCIS.Core.Application.Service
|
||||||
|
|
||||||
//generateUser.UserName = generateUser.UserCode;
|
//generateUser.UserName = generateUser.UserCode;
|
||||||
|
|
||||||
|
generateUser.UserCeateSource = UserCeateSource.External;
|
||||||
|
generateUser.TrialId = trialId;
|
||||||
generateUser.Password = MD5Helper.Md5(IRCEmailPasswordHelper.GenerateRandomPassword(10));
|
generateUser.Password = MD5Helper.Md5(IRCEmailPasswordHelper.GenerateRandomPassword(10));
|
||||||
|
|
||||||
generateUser.Status = UserStateEnum.Enable;
|
generateUser.Status = UserStateEnum.Enable;
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
using FellowOakDicom;
|
using FellowOakDicom;
|
||||||
using IRaCIS.Application.Contracts;
|
using IRaCIS.Application.Contracts;
|
||||||
using IRaCIS.Application.Interfaces;
|
using IRaCIS.Application.Interfaces;
|
||||||
|
using IRaCIS.Core.Application.Contracts;
|
||||||
using IRaCIS.Core.Application.Contracts.DTO;
|
using IRaCIS.Core.Application.Contracts.DTO;
|
||||||
using IRaCIS.Core.Application.Filter;
|
using IRaCIS.Core.Application.Filter;
|
||||||
using IRaCIS.Core.Domain.Models;
|
using IRaCIS.Core.Domain.Models;
|
||||||
|
@ -28,6 +29,34 @@ namespace IRaCIS.Core.Application.Service
|
||||||
.ToListAsync();
|
.ToListAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[HttpPost]
|
||||||
|
public async Task<PageOutput<IdentityUserJoinedTrialView>> GetUserJoinedTrialList(IdentityUserJoinedTrialQuery inQuery)
|
||||||
|
{
|
||||||
|
var list = await _trialIdentityUserRepository.Where(t => t.IdentityUserId == inQuery.IdentityUserId, false, true)
|
||||||
|
.WhereIf(!string.IsNullOrEmpty(inQuery.TrialCode), o => o.Trial.TrialCode.Contains(inQuery.TrialCode))
|
||||||
|
.WhereIf(!string.IsNullOrEmpty(inQuery.ResearchProgramNo), o => o.Trial.ResearchProgramNo.Contains(inQuery.ResearchProgramNo))
|
||||||
|
.WhereIf(!string.IsNullOrWhiteSpace(inQuery.ExperimentName), o => o.Trial.ExperimentName.Contains(inQuery.ExperimentName))
|
||||||
|
.WhereIf(inQuery.UserTypeId != null, o => o.TrialUserRoleList.Any(t => t.UserRole.UserTypeId == inQuery.UserTypeId))
|
||||||
|
.WhereIf(inQuery.IsDeleted != null, t => t.IsDeleted == inQuery.IsDeleted)
|
||||||
|
.Select(t => new IdentityUserJoinedTrialView()
|
||||||
|
{
|
||||||
|
TrialId = t.TrialId,
|
||||||
|
TrialCode = t.Trial.TrialCode,
|
||||||
|
TrialCreateTime = t.Trial.CreateTime,
|
||||||
|
ExperimentName = t.Trial.ExperimentName,
|
||||||
|
ResearchProgramNo = t.Trial.ResearchProgramNo,
|
||||||
|
TrialStatusStr = t.Trial.TrialStatusStr,
|
||||||
|
|
||||||
|
IsDeleted = t.IsDeleted,
|
||||||
|
JoinTime = t.JoinTime,
|
||||||
|
RemoveTime = t.RemoveTime,
|
||||||
|
TrialUserRoleList = t.TrialUserRoleList.Select(t => new UserTypeSelectDto() { UserTypeId = t.UserRole.UserTypeRole.Id, UserTypeShortName = t.UserRole.UserTypeRole.UserTypeShortName }).ToList(),
|
||||||
|
|
||||||
|
}).ToPagedListAsync(inQuery);
|
||||||
|
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
#region 多账户调整已修改
|
#region 多账户调整已修改
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Setting页面 获取项目参与人员列表
|
/// Setting页面 获取项目参与人员列表
|
||||||
|
|
|
@ -27,6 +27,7 @@ using MiniExcelLibs;
|
||||||
using NPOI.SS.Formula.Functions;
|
using NPOI.SS.Formula.Functions;
|
||||||
using NPOI.XWPF.UserModel;
|
using NPOI.XWPF.UserModel;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
|
using System.Linq.Dynamic.Core;
|
||||||
using System.Reflection.Metadata.Ecma335;
|
using System.Reflection.Metadata.Ecma335;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
@ -155,8 +156,44 @@ namespace IRaCIS.Core.Application.Service
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[AllowAnonymous]
|
||||||
|
public async Task<IResponseOutput> UserCreateSourceDeal([FromServices] IRepository<IdentityUser> _identityUserRepository,
|
||||||
|
[FromServices] IRepository<TrialUserRole> _trialUserRoleRepository)
|
||||||
|
{
|
||||||
|
var list = _userRoleRepository.Where().IgnoreQueryFilters().ToList();
|
||||||
|
|
||||||
|
foreach (var item in list.GroupBy(t => t.IdentityUserId))
|
||||||
|
{
|
||||||
|
var userRoleList = item.OrderBy(t => t.CreateTime).ToList();
|
||||||
|
|
||||||
|
var firstCreateRole = userRoleList.FirstOrDefault();
|
||||||
|
|
||||||
|
var firstTrialId = _trialUserRoleRepository.Where(t => t.TrialUser.IdentityUserId == firstCreateRole.IdentityUserId).IgnoreQueryFilters().OrderBy(t => t.CreateTime).Select(t => t.TrialId).FirstOrDefault();
|
||||||
|
|
||||||
|
|
||||||
|
if (firstCreateRole.UserTypeEnum == UserTypeEnum.IndependentReviewer)
|
||||||
|
{
|
||||||
|
await _identityUserRepository.BatchUpdateNoTrackingAsync(t => t.Id == firstCreateRole.IdentityUserId, u => new Domain.Models.IdentityUser() { UserCeateSource = UserCeateSource.ReviewerSelect, TrialId = firstTrialId });
|
||||||
|
}
|
||||||
|
else if (firstCreateRole.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator || firstCreateRole.UserTypeEnum == UserTypeEnum.CRA)
|
||||||
|
{
|
||||||
|
await _identityUserRepository.BatchUpdateNoTrackingAsync(t => t.Id == firstCreateRole.IdentityUserId, u => new Domain.Models.IdentityUser() { UserCeateSource = UserCeateSource.AdminCreate, TrialId = firstTrialId });
|
||||||
|
}
|
||||||
|
else if (firstCreateRole.UserTypeEnum == UserTypeEnum.SPM || firstCreateRole.UserTypeEnum == UserTypeEnum.CPM ||
|
||||||
|
firstCreateRole.UserTypeEnum == UserTypeEnum.SMM || firstCreateRole.UserTypeEnum == UserTypeEnum.CMM ||
|
||||||
|
firstCreateRole.UserTypeEnum == UserTypeEnum.EA || firstCreateRole.UserTypeEnum == UserTypeEnum.MC)
|
||||||
|
{
|
||||||
|
await _identityUserRepository.BatchUpdateNoTrackingAsync(t => t.Id == firstCreateRole.IdentityUserId, u => new Domain.Models.IdentityUser() { UserCeateSource = UserCeateSource.AdminCreate, TrialId = firstTrialId });
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
await _identityUserRepository.BatchUpdateNoTrackingAsync(t => t.Id == firstCreateRole.IdentityUserId, u => new Domain.Models.IdentityUser() { UserCeateSource = UserCeateSource.AdminCreate, TrialId = firstTrialId });
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
return ResponseOutput.Ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -62,6 +62,10 @@ public class UserRole : BaseFullAuditEntity
|
||||||
[Table("IdentityUser")]
|
[Table("IdentityUser")]
|
||||||
public class IdentityUser : BaseFullAuditEntity
|
public class IdentityUser : BaseFullAuditEntity
|
||||||
{
|
{
|
||||||
|
[JsonIgnore]
|
||||||
|
|
||||||
|
public Trial Trial { get; set; }
|
||||||
|
|
||||||
[JsonIgnore]
|
[JsonIgnore]
|
||||||
public List<TrialIdentityUser> UserTrialList { get; set; }
|
public List<TrialIdentityUser> UserTrialList { get; set; }
|
||||||
|
|
||||||
|
@ -125,5 +129,27 @@ public class IdentityUser: BaseFullAuditEntity
|
||||||
public DateTime? LastLoginTime { get; set; }
|
public DateTime? LastLoginTime { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region 用户来源
|
||||||
|
|
||||||
|
public UserCeateSource UserCeateSource { get; set; }
|
||||||
|
|
||||||
|
public Guid? TrialId { get; set; }
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public enum UserCeateSource
|
||||||
|
{
|
||||||
|
None = 0,
|
||||||
|
|
||||||
|
AdminCreate = 1,
|
||||||
|
|
||||||
|
SiteSruvey = 2,
|
||||||
|
|
||||||
|
ReviewerSelect = 3,
|
||||||
|
|
||||||
|
External=4
|
||||||
|
|
||||||
|
}
|
18929
IRaCIS.Core.Infra.EFCore/Migrations/20250224080719_AddUserCreatSouce.Designer.cs
generated
Normal file
18929
IRaCIS.Core.Infra.EFCore/Migrations/20250224080719_AddUserCreatSouce.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,60 @@
|
||||||
|
using System;
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace IRaCIS.Core.Infra.EFCore.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class AddUserCreatSouce : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.AddColumn<Guid>(
|
||||||
|
name: "TrialId",
|
||||||
|
table: "IdentityUser",
|
||||||
|
type: "uniqueidentifier",
|
||||||
|
nullable: true);
|
||||||
|
|
||||||
|
migrationBuilder.AddColumn<int>(
|
||||||
|
name: "UserCeateSource",
|
||||||
|
table: "IdentityUser",
|
||||||
|
type: "int",
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: 0);
|
||||||
|
|
||||||
|
migrationBuilder.CreateIndex(
|
||||||
|
name: "IX_IdentityUser_TrialId",
|
||||||
|
table: "IdentityUser",
|
||||||
|
column: "TrialId");
|
||||||
|
|
||||||
|
migrationBuilder.AddForeignKey(
|
||||||
|
name: "FK_IdentityUser_Trial_TrialId",
|
||||||
|
table: "IdentityUser",
|
||||||
|
column: "TrialId",
|
||||||
|
principalTable: "Trial",
|
||||||
|
principalColumn: "Id");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropForeignKey(
|
||||||
|
name: "FK_IdentityUser_Trial_TrialId",
|
||||||
|
table: "IdentityUser");
|
||||||
|
|
||||||
|
migrationBuilder.DropIndex(
|
||||||
|
name: "IX_IdentityUser_TrialId",
|
||||||
|
table: "IdentityUser");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "TrialId",
|
||||||
|
table: "IdentityUser");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "UserCeateSource",
|
||||||
|
table: "IdentityUser");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -2824,12 +2824,18 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
|
||||||
b.Property<int>("Status")
|
b.Property<int>("Status")
|
||||||
.HasColumnType("int");
|
.HasColumnType("int");
|
||||||
|
|
||||||
|
b.Property<Guid?>("TrialId")
|
||||||
|
.HasColumnType("uniqueidentifier");
|
||||||
|
|
||||||
b.Property<DateTime>("UpdateTime")
|
b.Property<DateTime>("UpdateTime")
|
||||||
.HasColumnType("datetime2");
|
.HasColumnType("datetime2");
|
||||||
|
|
||||||
b.Property<Guid>("UpdateUserId")
|
b.Property<Guid>("UpdateUserId")
|
||||||
.HasColumnType("uniqueidentifier");
|
.HasColumnType("uniqueidentifier");
|
||||||
|
|
||||||
|
b.Property<int>("UserCeateSource")
|
||||||
|
.HasColumnType("int");
|
||||||
|
|
||||||
b.Property<string>("UserCode")
|
b.Property<string>("UserCode")
|
||||||
.IsRequired()
|
.IsRequired()
|
||||||
.HasMaxLength(400)
|
.HasMaxLength(400)
|
||||||
|
@ -2844,6 +2850,8 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
|
||||||
|
|
||||||
b.HasIndex("CreateUserId");
|
b.HasIndex("CreateUserId");
|
||||||
|
|
||||||
|
b.HasIndex("TrialId");
|
||||||
|
|
||||||
b.ToTable("IdentityUser", t =>
|
b.ToTable("IdentityUser", t =>
|
||||||
{
|
{
|
||||||
t.HasComment("后台 - 系统真实账户表");
|
t.HasComment("后台 - 系统真实账户表");
|
||||||
|
@ -11799,194 +11807,6 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("IRaCIS.Core.Domain.Models.TrialFile", b =>
|
|
||||||
{
|
|
||||||
b.Property<Guid>("Id")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.Property<DateTime>("CreateTime")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<Guid>("CreateUserId")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.Property<string>("FileFormat")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(400)
|
|
||||||
.HasColumnType("nvarchar(400)");
|
|
||||||
|
|
||||||
b.Property<string>("FileName")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(400)
|
|
||||||
.HasColumnType("nvarchar(400)");
|
|
||||||
|
|
||||||
b.Property<string>("FilePath")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(1000)
|
|
||||||
.HasColumnType("nvarchar(1000)");
|
|
||||||
|
|
||||||
b.Property<string>("FileSize")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(400)
|
|
||||||
.HasColumnType("nvarchar(400)");
|
|
||||||
|
|
||||||
b.Property<Guid>("TrialFileTypeId")
|
|
||||||
.HasColumnType("uniqueidentifier")
|
|
||||||
.HasComment("关联项目文件类型");
|
|
||||||
|
|
||||||
b.Property<DateTime>("UpdateTime")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<Guid>("UpdateUserId")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("CreateUserId");
|
|
||||||
|
|
||||||
b.ToTable("TrialFile", t =>
|
|
||||||
{
|
|
||||||
t.HasComment("项目文件 - 文件表");
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("IRaCIS.Core.Domain.Models.TrialFileType", b =>
|
|
||||||
{
|
|
||||||
b.Property<Guid>("Id")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.Property<int>("ArchiveTypeEnum")
|
|
||||||
.HasColumnType("int")
|
|
||||||
.HasComment("报告、文档、记录");
|
|
||||||
|
|
||||||
b.Property<DateTime>("CreateTime")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<Guid>("CreateUserId")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.Property<DateOnly>("FirstFinalDate")
|
|
||||||
.HasColumnType("date")
|
|
||||||
.HasComment("首次定稿日期");
|
|
||||||
|
|
||||||
b.Property<bool>("IsConfirmRecord")
|
|
||||||
.HasColumnType("bit")
|
|
||||||
.HasComment("是否确认收入项");
|
|
||||||
|
|
||||||
b.Property<bool>("IsEnable")
|
|
||||||
.HasColumnType("bit");
|
|
||||||
|
|
||||||
b.Property<bool>("IsSelfDefine")
|
|
||||||
.HasColumnType("bit")
|
|
||||||
.HasComment("是否自定义");
|
|
||||||
|
|
||||||
b.Property<string>("Name")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(400)
|
|
||||||
.HasColumnType("nvarchar(400)");
|
|
||||||
|
|
||||||
b.Property<string>("NameCN")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(400)
|
|
||||||
.HasColumnType("nvarchar(400)");
|
|
||||||
|
|
||||||
b.Property<int>("ShowOrder")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("SubIdentificationEnum")
|
|
||||||
.HasColumnType("int")
|
|
||||||
.HasComment("子类标识,是取那个表的数据");
|
|
||||||
|
|
||||||
b.Property<Guid?>("SysFileTypeId")
|
|
||||||
.HasColumnType("uniqueidentifier")
|
|
||||||
.HasComment("关联系统文件类型");
|
|
||||||
|
|
||||||
b.Property<Guid>("TrialId")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.Property<DateTime>("UpdateTime")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<Guid>("UpdateUserId")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("CreateUserId");
|
|
||||||
|
|
||||||
b.ToTable("TrialFileType", t =>
|
|
||||||
{
|
|
||||||
t.HasComment("项目文件 - 文件类型表");
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("IRaCIS.Core.Domain.Models.TrialFinalRecord", b =>
|
|
||||||
{
|
|
||||||
b.Property<Guid>("Id")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.Property<DateTime>("CreateTime")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<Guid>("CreateUserId")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.Property<Guid>("HistoryFileRecordId")
|
|
||||||
.HasColumnType("uniqueidentifier")
|
|
||||||
.HasComment("历史记录");
|
|
||||||
|
|
||||||
b.Property<bool>("IsAuthorizedView")
|
|
||||||
.HasColumnType("bit")
|
|
||||||
.HasComment("是否授权查看");
|
|
||||||
|
|
||||||
b.Property<string>("Name")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(400)
|
|
||||||
.HasColumnType("nvarchar(400)");
|
|
||||||
|
|
||||||
b.Property<Guid>("PDFFileRecordId")
|
|
||||||
.HasColumnType("uniqueidentifier")
|
|
||||||
.HasComment("定稿PDF");
|
|
||||||
|
|
||||||
b.Property<Guid>("SignFileRecordId")
|
|
||||||
.HasColumnType("uniqueidentifier")
|
|
||||||
.HasComment("签名页");
|
|
||||||
|
|
||||||
b.Property<int>("State")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<Guid>("TrialFileTypeId")
|
|
||||||
.HasColumnType("uniqueidentifier")
|
|
||||||
.HasComment("关联项目文件类型");
|
|
||||||
|
|
||||||
b.Property<Guid>("TrialId")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.Property<DateTime>("UpdateTime")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<Guid>("UpdateUserId")
|
|
||||||
.HasColumnType("uniqueidentifier");
|
|
||||||
|
|
||||||
b.Property<string>("Version")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(400)
|
|
||||||
.HasColumnType("nvarchar(400)");
|
|
||||||
|
|
||||||
b.Property<Guid>("WordFileRecordId")
|
|
||||||
.HasColumnType("uniqueidentifier")
|
|
||||||
.HasComment("定稿Word");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("CreateUserId");
|
|
||||||
|
|
||||||
b.ToTable("TrialFinalRecord", t =>
|
|
||||||
{
|
|
||||||
t.HasComment("项目文件 - 定稿记录表");
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("IRaCIS.Core.Domain.Models.TrialIdentityUser", b =>
|
modelBuilder.Entity("IRaCIS.Core.Domain.Models.TrialIdentityUser", b =>
|
||||||
{
|
{
|
||||||
b.Property<Guid>("Id")
|
b.Property<Guid>("Id")
|
||||||
|
@ -15020,7 +14840,13 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
.IsRequired();
|
.IsRequired();
|
||||||
|
|
||||||
|
b.HasOne("IRaCIS.Core.Domain.Models.Trial", "Trial")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("TrialId");
|
||||||
|
|
||||||
b.Navigation("CreateUserRole");
|
b.Navigation("CreateUserRole");
|
||||||
|
|
||||||
|
b.Navigation("Trial");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("IRaCIS.Core.Domain.Models.InspectionFile", b =>
|
modelBuilder.Entity("IRaCIS.Core.Domain.Models.InspectionFile", b =>
|
||||||
|
|
Loading…
Reference in New Issue