同步数据模型和数据库对应关系1
continuous-integration/drone/push Build is passing Details

IRC_NewDev
hang 2024-09-19 21:56:36 +08:00
parent d789c48004
commit 19f4385055
71 changed files with 3016 additions and 3469 deletions

View File

@ -8,7 +8,6 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="AlibabaCloud.SDK.Sts20150401" Version="1.1.4" /> <PackageReference Include="AlibabaCloud.SDK.Sts20150401" Version="1.1.4" />
<PackageReference Include="Aliyun.OSS.SDK.NetCore" Version="2.14.1" />
<PackageReference Include="Autofac.Extensions.DependencyInjection" Version="10.0.0" /> <PackageReference Include="Autofac.Extensions.DependencyInjection" Version="10.0.0" />
<PackageReference Include="Aliyun.OSS.SDK.NetCore" Version="2.14.1" /> <PackageReference Include="Aliyun.OSS.SDK.NetCore" Version="2.14.1" />
<PackageReference Include="AWSSDK.S3" Version="3.7.402.7" /> <PackageReference Include="AWSSDK.S3" Version="3.7.402.7" />

View File

@ -269,7 +269,7 @@ namespace IRaCIS.Application.Contracts
public Guid EnrollId { get; set; } public Guid EnrollId { get; set; }
public DateTime? OutEnrollTime { get; set; } public DateTime? OutEnrollTime { get; set; }
public Guid AgreementId { get; set; } public Guid? AgreementId { get; set; }
public string AgreementPath { get; set; } = String.Empty; public string AgreementPath { get; set; } = String.Empty;

View File

@ -4,111 +4,111 @@
// 生成时间 2022-02-15 11:55:43 // 生成时间 2022-02-15 11:55:43
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。 // 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Linq; using System.Linq;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("后台 - 邮件配置表表(需要同步)")]
[Table("EmailNoticeConfig")]
public class EmailNoticeConfig : BaseFullDeleteAuditEntity
{ {
///<summary> #region 导航属性
///EmailNoticeConfig [JsonIgnore]
///</summary> public List<TrialEmailNoticeConfig> TrialEmailNoticeConfigList { get; set; }
[Table("EmailNoticeConfig")]
public class EmailNoticeConfig : BaseFullDeleteAuditEntity
{
#region 导航属性
[JsonIgnore]
public List<TrialEmailNoticeConfig> TrialEmailNoticeConfigList { get; set; }
[JsonIgnore] [JsonIgnore]
public List<EmailNoticeUserType> EmailNoticeUserTypeList { get; set; } = new List<EmailNoticeUserType>(); public List<EmailNoticeUserType> EmailNoticeUserTypeList { get; set; } = new List<EmailNoticeUserType>();
#endregion #endregion
public string Code { get; set; } = String.Empty; public string AttachCNPath { get; set; } = null!;
public EmailBusinessScenario BusinessScenarioEnum { get; set; } public string AttachName { get; set; } = null!;
/// <summary> 标准类型 /// </summary> public string AttachNameCN { get; set; } = null!;
public CriterionType? CriterionTypeEnum { get; set; }
/// <summary> 业务模块 /// </summary> public string AttachPath { get; set; } = null!;
public int BusinessModuleEnum { get; set; }
/// <summary> 业务层级 /// </summary> [Comment(" 业务级别")]
public int BusinessLevelEnum { get; set; } public int BusinessLevelEnum { get; set; }
/// <summary> 邮件加急类型 /// </summary> [Comment(" 业务模块")]
public int EmailUrgentEnum { get; set; } public int BusinessModuleEnum { get; set; }
/// <summary> 定时周期 /// </summary> [Comment(" 业务场景")]
public string EmailCron { get; set; } = string.Empty; public EmailBusinessScenario BusinessScenarioEnum { get; set; }
/// <summary> 邮件主题 /// </summary> public string Code { get; set; } = null!;
public string EmailTopic { get; set; } = string.Empty;
public string EmailTopicCN { get; set; } = string.Empty; [Comment(" 标准枚举")]
public CriterionType? CriterionTypeEnum { get; set; }
/// <summary> 附件 /// </summary> public string Description { get; set; } = null!;
public string AttachPath { get; set; } = string.Empty;
public string AttachCNPath { get; set; } = string.Empty; [Comment(" 发送周期")]
public string EmailCron { get; set; } = null!;
public string EmailHtmlContent { get; set; } = string.Empty;
public string EmailHtmlContentCN { get; set; } = string.Empty;
public string Description { get; set; } = string.Empty;
public string AttachName { get; set; } = string.Empty; [MaxLength]
public string AttachNameCN { get; set; } = string.Empty; public string EmailHtmlContent { get; set; } = null!;
public SysEmailLevel SystemLevel { get; set; } [MaxLength]
public string EmailHtmlContentCN { get; set; } = null!;
/// <summary> public string EmailTopic { get; set; } = null!;
/// 是否区分标准
/// </summary> public string EmailTopicCN { get; set; } = null!;
public bool IsDistinguishCriteria { get; set; }
[Comment(" 加急枚举")]
public int EmailUrgentEnum { get; set; }
[Comment(" 是否自动发送")]
public bool IsAutoSend { get; set; }
[Comment(" 是否区分标准")]
public bool IsDistinguishCriteria { get; set; }
public bool IsEnable { get; set; }
[Comment(" 是否需要回执")]
public bool IsReturnRequired { get; set; }
public SysEmailLevel SystemLevel { get; set; }
/// 是否需要回执
public bool IsReturnRequired { get; set; }
public bool IsAutoSend { get; set; } }
public bool IsEnable { get; set; }
[Comment("后台 - 邮件配置用户类型表(需要同步)")]
[Table("EmailNoticeUserType")]
}
public class EmailNoticeUserType : Entity
{
[Table("EmailNoticeUserType")] [JsonIgnore]
public EmailNoticeConfig EmailNoticeConfig { get; set; }
public class EmailNoticeUserType : Entity
{ public Guid EmailNoticeConfigId { get; set; }
[JsonIgnore]
public EmailNoticeConfig EmailNoticeConfig { get; set; }
public UserTypeEnum UserType { get; set; }
public Guid EmailNoticeConfigId { get; set; }
public EmailUserType EmailUserType { get; set; }
}
public UserTypeEnum UserType { get; set; }
public EmailUserType EmailUserType { get; set; } public enum SysEmailLevel
} {
not_sys=0,
public enum SysEmailLevel //系统 不配置角色
{ sys_not_role=1,
not_sys=0,
//系统需要配置角色的
//系统 不配置角色 sys_Config_role=2
sys_not_role=1,
//系统需要配置角色的
sys_Config_role=2
}
} }

View File

@ -7,30 +7,34 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("后台 - 浏览器推荐 (需要同步)")]
[Table("ExploreRecommend")]
public class ExploreRecommend : BaseFullDeleteAuditEntity
{ {
///<summary> #region 导航属性
///ExploreRecommend
///</summary>
[Table("ExploreRecommend")]
public class ExploreRecommend : BaseFullDeleteAuditEntity
{
#region 导航属性
#endregion #endregion
public string ExploreType { get; set; } = string.Empty; [StringLength(1000)]
public string DownloadUrl { get; set; } = null!;
public string Version { get; set; }=string.Empty; public string ExploreType { get; set; } = null!;
public string Title { get; set; } = string.Empty; [StringLength(1000)]
public string FileName { get; set; } = null!;
public string DownloadUrl { get; set; } = string.Empty; [StringLength(1000)]
public string Path { get; set; } = null!;
public string Path { get; set; } = string.Empty; [StringLength(1000)]
public string Title { get; set; } = null!;
public string FileName { get; set; } = string.Empty; [StringLength(2000)]
public string Version { get; set; } = null!;
}
} }

View File

@ -8,168 +8,132 @@ using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models; namespace IRaCIS.Core.Domain.Models;
///<summary> [Comment("稽查 - 配置表 (需要同步)")]
///FrontAuditConfig
///</summary>
[Table("FrontAuditConfig")] [Table("FrontAuditConfig")]
public class FrontAuditConfig : BaseFullAuditEntity public class FrontAuditConfig : BaseFullAuditEntity
{ {
#region 导航属性 #region 导航属性
#endregion #endregion
public string Value { get; set; } = String.Empty; [StringLength(1000)]
public string ChildDataEnLabel { get; set; } = null!;
public string ValueCN { get; set; } = String.Empty; [Comment(" 前端渲染数组 数组名 和数组值")]
[StringLength(400)]
public string ChildDataLabel { get; set; } = null!;
public string Description { get; set; } = String.Empty; [Comment(" 子数据Value")]
[StringLength(400)]
public string ChildDataValue { get; set; } = null!;
public string DescriptionCN { get; set; } = String.Empty; public Guid? ChildrenTypeId { get; set; }
[Comment(" 翻译的字段名 这里有可能是一个数组名 那么具体的翻译字段名就不是这个了")]
public string Code { get; set; } = null!;
[StringLength(1000)]
public string CodeEn { get; set; } = null!;
/// <summary> [Comment(" 前端使用 C M")]
/// 是否有签名 public string ConfigType { get; set; } = null!;
/// </summary>
public bool IsHaveSign { get; set; }
/// <summary> [Comment(" 前端展示类型 Router ArrayTable")]
/// 是否有原因 public string DataType { get; set; } = null!;
/// </summary>
public bool IsHaveReason { get; set; }
/// <summary> [Comment(" 日期格式")]
/// 是否完成 public string DateType { get; set; } = null!;
/// </summary>
public bool IsFinish { get; set; }
/// <summary> [StringLength(512)]
/// 是否加入计划 public string Description { get; set; } = null!;
/// </summary>
public bool IsJoinPlan { get; set; }
/// <summary> [StringLength(500)]
/// 标识 public string DescriptionCN { get; set; } = null!;
/// </summary>
public string Identification { get; set; } = string.Empty;
public Guid? ParentId { get; set; } [Comment(" 翻译的字典名(单个字段翻译的时候)")]
public string DictionaryCode { get; set; } = null!;
[Comment(" 字典名称-待废弃核查")]
public string DictionaryKey { get; set; } = null!;
[Comment(" 枚举字典Type")]
public string DictionaryType { get; set; } = null!;
[Comment(" 后端翻译的类型 对应前端界面 &quot;&quot; Dictionary Date")]
public string EnumType { get; set; } = null!;
[StringLength(1000)]
public string ForeignKeyEnText { get; set; } = null!;
[Comment(" 外键表")]
public string ForeignKeyTableName { get; set; } = null!;
[Comment(" 外键Text")]
[StringLength(1000)]
public string ForeignKeyText { get; set; } = null!;
[Comment(" 外键Value")]
public string ForeignKeyValue { get; set; } = null!;
[Comment(" 标识")]
[StringLength(400)]
public string Identification { get; set; } = null!;
[Comment(" 接口名")]
public string InterfaceName { get; set; } = null!;
[Comment(" 未知是否有用-废弃核查")]
public bool IsConfig { get; set; }
public bool IsEnable { get; set; } public bool IsEnable { get; set; }
public int Sort { get; set; } [Comment(" 是否完成")]
public bool IsFinish { get; set; }
[Comment(" 是否有原因")]
public bool IsHaveReason { get; set; }
[Comment(" 是否有签名")]
public bool IsHaveSign { get; set; }
[Comment(" 是否加入计划")]
public bool? IsJoinPlan { get; set; }
[Comment(" 待废弃核查")]
public bool IsShowByTrialConfig { get; set; }
public int IsShowParent { get; set; }
[Comment(" 是否为特殊类型")]
public bool? IsSpecialType { get; set; }
public Guid? ModuleTypeId { get; set; } public Guid? ModuleTypeId { get; set; }
public Guid? ObjectTypeId { get; set; } public Guid? ObjectTypeId { get; set; }
public Guid? OptTypeId { get; set; } public Guid? OptTypeId { get; set; }
public Guid? ChildrenTypeId { get; set; } public Guid? ParentId { get; set; }
public int IsShowParent { get; set; } public int Sort { get; set; }
public string InterfaceName { get; set; } = String.Empty; [MaxLength]
public string? TableConfigJsonStr { get; set; }
//前端使用 C M [Comment(" 待废弃核查")]
public string ConfigType { get; set; } = String.Empty; public string TrialConfigRelyFieldName { get; set; } = null!;
[MaxLength]
public string? UrlConfigJsonStr { get; set; }
//翻译的字段名 这里有可能是一个数组名 那么具体的翻译字段名就不是这个了 [StringLength(400)]
public string Code { get; set; } = String.Empty; public string Value { get; set; } = null!;
[StringLength(400)]
/// <summary> public string ValueCN { get; set; } = null!;
/// 字段的英文值
/// </summary>
public string CodeEn { get; set; } = string.Empty;
//前端渲染数组 数组名 和数组值
public string ChildDataLabel { get; set; } = String.Empty;
/// <summary>
/// 前端渲染数组 数组名 和数组值 英文名称
/// </summary>
public string ChildDataEnLabel { get; set; } = string.Empty;
public string ChildDataValue { get; set; } = String.Empty;
/// <summary>
/// 翻译的字典名(单个字段翻译的时候)
/// </summary>
public string DictionaryCode { get; set; } = String.Empty;
/// <summary>
/// 前端展示类型 Router ArrayTable
/// </summary>
public string DataType { get; set; } = String.Empty;
// 后端翻译的类型 对应前端界面 "" Dictionary Date
public string EnumType { get; set; } = String.Empty;
/// <summary>
/// 翻译的类型 FrontAudit 的描述 可能是Id Code
/// </summary>
public string DictionaryType { get; set; } = String.Empty;
/// <summary>
/// 后端翻译的 日期类型
/// </summary>
public string DateType { get; set; } = String.Empty;
/// <summary> 字典表 </summary>
public string ForeignKeyTableName { get; set; } = String.Empty;
/// <summary> 字典Value </summary>
public string ForeignKeyValue { get; set; } = String.Empty;
/// <summary> 字典 </summary>
public string ForeignKeyText { get; set; } = String.Empty;
/// <summary>
/// 英文的翻译
/// </summary>
public string ForeignKeyEnText { get; set; } = string.Empty;
public string TableConfigJsonStr { get; set; } = String.Empty;
public string UrlConfigJsonStr { get; set; } = String.Empty;
#region 废弃
//未知是否有用
public bool IsConfig { get; set; }
/// <summary>
/// 是否为特殊类型
/// </summary>
public bool IsSpecialType { get; set; }
public string DictionaryKey { get; set; } = string.Empty;
public bool IsShowByTrialConfig { get; set; }
public string TrialConfigRelyFieldName { get; set; } = string.Empty;
#endregion
} }

View File

@ -7,47 +7,49 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("后台 - 国际化配置表 (需要同步)")]
[Table("Internationalization")]
public class Internationalization : BaseFullAuditEntity
{ {
///<summary> #region 导航属性
///Internationalization [JsonIgnore]
///</summary> public PublishLog PublishLog { get; set; }
[Table("Internationalization")]
public class Internationalization : BaseFullAuditEntity
{
#region 导航属性
[JsonIgnore]
public PublishLog PublishLog { get; set; }
#endregion #endregion
public int ShowOrder { get; set; }
/// <summary> [StringLength(400)]
/// 0 1 2 预翻译 已确认 废除 public string Code { get; set; } = null!;
/// </summary>
public int State { get; set; }
[StringLength(400)]
public string Description { get; set; } = null!;
public string Description { get; set; } = string.Empty; [Comment(" 前端类型")]
[StringLength(1000)]
public string FrontType { get; set; } = null!;
public string Code { get; set; } = string.Empty; [Comment(" 前端还是后端")]
public int InternationalizationType { get; set; }
public string Value { get; set; } = string.Empty; [Comment(" 模块")]
public string Module { get; set; } = null!;
public string ValueCN { get; set; } = string.Empty; [Comment(" 版本")]
public Guid? PublishLogId { get; set; }
public int InternationalizationType { get; set; } public int ShowOrder { get; set; }
public string FrontType { get; set; }=string.Empty; [Comment(" 0 1 2 预翻译 已确认 废除")]
public int State { get; set; }
[StringLength(2000)]
public string Value { get; set; } = null!;
public string Module { get; set; } = string.Empty; [StringLength(2000)]
//关联版本历史记录表Id public string ValueCN { get; set; } = null!;
public Guid? PublishLogId { get; set; }
}
} }

View File

@ -7,27 +7,27 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("后台 - 系统发布日志 (需要同步)")]
[Table("PublishLog")]
public class PublishLog : BaseFullAuditEntity
{ {
///<summary> public bool IsCurrentVersion { get; set; }
///PublishLog
///</summary> public DateTime? PublishTime { get; set; }
[Table("PublishLog")]
public class PublishLog : BaseFullAuditEntity [Comment("0 开发中 1已发布")]
{ public int State { get; set; }
public string Version { get; set; } = string.Empty; [MaxLength]
public string? UpdateContent { get; set; }
public DateTime? PublishTime { get; set; } public string Version { get; set; } = null!;
public string UpdateContent { get; set; } = string.Empty;
//0 开发中 ,已发布
public int State { get; set; }
public bool IsCurrentVersion { get; set; }
}
} }

View File

@ -7,31 +7,30 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("医生 - 项目阅片标准参与一致性分析配置表")]
[Table("EnrollReadingCriterion")]
public class EnrollReadingCriterion : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///EnrollReadingCriterion
///</summary>
[Table("EnrollReadingCriterion")]
public class EnrollReadingCriterion :BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore] [JsonIgnore]
[ForeignKey("EnrollId")] [ForeignKey("EnrollId")]
public Enroll Enroll { get; set; } public Enroll Enroll { get; set; }
#endregion #endregion
public Guid EnrollId { get; set; } public Guid EnrollId { get; set; }
public Guid TrialReadingCriterionId { get; set; } public Guid TrialReadingCriterionId { get; set; }
public bool IsJoinAnalysis { get; set; } public bool IsJoinAnalysis { get; set; }
}
} }

View File

@ -1,62 +1,63 @@
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("医生 - 继续教育经历")]
[Table("Postgraduate")]
public class Postgraduate : BaseFullAuditEntity
{ {
[Table("Postgraduate")] #region 导航属性
public partial class Postgraduate : BaseFullAuditEntity
{
#region µ¼º½ÊôÐÔ
#endregion #endregion
public Guid DoctorId { get; set; } public DateOnly? BeginDate { get; set; }
[Column(TypeName = "date")] [StringLength(400)]
public DateTime? BeginDate { get; set; } public string City { get; set; } = null!;
[Column(TypeName = "date")] [StringLength(400)]
public DateTime? EndDate { get; set; } public string CityCN { get; set; } = null!;
[StringLength(50)] [StringLength(400)]
public string Training { get; set; } = string.Empty; public string Country { get; set; } = null!;
[StringLength(100)] [StringLength(400)]
public string Major { get; set; } = string.Empty; public string CountryCN { get; set; } = null!;
[StringLength(100)] public Guid DoctorId { get; set; }
public string Hospital { get; set; } = string.Empty;
[StringLength(100)] public DateOnly? EndDate { get; set; }
public string School { get; set; } = string.Empty;
[StringLength(100)]
public string Country { get; set; } = string.Empty;
[StringLength(100)] [StringLength(400)]
public string Province { get; set; } = string.Empty; public string Hospital { get; set; } = null!;
[StringLength(100)] [StringLength(400)]
public string City { get; set; } = string.Empty; public string HospitalCN { get; set; } = null!;
[StringLength(50)] [StringLength(400)]
public string TrainingCN { get; set; } = string.Empty; public string Major { get; set; } = null!;
[StringLength(100)] [StringLength(400)]
public string MajorCN { get; set; } = string.Empty; public string MajorCN { get; set; } = null!;
[StringLength(100)] [StringLength(400)]
public string HospitalCN { get; set; } = string.Empty; public string Province { get; set; } = null!;
[StringLength(100)] [StringLength(400)]
public string SchoolCN { get; set; } = string.Empty; public string ProvinceCN { get; set; } = null!;
[StringLength(100)]
public string CountryCN { get; set; } = string.Empty;
[StringLength(100)] [StringLength(400)]
public string ProvinceCN { get; set; } = string.Empty; public string School { get; set; } = null!;
[StringLength(100)] [StringLength(400)]
public string CityCN { get; set; } = string.Empty; public string SchoolCN { get; set; } = null!;
}
[StringLength(400)]
public string Training { get; set; } = null!;
[StringLength(400)]
public string TrainingCN { get; set; } = null!;
} }

View File

@ -1,23 +1,40 @@
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("医生 - 科研学术记录")]
[Table("ResearchPublication")]
public partial class ResearchPublication : BaseFullAuditEntity
{ {
[Table("ResearchPublication")] #region 导航属性
public partial class ResearchPublication : BaseFullAuditEntity
{
#region µ¼º½ÊôÐÔ
#endregion #endregion
public Guid DoctorId { get; set; } [MaxLength]
public string Research { get; set; } = string.Empty; public string? AwardsHonors { get; set; }
public string Grants { get; set; } = string.Empty;
public string Publications { get; set; } = string.Empty;
public string AwardsHonors { get; set; } = string.Empty;
public string ResearchCN { get; set; } = string.Empty; [MaxLength]
public string GrantsCN { get; set; } = string.Empty; public string? AwardsHonorsCN { get; set; }
public string PublicationsCN { get; set; } = string.Empty;
public string AwardsHonorsCN { get; set; } = string.Empty; public Guid DoctorId { get; set; }
}
[MaxLength]
public string? Grants { get; set; }
[MaxLength]
public string? GrantsCN { get; set; }
[MaxLength]
public string? Publications { get; set; }
[MaxLength]
public string? PublicationsCN { get; set; }
[MaxLength]
public string? Research { get; set; }
[MaxLength]
public string? ResearchCN { get; set; }
} }

View File

@ -1,15 +1,16 @@
using System; using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Table("ExchangeRate")]
public class ExchangeRate : BaseFullAuditEntity
{ {
[Table("ExchangeRate")] [StringLength(400)]
public class ExchangeRate : BaseFullAuditEntity public string YearMonth { get; set; } = string.Empty;
{
public string YearMonth { get; set; } = string.Empty;
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal Rate { get; set; } public decimal Rate { get; set; }
}
} }

View File

@ -1,41 +1,54 @@
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("医生计费 - 每月支付记录表")]
[Table("Payment")]
public class Payment : BaseFullAuditEntity
{ {
[DecimalPrecision(18, 4)]
public decimal ActuallyPaidCNY { get; set; }
[Table("Payment")] [DecimalPrecision(18, 4)]
public partial class Payment : BaseFullAuditEntity public decimal AdjustmentCNY { get; set; }
{
public Guid DoctorId { get; set; }
public string YearMonth { get; set; } = string.Empty;
public bool IsLock { get; set; }
public DateTime YearMonthDate { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal PaymentUSD { get; set; } public decimal AdjustmentUSD { get; set; }
[Column(TypeName = "decimal(18,4)")] [DecimalPrecision(18, 4)]
public decimal PaymentCNY { get; set; } public decimal BankTransferCNY { get; set; }
[Column(TypeName = "decimal(18,2)")] public DateTime CalculateTime { get; set; } = DateTime.Now;
public decimal ExchangeRate { get; set; }
[StringLength(400)]
public string CalculateUser { get; set; } = null!;
[Column(TypeName = "decimal(18,4)")] public Guid DoctorId { get; set; }
public decimal AdjustmentCNY { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal AdjustmentUSD { get; set; } public decimal ExchangeRate { get; set; }
public DateTime CalculateTime { get; set; } = DateTime.Now;
[StringLength(100)] public bool IsLock { get; set; }
public string CalculateUser { get; set; } = string.Empty;
[StringLength(500)] [StringLength(1000)]
public string Note { get; set; } = string.Empty; public string Note { get; set; } = null!;
[DecimalPrecision(18, 4)]
public decimal PaymentCNY { get; set; }
[DecimalPrecision(18, 2)]
public decimal PaymentUSD { get; set; }
[DecimalPrecision(18, 4)]
public decimal TaxCNY { get; set; }
[StringLength(400)]
public string YearMonth { get; set; } = null!;
public DateTime YearMonthDate { get; set; }
}
} }

View File

@ -1,29 +1,35 @@
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("医生计费 - 项目每月调整记录表")]
[Table("PaymentAdjustment")]
public partial class PaymentAdjustment : BaseFullAuditEntity
{ {
[Table("PaymentAdjustment")] [DecimalPrecision(18, 4)]
public partial class PaymentAdjustment : BaseFullAuditEntity public decimal AdjustmentCNY { get; set; }
{
public Guid ReviewerId { get; set; }
public DateTime YearMonthDate { get; set; } [DecimalPrecision(18, 2)]
public string YearMonth { get; set; } = string.Empty; public decimal AdjustmentUSD { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal AdjustmentUSD { get; set; } public decimal ExchangeRate { get; set; }
[Column(TypeName = "decimal(18,4)")] public bool IsLock { get; set; }
public decimal AdjustmentCNY { get; set; }
[StringLength(1000)]
public string Note { get; set; } = null!;
public Guid TrialId { get; set; } = Guid.Empty; public Guid ReviewerId { get; set; }
[Column(TypeName = "decimal(18,2)")] public Guid TrialId { get; set; }
public decimal ExchangeRate { get; set; }
public bool IsLock { get; set; } = false; [StringLength(400)]
public string Note { get; set; } = string.Empty; public string YearMonth { get; set; } = null!;
public DateTime YearMonthDate { get; set; }
}
} }

View File

@ -1,44 +1,51 @@
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("医生计费 - 每月支付详情表")]
[Table("PaymentDetail")]
public class PaymentDetail : BaseFullAuditEntity
{ {
[Table("PaymentDetail")] [DecimalPrecision(18, 2)]
public partial class PaymentDetail : BaseFullAuditEntity public decimal BasePrice { get; set; }
{
public Guid PaymentId { get; set; }
public Guid DoctorId { get; set; }
public string YearMonth { get; set; } = string.Empty;
public Guid TrialId { get; set; }
[StringLength(50)] public int Count { get; set; }
public string TrialCode { get; set; } = string.Empty;
[StringLength(50)] public Guid DoctorId { get; set; }
public string PaymentType { get; set; } = string.Empty;
public int Count { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal BasePrice { get; set; } public decimal ExchangeRate { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 4)]
public decimal PersonalAdditional { get; set; } public decimal PaymentCNY { get; set; }
[Column(TypeName = "decimal(18,2)")] public Guid PaymentId { get; set; }
public decimal TrialAdditional { get; set; }
[Column(TypeName = "decimal(18,2)")] [StringLength(400)]
public decimal ExchangeRate { get; set; } public string PaymentType { get; set; } = null!;
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal PaymentUSD { get; set; } public decimal PaymentUSD { get; set; }
[Column(TypeName = "decimal(18,4)")] [DecimalPrecision(18, 2)]
public decimal PaymentCNY { get; set; } public decimal PersonalAdditional { get; set; }
public int ShowTypeOrder { get; set; } public int ShowCodeOrder { get; set; }
public int ShowCodeOrder { get; set; }
public int ShowTypeOrder { get; set; }
[DecimalPrecision(18, 2)]
public decimal TrialAdditional { get; set; }
[StringLength(400)]
public string TrialCode { get; set; } = null!;
public Guid TrialId { get; set; }
[StringLength(400)]
public string YearMonth { get; set; } = null!;
}
} }

View File

@ -2,43 +2,42 @@ using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Table("RankPrice")]
public partial class RankPrice : BaseFullAuditEntity
{ {
[Table("RankPrice")] [DecimalPrecision(18, 2)]
public partial class RankPrice : BaseFullAuditEntity public decimal Adjudication { get; set; }
{
[StringLength(200)]
public string RankName { get; set; } = string.Empty;
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal Timepoint { get; set; } public decimal AdjudicationIn24H { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal TimepointIn24H { get; set; } public decimal AdjudicationIn48H { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal TimepointIn48H { get; set; } public decimal Downtime { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal Adjudication { get; set; } public decimal Global { get; set; }
[Column(TypeName = "decimal(18,2)")] public string RankName { get; set; } = null!;
public decimal AdjudicationIn24H { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal AdjudicationIn48H { get; set; } public decimal RefresherTraining { get; set; }
[Column(TypeName = "decimal(18,2)")] public int ShowOrder { get; set; }
public decimal Global { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal Training { get; set; } public decimal Timepoint { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal Downtime { get; set; } public decimal TimepointIn24H { get; set; }
[Column(TypeName = "decimal(18,2)")] [DecimalPrecision(18, 2)]
public decimal RefresherTraining { get; set; } public decimal TimepointIn48H { get; set; }
public int ShowOrder { get; set; }
} [DecimalPrecision(18, 2)]
public decimal Training { get; set; }
} }

View File

@ -3,89 +3,77 @@
// 此代码由T4模板自动生成 byzhouhang 20210918 // 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2022-01-25 13:26:03 // 生成时间 2022-01-25 13:26:03
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。 // 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目 - 影像上传监控")]
[Table("StudyMonitor")]
public class StudyMonitor : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///DicomStudyMonitor [JsonIgnore]
///</summary> [ForeignKey("StudyId")]
[Table("StudyMonitor")] public DicomStudy DicomStudy { get; set; }
public class StudyMonitor : BaseAddAuditEntity [JsonIgnore]
{ [ForeignKey("StudyId")]
#region 导航属性 public NoneDicomStudy NoneDicomStudy { get; set; }
[JsonIgnore]
[ForeignKey("StudyId")]
public DicomStudy DicomStudy { get; set; }
[JsonIgnore]
[ForeignKey("StudyId")]
public NoneDicomStudy NoneDicomStudy { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("StudyId")] [ForeignKey("StudyId")]
public TaskStudy TaskStudy { get; set; } public TaskStudy TaskStudy { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("SubjectId")] [ForeignKey("SubjectId")]
public Subject Subject { get; set; } public Subject Subject { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("SubjectVisitId")] [ForeignKey("SubjectVisitId")]
public SubjectVisit SubjectVisit { get; set; } public SubjectVisit SubjectVisit { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("TrialId")] [ForeignKey("TrialId")]
public Trial Trial { get; set; } public Trial Trial { get; set; }
#endregion #endregion
public DateTime? ArchiveFinishedTime { get; set; }
public int FailedFileCount { get; set; }
public int FileCount { get; set; }
public long FileSize { get; set; }
public string IP { get; set; } = null!;
public bool IsDicom { get; set; }
public bool IsDicomReUpload { get; set; }
public bool IsSuccess { get; set; }
public string Note { get; set; } = null!;
[StringLength(1024)]
public string RecordPath { get; set; } = null!;
public string StudyCode { get; set; } = null!;
[Comment(" Dicom/非Dicom")]
public Guid StudyId { get; set; }
public Guid SubjectId { get; set; }
public Guid SubjectVisitId { get; set; }
public Guid TrialId { get; set; }
public DateTime? UploadFinishedTime { get; set; }
//可能是Dicom 也可能是非Dicom 该字段废弃 public DateTime UploadStartTime { get; set; }
public Guid StudyId { get; set; }
public DateTime UploadStartTime { get; set; }
public DateTime? UploadFinishedTime { get; set; }
public DateTime? ArchiveFinishedTime { get; set; }
public int FailedFileCount { get; set; }
public long FileSize { get; set; }
public string IP { get; set; }=string.Empty;
public bool IsDicomReUpload { get; set; }
public bool IsDicom { get; set; }
public int FileCount { get; set; }
public string StudyCode { get; set; } = string.Empty;
public Guid TrialId { get; set; }
public Guid SubjectId { get; set; }
public Guid SubjectVisitId { get; set; }
public bool IsSuccess { get; set; }
public string Note { get; set; } = string.Empty;
public string RecordPath { get; set; }=string.Empty;
}
} }

View File

@ -1,19 +1,24 @@
using System; using Microsoft.EntityFrameworkCore;
using System;
using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("影像 - 影像分享记录表")]
[Table("ImageShare")]
public class ImageShare: Entity
{ {
public class ImageShare: Entity #region 导航属性
{
#region 导航属性
#endregion #endregion
public Guid TrialId { get; set; } public DateTime ExpireTime { get; set; }
public Guid SubjectId { get; set; }
public Guid StudyId { get; set; }
public DateTime ExpireTime { get; set; } public string Password { get; set; } = null!;
public string Password { get; set; } = string.Empty; public Guid StudyId { get; set; }
public Guid SubjectId { get; set; }
public Guid TrialId { get; set; }
}
} }

View File

@ -3,69 +3,60 @@
// 此代码由T4模板自动生成 byzhouhang 20210918 // 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2021-12-06 10:49:39 // 生成时间 2021-12-06 10:49:39
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。 // 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("影像 - 非dicom检查")]
[Table("NoneDicomStudy")]
public class NoneDicomStudy : BaseFullAuditEntity
{ {
///<summary> #region 导航属性
///NoneDicomStudy [JsonIgnore]
///</summary> public List<NoneDicomStudyFile> NoneDicomFileList { get; set; }
[Table("NoneDicomStudy")]
public class NoneDicomStudy : BaseFullAuditEntity
{
#region 导航属性
[JsonIgnore]
public List<NoneDicomStudyFile> NoneDicomFileList { get; set; }
[JsonIgnore] [JsonIgnore]
public List<NoneDicomStudyFile> TaskNoneDicomFileList { get; set; } public List<NoneDicomStudyFile> TaskNoneDicomFileList { get; set; }
[JsonIgnore] [JsonIgnore]
public SubjectVisit SubjectVisit { get; set; } public SubjectVisit SubjectVisit { get; set; }
[JsonIgnore] [JsonIgnore]
public Subject Subject { get; set; } public Subject Subject { get; set; }
#endregion #endregion
public string BodyPart { get; set; } = null!;
public string StudyCode { get; set; } = string.Empty; public int Code { get; set; }
public int FileCount { get; set; } public string Description { get; set; } = null!;
public int Code { get; set; } public int FileCount { get; set; }
public Guid TrialId { get; set; } public DateTime ImageDate { get; set; }
public string Modality { get; set; } = null!;
public Guid SubjectId { get; set; } public string StudyCode { get; set; } = null!;
public Guid SubjectId { get; set; }
public Guid SubjectVisitId { get; set; } public Guid SubjectVisitId { get; set; }
public Guid TrialId { get; set; }
public DateTime? UploadVideoTime { get; set; }
public string BodyPart { get; set; } = string.Empty; public string VideoName { get; set; } = null!;
public string VideoObjectName { get; set; } = null!;
public string Modality { get; set; } = string.Empty; public string VideoUrl { get; set; } = null!;
public DateTime ImageDate { get; set; }
public string Description { get; set; } = string.Empty;
public string VideoName { get; set; } = string.Empty;
public string VideoObjectName { get; set; } = string.Empty;
public DateTime? UploadVideoTime { get; set; }
public string VideoUrl { get; set; } = string.Empty;
}
} }

View File

@ -3,55 +3,48 @@
// 此代码由T4模板自动生成 byzhouhang 20210918 // 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2021-12-06 10:49:39 // 生成时间 2021-12-06 10:49:39
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。 // 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("影像 - 非dicom检查关联文件表")]
[Table("NoneDicomStudyFile")]
public class NoneDicomStudyFile : BaseAddAuditEntity
{ {
#region 导航属性
[Table("NoneDicomStudyFile")] [ForeignKey("NoneDicomStudyId")]
public class NoneDicomStudyFile : BaseAddAuditEntity [JsonIgnore]
{ public NoneDicomStudy NoneDicomStudy { get; set; }
#region 导航属性
[ForeignKey("NoneDicomStudyId")]
[JsonIgnore]
public NoneDicomStudy NoneDicomStudy { get; set; }
[JsonIgnore] [JsonIgnore]
public VisitTask VisitTask { get; set; } public VisitTask VisitTask { get; set; }
[ForeignKey("OriginNoneDicomStudyId")] [ForeignKey("OriginNoneDicomStudyId")]
[JsonIgnore] [JsonIgnore]
public NoneDicomStudy OriginNoneDicomStudy { get; set; } public NoneDicomStudy OriginNoneDicomStudy { get; set; }
#endregion #endregion
public Guid NoneDicomStudyId { get; set; } public string FileName { get; set; } = null!;
public long? FileSize { get; set; }
public string Path { get; set; } = string.Empty; public string FileType { get; set; } = null!;
public Guid NoneDicomStudyId { get; set; }
public string FileName { get; set; } = string.Empty; [Comment("为了不影响原始检查,跟任务绑定的 NoneDicomStudyId 为guid空 这个字段记录跟原始检查绑")]
public Guid? OriginNoneDicomStudyId { get; set; }
public string FileType { get; set; } = string.Empty; [StringLength(512)]
public string Path { get; set; } = null!;
public long? FileSize { get; set; } [Comment("任务Id,配合OriginNoneDicomStudyId 一起使用")]
public Guid? VisitTaskId { get; set; }
#region 跟任务绑定 同时区分检查
public Guid? VisitTaskId { get; set; }
/// <summary>
/// 为了不影响原始检查,跟任务绑定的 NoneDicomStudyId 为guid空 这个字段记录跟原始检查绑
/// </summary>
public Guid? OriginNoneDicomStudyId { get; set; }
#endregion
}
} }

View File

@ -8,59 +8,42 @@ using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目中心 - 影像推送记录")]
[Table("SCPImageUpload")]
public class SCPImageUpload : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///SCPImageUpload [JsonIgnore]
///</summary> public Trial Trial { get; set; }
[Table("SCPImageUpload")]
public class SCPImageUpload : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore]
public Trial Trial { get; set; }
[JsonIgnore] [JsonIgnore]
public TrialSite TrialSite { get; set; } public TrialSite TrialSite { get; set; }
#endregion #endregion
public string CallingAE { get; set; }=string.Empty; public string CalledAE { get; set; } = null!;
public string CallingAE { get; set; } = null!;
public string CalledAE { get; set; } = string.Empty; public string CallingAEIP { get; set; } = null!;
public DateTime EndTime { get; set; }
public int FileCount { get; set; }
public string CallingAEIP { get; set; } = string.Empty; public long FileSize { get; set; }
public DateTime StartTime { get; set; }
public int StudyCount { get; set; }
public DateTime StartTime { get; set; } public Guid TrialId { get; set; }
public Guid TrialSiteId { get; set; }
public DateTime EndTime { get; set; }
public int FileCount { get; set; }
public long FileSize { get; set; }
public int StudyCount { get; set; }
public Guid TrialId { get; set; }
public Guid TrialSiteId { get; set; }
}
} }

View File

@ -1,4 +1,5 @@
using System; using Microsoft.EntityFrameworkCore;
using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
@ -17,36 +18,59 @@ namespace IRaCIS.Core.Domain.Models
public SCPStudy SCPStudy { get; set; } public SCPStudy SCPStudy { get; set; }
#endregion #endregion
public Guid SeqId { get; set; }
public Guid StudyId { get; set; }
public Guid SeriesId { get; set; }
public string StudyInstanceUid { get; set; } = string.Empty;
public string SeriesInstanceUid { get; set; } = string.Empty;
public string SopInstanceUid { get; set; } = string.Empty;
public int InstanceNumber { get; set; }
public DateTime? InstanceTime { get; set; }
public bool CPIStatus { get; set; }
public int ImageRows { get; set; }
public int ImageColumns { get; set; }
public int SliceLocation { get; set; }
public string SliceThickness { get; set; } = string.Empty;
public int NumberOfFrames { get; set; }
public string PixelSpacing { get; set; } = string.Empty;
public string ImagerPixelSpacing { get; set; } = string.Empty;
public string FrameOfReferenceUID { get; set; } = string.Empty;
public string WindowCenter { get; set; } = string.Empty;
public string WindowWidth { get; set; } = string.Empty;
public bool Anonymize { get; set; } public bool Anonymize { get; set; }
public string Path { get; set; } = string.Empty;
public bool CPIStatus { get; set; }
public long? FileSize { get; set; } public long? FileSize { get; set; }
[StringLength(500)]
public string FrameOfReferenceUID { get; set; } = null!;
public int ImageColumns { get; set; }
public int ImageRows { get; set; }
[StringLength(400)]
public string ImagerPixelSpacing { get; set; } = null!;
public int InstanceNumber { get; set; }
public DateTime? InstanceTime { get; set; }
public int NumberOfFrames { get; set; }
[MaxLength]
[Unicode(false)]
public string Path { get; set; } = null!;
[StringLength(400)]
public string PixelSpacing { get; set; } = null!;
public Guid SeqId { get; set; }
public Guid SeriesId { get; set; }
public string SeriesInstanceUid { get; set; } = null!;
public int SliceLocation { get; set; }
[StringLength(400)]
public string SliceThickness { get; set; } = null!;
public string SopInstanceUid { get; set; } = null!;
public Guid StudyId { get; set; }
public string StudyInstanceUid { get; set; } = null!;
[StringLength(400)]
public string WindowCenter { get; set; } = null!;
[StringLength(400)]
public string WindowWidth { get; set; } = null!;
} }

View File

@ -1,44 +1,48 @@
using System; using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目中心 - 推送检查患者")]
[Table("SCPPatient")]
public class SCPPatient : BaseFullAuditEntity
{ {
[Table("SCPPatient")] #region 导航属性
public class SCPPatient : BaseFullAuditEntity [JsonIgnore]
{ public List<SCPStudy> SCPStudyList { get; set; }
#region 导航属性 [JsonIgnore]
[JsonIgnore] public Subject Subject { get; set; }
public List<SCPStudy> SCPStudyList { get; set; } [JsonIgnore]
[JsonIgnore] public Trial Trial { get; set; }
public Subject Subject { get; set; } [JsonIgnore]
[JsonIgnore] public TrialSite TrialSite { get; set; }
public Trial Trial { get; set; } #endregion
[JsonIgnore]
public TrialSite TrialSite { get; set; }
#endregion
public DateTime? EarliestStudyTime { get; set; }
public string PatientIdStr { get; set; } = string.Empty; public DateTime LatestPushTime { get; set; }
public string PatientName { get; set; } = string.Empty;
public string PatientAge { get; set; } = string.Empty;
public string PatientSex { get; set; } = string.Empty;
public string PatientBirthDate { get; set; } = string.Empty;
public DateTime? EarliestStudyTime { get; set; } public DateTime? LatestStudyTime { get; set; }
public DateTime? LatestStudyTime { get; set; } public string PatientAge { get; set; } = null!;
public DateTime LatestPushTime { get; set; } public string PatientBirthDate { get; set; } = null!;
public string PatientIdStr { get; set; } = null!;
public Guid? SubjectId { get; set; } public string PatientName { get; set; } = null!;
public Guid TrialId { get; set; }
public Guid TrialSiteId { get; set; } public string PatientSex { get; set; } = null!;
public Guid? SubjectId { get; set; }
public Guid TrialId { get; set; }
public Guid TrialSiteId { get; set; }
}
} }

View File

@ -1,50 +1,70 @@
using System; using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目中心 - 推送序列")]
[Table("SCPSeries")]
public class SCPSeries : BaseFullDeleteAuditEntity, IEntitySeqId
{ {
[Table("SCPSeries")] #region 导航属性
public class SCPSeries : BaseFullDeleteAuditEntity, IEntitySeqId [JsonIgnore]
{ [ForeignKey("StudyId")]
#region 导航属性 public SCPStudy SCPStudy { get; set; }
[JsonIgnore]
[ForeignKey("StudyId")]
public SCPStudy SCPStudy { get; set; }
[JsonIgnore] [JsonIgnore]
public List<SCPInstance> SCPInstanceList { get; set; } public List<SCPInstance> SCPInstanceList { get; set; }
#endregion #endregion
public Guid SeqId { get; set; } public string AcquisitionNumber { get; set; } = null!;
public Guid StudyId { get; set; }
public string StudyInstanceUid { get; set; } = string.Empty;
public string SeriesInstanceUid { get; set; } = string.Empty;
public int SeriesNumber { get; set; }
public DateTime? SeriesTime { get; set; }
public string Modality { get; set; }=string.Empty;
public string Description { get; set; } = string.Empty;
public int InstanceCount { get; set; }
public string SliceThickness { get; set; } = string.Empty;
public string ImagePositionPatient { get; set; } = string.Empty; public string AcquisitionTime { get; set; } = null!;
public string ImageOrientationPatient { get; set; } = string.Empty;
public string BodyPartExamined { get; set; } = string.Empty;
public string SequenceName { get; set; } = string.Empty;
public string ProtocolName { get; set; } = string.Empty;
public string ImagerPixelSpacing { get; set; } = string.Empty;
public string AcquisitionTime { get; set; } = string.Empty; public string BodyPartExamined { get; set; } = null!;
public string AcquisitionNumber { get; set; } = string.Empty;
public string TriggerTime { get; set; } = string.Empty;
public string BodyPartForEdit { get; set; } = string.Empty; public string BodyPartForEdit { get; set; } = null!;
public bool IsReading { get; set; } = true; [StringLength(500)]
public string Description { get; set; } = null!;
public string ImageResizePath { get; set; }=string.Empty; public string ImageOrientationPatient { get; set; } = null!;
public string ImagePositionPatient { get; set; } = null!;
[StringLength(520)]
public string ImageResizePath { get; set; } = null!;
public string ImagerPixelSpacing { get; set; } = null!;
public int InstanceCount { get; set; }
public bool? IsReading { get; set; }
public string Modality { get; set; } = null!;
[StringLength(500)]
public string ProtocolName { get; set; } = null!;
public Guid SeqId { get; set; }
public string SequenceName { get; set; } = null!;
public string SeriesInstanceUid { get; set; } = null!;
public int SeriesNumber { get; set; }
public DateTime? SeriesTime { get; set; }
public string SliceThickness { get; set; } = null!;
public Guid StudyId { get; set; }
public string StudyInstanceUid { get; set; } = null!;
public string TriggerTime { get; set; } = null!;
}
} }

View File

@ -1,87 +1,103 @@
using System; using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目中心 - 推送检查")]
[Table("SCPStudy")]
public class SCPStudy : BaseFullDeleteAuditEntity, IEntitySeqId
{ {
[Table("SCPStudy")]
public class SCPStudy : BaseFullDeleteAuditEntity, IEntitySeqId
{
#region 导航属性 #region 导航属性
[JsonIgnore] [JsonIgnore]
public List<SCPInstance> InstanceList { get; set; } public List<SCPInstance> InstanceList { get; set; }
[JsonIgnore] [JsonIgnore]
public List<SCPSeries> SeriesList { get; set; } public List<SCPSeries> SeriesList { get; set; }
[JsonIgnore] [JsonIgnore]
public SubjectVisit SubjectVisit { get; set; } public SubjectVisit SubjectVisit { get; set; }
[JsonIgnore] [JsonIgnore]
public Trial Trial { get; set; } public Trial Trial { get; set; }
[JsonIgnore] [JsonIgnore]
public TrialSite TrialSite { get; set; } public TrialSite TrialSite { get; set; }
#endregion [ForeignKey("PatientId")]
[JsonIgnore]
public SCPPatient Patient { get; set; }
#endregion
public string AccessionNumber { get; set; } = null!;
//0 未知 1 单重 2 双重 public string AcquisitionNumber { get; set; } = null!;
public bool IsDoubleReview { get; set; }
public Guid SeqId { get; set; } public string AcquisitionTime { get; set; } = null!;
[ForeignKey("PatientId")] [StringLength(512)]
[JsonIgnore] public string BodyPartExamined { get; set; } = null!;
public SCPPatient Patient { get; set; }
public Guid PatientId { get; set; }
public string StudyInstanceUid { get; set; } = string.Empty; public string BodyPartForEdit { get; set; } = null!;
public DateTime? StudyTime { get; set; }
public string Modalities { get; set; } = string.Empty;
public string Description { get; set; } = string.Empty; public string CalledAE { get; set; } = null!;
public int SeriesCount { get; set; } = 0;
public int InstanceCount { get; set; } = 0;
public string CallingAE { get; set; } = null!;
public string InstitutionName { get; set; } = string.Empty; [StringLength(1000)]
public string PatientIdStr { get; set; } = string.Empty; public string Description { get; set; } = null!;
public string PatientName { get; set; } = string.Empty;
public string PatientAge { get; set; } = string.Empty;
public string PatientSex { get; set; } = string.Empty;
public string StudyId { get; set; } = string.Empty; public int InstanceCount { get; set; }
public string AccessionNumber { get; set; } = string.Empty;
public string PatientBirthDate { get; set; } = string.Empty;
public string AcquisitionTime { get; set; } = string.Empty;
public string AcquisitionNumber { get; set; } = string.Empty;
public string TriggerTime { get; set; } = string.Empty;
public string BodyPartExamined { get; set; } = string.Empty; public string InstitutionName { get; set; } = null!;
public string BodyPartForEdit { get; set; } = string.Empty; public bool IsDoubleReview { get; set; }
public string ModalityForEdit { get; set; } = string.Empty; public bool IsUploadFinished { get; set; }
public string Modalities { get; set; } = null!;
public string ModalityForEdit { get; set; } = null!;
public string CallingAE { get; set; } = string.Empty; public string PatientAge { get; set; } = null!;
public string CalledAE { get; set; } = string.Empty; public string PatientBirthDate { get; set; } = null!;
public bool IsUploadFinished { get; set; } public Guid PatientId { get; set; }
public string PatientIdStr { get; set; } = null!;
public Guid TrialId { get; set; } public string PatientName { get; set; } = null!;
public Guid TrialSiteId { get; set; }
public Guid? SubjectVisitId { get; set; } public string PatientSex { get; set; } = null!;
[Comment(" 序列Id 避免内存移动")]
public Guid SeqId { get; set; }
public int SeriesCount { get; set; }
[Comment(" DicomTag.StudyID")]
public string StudyId { get; set; } = null!;
[StringLength(500)]
public string StudyInstanceUid { get; set; } = null!;
public DateTime? StudyTime { get; set; }
public Guid? SubjectVisitId { get; set; }
public Guid TrialId { get; set; }
public Guid TrialSiteId { get; set; }
public string TriggerTime { get; set; } = null!;
[Comment(" 上传时间")]
public DateTime? UploadedTime { get; set; }
public string Uploader { get; set; } = null!;
}
} }

View File

@ -1,42 +1,47 @@
using System; using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("机构 - 医院")]
[Table("Hospital")]
public class Hospital : BaseFullAuditEntity
{ {
[Table("Hospital")] #region 导航属性
public class Hospital : BaseFullAuditEntity [JsonIgnore]
{ [ForeignKey("SiteId")]
#region 导航属性 public Site Site { get; set; }
[JsonIgnore]
[ForeignKey("SiteId")]
public Site Site { get; set; }
[JsonIgnore] [JsonIgnore]
public List<Doctor> DoctorList { get; set; } public List<Doctor> DoctorList { get; set; }
#endregion #endregion
public string HospitalName { get; set; } = string.Empty; public string City { get; set; } = null!;
public string UniversityAffiliated { get; set; } = string.Empty;
public string Country { get; set; } = string.Empty;
public string Province { get; set; } = string.Empty;
public string City { get; set; } = string.Empty;
public string HospitalNameCN { get; set; } = string.Empty; public string CityCN { get; set; } = null!;
public string UniversityAffiliatedCN { get; set; } = string.Empty;
public string CountryCN { get; set; } = string.Empty;
public string ProvinceCN { get; set; } = string.Empty;
public string CityCN { get; set; } = string.Empty;
public string Country { get; set; } = null!;
/// <summary> public string CountryCN { get; set; } = null!;
/// 中心Id
/// </summary> public string HospitalName { get; set; } = null!;
public Guid? SiteId { get; set; } = Guid.Empty;
public string HospitalNameCN { get; set; } = null!;
public string Province { get; set; } = null!;
public string ProvinceCN { get; set; } = null!;
public Guid? SiteId { get; set; }
public string UniversityAffiliated { get; set; } = null!;
public string UniversityAffiliatedCN { get; set; } = null!;
}
} }

View File

@ -1,46 +1,62 @@
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("»ú¹¹ - Site")]
[Table("Site")]
public partial class Site : BaseFullAuditEntity
{ {
[Table("Site")] #region µ¼º½ÊôÐÔ
public partial class Site : BaseFullAuditEntity [JsonIgnore]
{ [ForeignKey("HospitalId")]
#region µ¼º½ÊôÐÔ public Hospital Hospital { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("HospitalId")] public List<TrialSite> TrialSiteList { get; set; }
public Hospital Hospital { get; set; } #endregion
[JsonIgnore]
public List<TrialSite> TrialSiteList { get; set; }
#endregion
public string SiteName { get; set; } = string.Empty; [StringLength(500)]
public string SiteNameCN{ get; set; } = string.Empty; public string Address { get; set; } = null!;
public string AliasName { get; set; } = string.Empty;
public string SiteCode { get; set; } = string.Empty;
public int Code { get; set; } public string AliasName { get; set; } = null!;
public string City { get; set; } = string.Empty; public string City { get; set; } = null!;
public string Country { get; set; } = string.Empty;
public Guid? HospitalId { get; set; }
public int State { get; set; }
public string Province { get; set; } = string.Empty; public int Code { get; set; }
public string UniqueCode { get; set; } = string.Empty; public string ContactName { get; set; } = null!;
public string Address { get; set; } = string.Empty; public string ContactPhone { get; set; } = null!;
public string DirectorName { get; set; } = string.Empty; public string Country { get; set; } = null!;
public string DirectorPhone { get; set; } = string.Empty;
public string ContactName { get; set; } = string.Empty; public string DirectorName { get; set; } = null!;
public string ContactPhone { get; set; } = string.Empty;
public string DirectorPhone { get; set; } = null!;
public Guid? HospitalId { get; set; }
public string Province { get; set; } = null!;
[StringLength(500)]
public string SiteCode { get; set; } = null!;
[StringLength(500)]
public string SiteName { get; set; } = null!;
[StringLength(400)]
public string SiteNameCN { get; set; } = null!;
[Comment(" ÔÝʱδÓÃ")]
public int State { get; set; }
public string UniqueCode { get; set; } = null!;
}
} }

View File

@ -1,22 +1,27 @@
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("»ú¹¹ - Sponsor")]
[Table("Sponsor")]
public partial class Sponsor : BaseFullAuditEntity
{ {
[Table("Sponsor")] #region µ¼º½ÊôÐÔ
public partial class Sponsor : BaseFullAuditEntity
{
#region µ¼º½ÊôÐÔ
#endregion #endregion
public string SponsorName { get; set; } = String.Empty;
public string SponsorNameCN { get; set; } = String.Empty;
public string SponsorCode { get; set; } = String.Empty; public bool IsTrialLevel { get; set; }
public bool IsTrialLevel { get; set; } public string SponsorCode { get; set; } = null!;
[StringLength(1000)]
public string SponsorName { get; set; } = null!;
public Guid? TrialId { get; set; } [StringLength(1000)]
} public string SponsorNameCN { get; set; } = null!;
public Guid? TrialId { get; set; }
} }

View File

@ -1,9 +1,12 @@
using System; using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models
{ {
[Comment("后台 - 系统菜单 (需要同步)")]
[Table("Menu")] [Table("Menu")]
public class Menu : BaseFullAuditEntity public class Menu : BaseFullAuditEntity
{ {
@ -12,51 +15,46 @@ namespace IRaCIS.Core.Domain.Models
public List<UserTypeMenu> UserTypeMenuList { get; set; } public List<UserTypeMenu> UserTypeMenuList { get; set; }
#endregion #endregion
public string ApiPath { get; set; } = null!;
[StringLength(400)]
public string Component { get; set; } = null!;
//上级菜单 public bool IsCache { get; set; }
public Guid? ParentId { get; set; } = Guid.Empty;
// 类型M目录 C菜单 F按钮 L链接
public string MenuType { get; set; } = string.Empty;
public string MenuIcon { get; set; } = string.Empty;
public string MenuName { get; set; } = string.Empty;
//路由地址
public string Path { get; set; } = string.Empty;
//组件路径
public string Component { get; set; } = string.Empty;
public int ShowOrder { get; set; }
//启用 禁用
public bool IsEnable { get; set; } = true;
public bool IsCache { get; set; } = false;
public bool IsDisplay { get; set; } public bool IsDisplay { get; set; }
public bool IsInTabDisplay { get; set; } public bool IsEnable { get; set; }
public bool IsExternalLink { get; set; } public bool IsExternalLink { get; set; }
//权限点 public bool? IsInTabDisplay { get; set; }
public string PermissionStr { get; set; } = string.Empty;
//Api 接口地址 public string LanguageMark { get; set; } = null!;
public string ApiPath { get; set; } = string.Empty;
public string Note { get; set; } = string.Empty; public string MenuIcon { get; set; } = null!;
public string Meta { get; set; } = string.Empty; public string MenuName { get; set; } = null!;
[Comment("类型M目录 C菜单 F按钮 L链接")]
public string MenuType { get; set; } = null!;
public string Redirect { get; set; } = string.Empty; public string Meta { get; set; } = null!;
public string LanguageMark { get; set; } = string.Empty; [MaxLength]
public string Note { get; set; }
public Guid ParentId { get; set; }
[Comment("路由地址")]
[StringLength(500)]
public string Path { get; set; } = null!;
public string PermissionStr { get; set; } = null!;
public string Redirect { get; set; } = null!;
public int ShowOrder { get; set; }
} }

View File

@ -3,50 +3,42 @@
// 此代码由T4模板自动生成 byzhouhang 20210918 // 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2021-11-22 11:15:18 // 生成时间 2021-11-22 11:15:18
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。 // 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("受试者访视 - 既往放疗史")]
[Table("PreviousHistory")]
public class PreviousHistory : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///PreviousHistory [JsonIgnore]
///</summary> public SubjectVisit SubjectVisit { get; set; }
[Table("PreviousHistory")] #endregion
public class PreviousHistory : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore]
public SubjectVisit SubjectVisit { get; set; }
#endregion
public DateTime? StartTime { get; set; } [Comment(" 临床数据类型Id")]
public Guid ClinicalDataTrialSetId { get; set; }
public DateTime? EndTime { get; set; } public DateTime? EndTime { get; set; }
public string FileName { get; set; } = null!;
public int? IsPD { get; set; } public int IsPD { get; set; }
public bool IsSubjectLevel { get; set; }
public Guid SubjectVisitId { get; set; } public string Path { get; set; } = null!;
public string Position { get; set; } = null!;
public bool IsSubjectLevel { get; set; } public DateTime? StartTime { get; set; }
public Guid SubjectVisitId { get; set; }
public string Path { get; set; } = String.Empty;
public string FileName { get; set; } = String.Empty;
public string Position { get; set; } = String.Empty;
public Guid ClinicalDataTrialSetId { get; set; }
}
} }

View File

@ -3,51 +3,41 @@
// 此代码由T4模板自动生成 byzhouhang 20210918 // 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2021-11-22 11:15:18 // 生成时间 2021-11-22 11:15:18
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。 // 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("受试者访视 - 既往其他治疗史")]
[Table("PreviousOther")]
public class PreviousOther : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///PreviousOther
///</summary>
[Table("PreviousOther")]
public class PreviousOther : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore] [JsonIgnore]
public SubjectVisit SubjectVisit { get; set; } public SubjectVisit SubjectVisit { get; set; }
#endregion #endregion
public DateTime? StartTime { get; set; } [Comment(" 临床数据类型Id")]
public Guid ClinicalDataTrialSetId { get; set; }
public DateTime? EndTime { get; set; }
public DateTime? EndTime { get; set; } public string FileName { get; set; } = null!;
public bool? IsPD { get; set; }
public bool IsPD { get; set; } public bool IsSubjectLevel { get; set; }
public Guid SubjectVisitId { get; set; } public string Path { get; set; } = null!;
public DateTime? StartTime { get; set; }
public bool IsSubjectLevel { get; set; } public Guid SubjectVisitId { get; set; }
public string TreatmentType { get; set; } = null!;
public string Path { get; set; } = String.Empty;
public string FileName { get; set; } = String.Empty;
public string TreatmentType { get; set; } = String.Empty;
/// <summary>
/// 临床数据类型Id
/// </summary>
[Required]
public Guid ClinicalDataTrialSetId { get; set; }
}
} }

View File

@ -4,55 +4,47 @@
// 生成时间 2021-12-09 11:35:31 // 生成时间 2021-12-09 11:35:31
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。 // 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("受试者访视 - 临床数据配置")]
[Table("PreviousPDF")]
public class PreviousPDF : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///PreviousPDF [JsonIgnore]
///</summary> public SubjectVisit SubjectVisit { get; set; }
[Table("PreviousPDF")]
public class PreviousPDF : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore]
public SubjectVisit SubjectVisit { get; set; }
#endregion #endregion
public Guid SubjectVisitId { get; set; } [Comment("临床级别")]
public ClinicalLevel? ClinicalLevel { get; set; }
public string Path { get; set; } = string.Empty; public ClinicalDataType? DataType { get; set; }
public string FileName { get; set; } = string.Empty; public string FileName { get; set; } = null!;
public bool? IsVisist { get; set; }
public bool? IsVisist { get; set; } [StringLength(512)]
public string Path { get; set; } = null!;
/// <summary> public Guid? SubjectId { get; set; }
/// 临床级别
/// </summary>
public ClinicalLevel? ClinicalLevel { get; set; }
/// <summary>
/// 数据类型
/// </summary>
public ClinicalDataType? DataType { get; set; }
/// <summary>
/// 上传方式
/// </summary>
public ClinicalUploadType? UploadType { get; set; }
public Guid? TrialId { get; set; }
public Guid? SubjectId { get; set; }
}
public Guid SubjectVisitId { get; set; }
public Guid? TrialId { get; set; }
[Comment("上传方式")]
public ClinicalUploadType? UploadType { get; set; }
} }

View File

@ -3,45 +3,39 @@
// 此代码由T4模板自动生成 byzhouhang 20210918 // 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2021-11-22 11:15:18 // 生成时间 2021-11-22 11:15:18
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。 // 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("受试者访视 - 既往手术史")]
[Table("PreviousSurgery")]
public class PreviousSurgery : BaseAddAuditEntity
{ {
///<summary>
///PreviousSurgery
///</summary>
[Table("PreviousSurgery")]
public class PreviousSurgery : BaseAddAuditEntity
{
#region 导航属性 #region 导航属性
#endregion #endregion
[Comment(" 临床数据类型Id")]
public Guid ClinicalDataTrialSetId { get; set; }
public string FileName { get; set; } = null!;
public DateTime? OperationTime { get; set; } public bool IsSubjectLevel { get; set; }
public Guid SubjectVisitId { get; set; } public string OperationName { get; set; } = null!;
public bool IsSubjectLevel { get; set; } public DateTime? OperationTime { get; set; }
public string Path { get; set; } = String.Empty; public string Path { get; set; } = null!;
public string FileName { get; set; } = String.Empty; public Guid SubjectVisitId { get; set; }
public string OperationName { get; set; } = String.Empty;
/// <summary>
/// 临床数据类型Id
/// </summary>
[Required]
public Guid ClinicalDataTrialSetId { get; set; }
}
} }

View File

@ -1,29 +1,31 @@
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("稽查 - 后端接收前端上传 文件记录表")]
[Table("InspectionFile")]
public class InspectionFile : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// 一致性核查文件
///</summary>
[Table("InspectionFile")]
public class InspectionFile : BaseAddAuditEntity
{
#region 导航属性
#endregion #endregion
public string FileName { get; set; } = string.Empty; [Comment(" 文件名称")]
[StringLength(400)]
public string FileName { get; set; } = null!;
[Comment(" 相对路径")]
[StringLength(400)]
public string RelativePath { get; set; } = null!;
public string RelativePath { get; set; } = string.Empty; [Comment(" 项目ID")]
public Guid TrialId { get; set; }
public Guid TrialId { get; set; }
}
} }

View File

@ -1,85 +1,81 @@
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("受试者访视 - QC质疑")]
[Table("QCChallenge")]
public class QCChallenge : BaseAddAuditEntity
{ {
public class QCChallenge : BaseAddAuditEntity #region 导航属性
{ [JsonIgnore]
#region 导航属性 [ForeignKey("LatestReplyUserId")]
[JsonIgnore] public User LatestReplyUser { get; set; }
[ForeignKey("LatestReplyUserId")] [JsonIgnore]
public User LatestReplyUser { get; set; } //导航属性
[JsonIgnore] [ForeignKey("SubjectVisitId")]
//导航属性 public SubjectVisit SubjectVisit { get; set; }
[ForeignKey("SubjectVisitId")]
public SubjectVisit SubjectVisit { get; set; }
[JsonIgnore] [JsonIgnore]
public List<QCChallengeDialog> DialogList { get; set; } = new List<QCChallengeDialog>(); public List<QCChallengeDialog> DialogList { get; set; } = new List<QCChallengeDialog>();
#endregion #endregion
[Comment(" 行动事项")]
[StringLength(1024)]
public string ActionContent { get; set; } = null!;
public string ChallengeCode { get; set; } = null!;
[StringLength(1024)]
public string ChallengeType { get; set; } = null!;
public Guid TrialId { get; set; } public DateTime? ClosedTime { get; set; }
public Guid SubjectVisitId { get; set; }
public DateTime? DeadlineTime { get; set; } public string ClosedUser { get; set; } = null!;
public string Note { get; set; } = string.Empty; public QCChallengeCloseEnum CloseResonEnum { get; set; }
public QCChanllengeReuploadEnum ReuploadEnum { get; set; } public int Code { get; set; }
[Comment(" 质疑内容")]
[StringLength(1024)]
public string Content { get; set; } = null!;
public DateTime? ReUploadedTime { get; set; } [Comment(" 用于双审的时候 区分 第一个人和第二个人的数据")]
public CurrentQC CurrentQCEnum { get; set; }
public string ReUploader { get; set; } = string.Empty; public DateTime? DeadlineTime { get; set; }
public Guid? ReUploadUserId { get; set; } public bool IsClosed { get; set; }
public TrialQCProcess QCProcessEnum { get; set; } public DateTime? LatestMsgTime { get; set; }
public CurrentQC CurrentQCEnum { get; set; } public Guid? LatestReplyUserId { get; set; }
public DateTime? LatestMsgTime { get; set; } [Comment(" 额外补充")]
[StringLength(1024)]
public string Note { get; set; } = null!;
public TrialQCProcess QCProcessEnum { get; set; }
public Guid? LatestReplyUserId { get; set; } public DateTime? ReUploadedTime { get; set; }
public QCChanllengeReuploadEnum? ReuploadEnum { get; set; }
public string ChallengeCode { get; set; } = string.Empty; [Comment(" 记录重传人")]
public string ReUploader { get; set; } = null!;
public int Code { get; set; } public Guid? ReUploadUserId { get; set; }
public Guid SubjectVisitId { get; set; }
public Guid TrialId { get; set; }
public bool IsClosed { get; set; } public UserTypeEnum UserTypeEnum { get; set; }
public DateTime? ClosedTime { get; set; }
public string ClosedUser { get; set; } = string.Empty;
public QCChallengeCloseEnum CloseResonEnum { get; set;}
public string Content { get; set; } = string.Empty;
public string ActionContent { get; set; } = string.Empty;
public UserTypeEnum UserTypeEnum { get; set; }
public string ChallengeType { get; set; } = string.Empty;
}
} }

View File

@ -1,22 +1,26 @@
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("受试者访视 - QC质疑对话")]
[Table("QCChallengeDialog")]
public class QCChallengeDialog : BaseAddAuditEntity
{ {
public class QCChallengeDialog : BaseAddAuditEntity #region 导航属性
{ [JsonIgnore]
#region 导航属性 public QCChallenge QCChallenge { get; set; }
[JsonIgnore] #endregion
public QCChallenge QCChallenge { get; set; }
#endregion
public string TalkContent { get; set; } = string.Empty; public Guid QCChallengeId { get; set; }
public Guid QCChallengeId { get; set; } public Guid SubjectVisitId { get; set; }
public Guid SubjectVisitId { get; set; } [StringLength(500)]
public string TalkContent { get; set; } = null!;
public UserTypeEnum UserTypeEnum { get; set; } public UserTypeEnum UserTypeEnum { get; set; }
}
} }

View File

@ -3,49 +3,45 @@
// 生成时间 2021-11-11 11:19:10 // 生成时间 2021-11-11 11:19:10
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。 // 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("后台 - QC质控问题需要同步")]
[Table("QCQuestion")]
public class QCQuestion : BaseFullAuditEntity
{ {
///<summary> #region 导航属性
///QCQuestionConfigure
///</summary>
[Table("QCQuestion")]
public class QCQuestion : BaseFullAuditEntity
{
#region 导航属性
[JsonIgnore] [JsonIgnore]
[ForeignKey("ParentId")] [ForeignKey("ParentId")]
public QCQuestion ParentQuestion { get; set; } public QCQuestion ParentQuestion { get; set; }
#endregion #endregion
public string QuestionName { get; set; } = string.Empty; public bool IsEnable { get; set; }
public bool IsRequired { get; set; }
/// <summary> 语言类型 </summary> public LanguageType LanguageType { get; set; }
public LanguageType LanguageType { get; set; } = LanguageType.Chinese;
public Guid? ParentId { get; set; }
public bool IsRequired { get; set; } public string ParentTriggerValue { get; set; } = null!;
public bool IsEnable { get; set; } [StringLength(510)]
public string QuestionName { get; set; } = null!;
/// <summary> 下拉框、文本、单选、多选 </summary> public int ShowOrder { get; set; }
public string Type { get; set; } = string.Empty;
public string TypeValue { get; set; } = string.Empty; [Comment(" 下拉框、文本、单选、多选")]
public string Type { get; set; } = null!;
public string ParentTriggerValue { get; set; } = string.Empty; public string TypeValue { get; set; } = null!;
public Guid? ParentId { get; set; }
public int ShowOrder { get; set; }
}
} }

View File

@ -5,104 +5,77 @@ using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 临床数据")]
[Table("ReadingClinicalData")]
public class ReadingClinicalData : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// 项目的临床数据
///</summary>
[Table("ReadingClinicalData")]
public class ReadingClinicalData : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore] [JsonIgnore]
[ForeignKey("ClinicalDataTrialSetId")] [ForeignKey("ClinicalDataTrialSetId")]
public ClinicalDataTrialSet ClinicalDataTrialSet { get; set; } public ClinicalDataTrialSet ClinicalDataTrialSet { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("StudyId")] [ForeignKey("StudyId")]
public DicomStudy DicomStudy { get; set; } public DicomStudy DicomStudy { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("TrialId")] [ForeignKey("TrialId")]
public Trial Trial { get; set; } public Trial Trial { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("ReadingId")] [ForeignKey("ReadingId")]
public SubjectVisit SubjectVisit { get; set; } public SubjectVisit SubjectVisit { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("SubjectId")] [ForeignKey("SubjectId")]
public Subject Subject { get; set; } public Subject Subject { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("ReadingId")] [ForeignKey("ReadingId")]
public ReadModule ReadModule { get; set; } public ReadModule ReadModule { get; set; }
/// <summary> /// <summary>
/// PDF文件 /// PDF文件
/// </summary> /// </summary>
[JsonIgnore] [JsonIgnore]
public List<ReadingClinicalDataPDF> ReadingClinicalDataPDFList { get; set; } public List<ReadingClinicalDataPDF> ReadingClinicalDataPDFList { get; set; }
#endregion #endregion
public Guid TrialId { get; set; } [Comment("临床数据类型Id")]
public Guid ClinicalDataTrialSetId { get; set; }
/// <summary> public int FileCount { get; set; }
/// 访视Id 或者模块Id
/// </summary>
public Guid ReadingId { get; set; }
public Guid? StudyId { get; set; } public bool? IsBlind { get; set; }
public bool? IsComplete { get; set; }
public Guid SubjectId { get; set; } public bool IsSign { get; set; }
/// <summary> public bool IsVisit { get; set; }
/// 临床数据类型Id
/// </summary>
public Guid ClinicalDataTrialSetId { get; set; }
/// <summary> public ReadingClinicalDataStatus ReadingClinicalDataState { get; set; }
/// 是否为访视
/// </summary>xiu
public bool IsVisit { get; set; }
public Guid ReadingId { get; set; }
/// <summary> public Guid? StudyId { get; set; }
/// 是否签名
/// </summary>
public bool IsSign { get; set; }
/// <summary> public Guid SubjectId { get; set; }
/// 是否盲化
/// </summary>
public bool? IsBlind { get; set; }
/// <summary>
/// 是否完整
/// </summary>
public bool? IsComplete { get; set; }
public int FileCount { get; set; }
//临床数据状态
public ReadingClinicalDataStatus ReadingClinicalDataState { get; set; }
}
public Guid TrialId { get; set; }
} }

View File

@ -4,14 +4,13 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models
{ {
///<summary> [Comment("项目阅片 - 临床数据PDF文件")]
/// 项目的临床数据 [Table("ReadingClinicalDataPDF")]
///</summary> public class ReadingClinicalDataPDF : BaseAddAuditEntity
[Table("ReadingClinicalDataPDF")]
public class ReadingClinicalDataPDF : BaseAddAuditEntity
{ {
#region 导航属性 #region 导航属性
[JsonIgnore] [JsonIgnore]
@ -19,20 +18,18 @@ namespace IRaCIS.Core.Domain.Models
public ReadingClinicalData ReadingClinicalData { get; set; } public ReadingClinicalData ReadingClinicalData { get; set; }
#endregion #endregion
/// <summary> [StringLength(1000)]
/// 阅片临床数据ID public string FileName { get; set; } = null!;
/// </summary>
[StringLength(2000)]
public string Path { get; set; } = null!;
[Comment("阅片临床数据ID")]
public Guid ReadingClinicalDataId { get; set; } public Guid ReadingClinicalDataId { get; set; }
public string Path { get; set; } = string.Empty; public int Size { get; set; }
public string Type { get; set; } = null!;
public string FileName { get; set; } = string.Empty;
public int Size { get; set; } = 0;
public string Type { get; set; } = string.Empty;
} }

View File

@ -5,111 +5,74 @@ using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 一致性分析临床数据")]
[Table("ReadingConsistentClinicalData")]
public class ReadingConsistentClinicalData : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// 一致性分析临床数据 [JsonIgnore]
///</summary> [ForeignKey("ClinicalDataTrialSetId")]
[Table("ReadingConsistentClinicalData")]
public class ReadingConsistentClinicalData : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore]
[ForeignKey("ClinicalDataTrialSetId")]
public ClinicalDataTrialSet ClinicalDataTrialSet { get; set; } public ClinicalDataTrialSet ClinicalDataTrialSet { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("StudyId")] [ForeignKey("StudyId")]
public DicomStudy DicomStudy { get; set; } public DicomStudy DicomStudy { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("TrialId")] [ForeignKey("TrialId")]
public Trial Trial { get; set; } public Trial Trial { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("ReadingId")] [ForeignKey("ReadingId")]
public SubjectVisit SubjectVisit { get; set; } public SubjectVisit SubjectVisit { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("SubjectId")] [ForeignKey("SubjectId")]
public Subject Subject { get; set; } public Subject Subject { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("ReadingId")] [ForeignKey("ReadingId")]
public ReadModule ReadModule { get; set; } public ReadModule ReadModule { get; set; }
/// <summary> /// <summary>
/// PDF文件 /// PDF文件
/// </summary> /// </summary>
[JsonIgnore] [JsonIgnore]
public List<ReadingConsistentClinicalDataPDF> ReadingClinicalDataPDFList { get; set; } public List<ReadingConsistentClinicalDataPDF> ReadingClinicalDataPDFList { get; set; }
#endregion #endregion
/// <summary>
/// 项目ID
/// </summary>
public Guid TrialId { get; set; }
/// <summary> public Guid ClinicalDataTrialSetId { get; set; }
/// 访视Id 或者模块Id
/// </summary>
public Guid ReadingId { get; set; }
public Guid? StudyId { get; set; } public int FileCount { get; set; }
[Comment("是否盲化")]
public bool? IsBlind { get; set; }
[Comment("是否完整")]
public bool? IsComplete { get; set; }
/// <summary> public bool IsSign { get; set; }
/// 受试者ID
/// </summary>
public Guid SubjectId { get; set; }
/// <summary> public bool IsVisit { get; set; }
/// 临床数据类型Id
/// </summary>
public Guid ClinicalDataTrialSetId { get; set; }
/// <summary>
/// 是否为访视
/// </summary>xiu
public bool IsVisit { get; set; }
/// <summary>
/// 是否签名
/// </summary>
public bool IsSign { get; set; }
/// <summary>
/// 是否盲化
/// </summary>
public bool? IsBlind { get; set; } = false;
/// <summary>
/// 是否完整
/// </summary>
public bool? IsComplete { get; set; } = true;
public int FileCount { get; set; }
//临床数据状态
public ReadingClinicalDataStatus ReadingClinicalDataState { get; set; }
}
public ReadingClinicalDataStatus ReadingClinicalDataState { get; set; }
public Guid ReadingId { get; set; }
public Guid? StudyId { get; set; }
public Guid SubjectId { get; set; }
public Guid TrialId { get; set; }
} }

View File

@ -4,44 +4,34 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 一致性分析临床数据PDF")]
[Table("ReadingConsistentClinicalDataPDF")]
public class ReadingConsistentClinicalDataPDF : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// 一致性分析临床数据 [JsonIgnore]
///</summary> [ForeignKey("ReadingConsistentClinicalDataId")]
[Table("ReadingConsistentClinicalDataPDF")] public ReadingConsistentClinicalData ReadingConsistentClinicalData { get; set; }
public class ReadingConsistentClinicalDataPDF : BaseAddAuditEntity #endregion
{
#region 导航属性
[JsonIgnore]
[ForeignKey("ReadingConsistentClinicalDataId")]
public ReadingConsistentClinicalData ReadingConsistentClinicalData { get; set; }
#endregion
/// <summary> [StringLength(1000)]
/// 阅片临床数据ID public string FileName { get; set; } = null!;
/// </summary>
public Guid ReadingConsistentClinicalDataId { get; set; }
public string Path { get; set; } = string.Empty;
public string FileName { get; set; } = string.Empty;
public int Size { get; set; } = 0;
/// <summary>
/// 文件类型
/// </summary>
public string Type { get; set; } = string.Empty;
}
[StringLength(2000)]
public string Path { get; set; } = null!;
public Guid ReadingConsistentClinicalDataId { get; set; }
public int Size { get; set; }
public string Type { get; set; } = null!;
} }

View File

@ -7,33 +7,37 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models
{ {
///<summary> [Comment("受试者 - 阅片模块临床表单")]
///ReadModuleCriterionFrom [Table("ReadModuleCriterionFrom")]
///</summary> public class ReadModuleCriterionFrom : BaseAddAuditEntity
[Table("ReadModuleCriterionFrom")]
public class ReadModuleCriterionFrom : BaseAddAuditEntity
{ {
#region 导航属性 #region 导航属性
[ForeignKey("ReadModuleId")]
public Guid ReadModuleId { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("ClinicalFormId")] [ForeignKey("ClinicalFormId")]
public ClinicalForm ClinicalForm { get; set; } public ClinicalForm ClinicalForm { get; set; }
#endregion #endregion
[Comment(" 表单Id")]
public Guid ClinicalFormId { get; set; }
[ForeignKey("ReadModuleId")]
[Comment(" 阅片期Id")]
public Guid ReadModuleId { get; set; }
[Comment(" 受试者Id")]
public Guid SubjectId { get; set; } public Guid SubjectId { get; set; }
public Guid TrialId { get; set; } [Comment(" 项目Id")]
public Guid TrialId { get; set; }
/// <summary>
/// 表单Id
/// </summary>
public Guid ClinicalFormId { get; set; }

View File

@ -9,124 +9,89 @@ using System.ComponentModel.DataAnnotations;
using System.Linq; using System.Linq;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 医学审核对话")]
[Table("ReadingMedicalReviewDialog")]
public class ReadingMedicalReviewDialog : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///阅片医学审核对话 [JsonIgnore]
///</summary> [ForeignKey("TaskMedicalReviewId")]
[Table("ReadingMedicalReviewDialog")] public TaskMedicalReview TaskMedicalReview { get; set; }
public class ReadingMedicalReviewDialog : BaseAddAuditEntity
/// <summary>
/// 文件
/// </summary>
[NotMapped]
public List<OSSImageInfo> FileList
{ {
#region 导航属性 get
[JsonIgnore]
[ForeignKey("TaskMedicalReviewId")]
public TaskMedicalReview TaskMedicalReview { get; set; }
/// <summary>
/// 文件
/// </summary>
[NotMapped]
public List<OSSImageInfo> FileList
{ {
get
try
{
var result = JsonConvert.DeserializeObject<List<OSSImageInfo>>(this.ImagePath);
return result == null ? new List<OSSImageInfo>() : result;
}
catch (Exception)
{ {
return new List<OSSImageInfo>();
try
{
var result = JsonConvert.DeserializeObject<List<OSSImageInfo>>(this.ImagePath);
return result == null ? new List<OSSImageInfo>() : result;
}
catch (Exception)
{
return new List<OSSImageInfo>();
}
} }
} }
}
#endregion #endregion
/// <summary>
/// 医学审核Id
/// </summary>
public Guid TaskMedicalReviewId { get; set; }
/// <summary> public AuditAdvice AuditAdviceEnum { get; set; }
/// 任务Id
/// </summary>
public Guid VisitTaskId { get; set; }
/// <summary> [StringLength(4000)]
/// 对话内容 public string Content { get; set; } = null!;
/// </summary>
public string Content { get; set; } = string.Empty;
/// <summary> [StringLength(400)]
/// 用户角色 public string DisagreeReason { get; set; } = null!;
/// </summary>
public string UserTypeShortName { get; set; } = string.Empty;
/// <summary> public MedicalReviewDoctorUserIdea DoctorUserIdeaEnum { get; set; }
/// 医学审核对话关闭原因
/// </summary>
public MedicalDialogClose? MedicalDialogCloseEnum { get; set; }
/// <summary>
/// 用户角色枚举
/// </summary>
public int UserTypeEnumInt { get; set; }
/// <summary> [MaxLength]
/// 阅片人是否认同 public string FileName { get; set; } = null!;
/// </summary>
public MedicalReviewDoctorUserIdea DoctorUserIdeaEnum { get; set; } = MedicalReviewDoctorUserIdea.defalut;
/// <summary>
/// 是否有问题
/// </summary>
public bool IsHaveQuestion { get; set; } = false;
/// <summary>
/// 质询问题
/// </summary>
public string Questioning { get; set; } = string.Empty;
/// <summary>
/// 审核建议
/// </summary>
public AuditAdvice AuditAdviceEnum { get; set; } = AuditAdvice.None;
/// <summary>
/// 不同意重阅原因
/// </summary>
public string DisagreeReason { get; set; } = string.Empty;
/// <summary> [MaxLength]
/// 是否申请重阅 public string ImagePath { get; set; } = null!;
/// </summary>
public bool? IsApplyHeavyReading { get; set; } [Comment("是否申请重阅")]
public bool? IsApplyHeavyReading { get; set; }
[Comment("是否有问题")]
public bool IsHaveQuestion { get; set; }
[Comment("医学审核对话关闭原因")]
public MedicalDialogClose? MedicalDialogCloseEnum { get; set; }
[Comment("质询问题")]
[StringLength(1000)]
public string Questioning { get; set; } = null!;
public Guid TaskMedicalReviewId { get; set; }
public int UserTypeEnumInt { get; set; }
public string UserTypeShortName { get; set; } = null!;
public Guid VisitTaskId { get; set; }
/// <summary>
/// 图片路径
/// </summary>
public string ImagePath { get; set; } = string.Empty;
/// <summary>
/// 文件名称
/// </summary>
public string FileName { get; set; } = string.Empty;
}
} }

View File

@ -3,41 +3,33 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 医学审核任务问题答案")]
[Table("ReadingMedicineQuestionAnswer")]
public class ReadingMedicineQuestionAnswer : BaseFullAuditEntity
{ {
///<summary> #region 导航属性
/// 阅片医学问题答案
///</summary>
[Table("ReadingMedicineQuestionAnswer")]
public class ReadingMedicineQuestionAnswer : BaseFullAuditEntity
{
#region 导航属性
[JsonIgnore] [JsonIgnore]
[ForeignKey("TaskMedicalReviewId")] [ForeignKey("TaskMedicalReviewId")]
public TaskMedicalReview TaskMedicalReview { get; set; } public TaskMedicalReview TaskMedicalReview { get; set; }
#endregion #endregion
/// <summary> [StringLength(400)]
/// 医学审核问题Id public string Answer { get; set; } = null!;
/// </summary> [Comment("医学审核问题Id")]
public Guid ReadingMedicineQuestionId { get; set; } public Guid ReadingMedicineQuestionId { get; set; }
/// <summary> public Guid TaskMedicalReviewId { get; set; }
/// 医学审核Id
/// </summary>
public Guid TaskMedicalReviewId { get; set; } public Guid VisitTaskId { get; set; }
public Guid VisitTaskId { get; set; }
public string Answer { get; set; } = string.Empty;
}
} }

View File

@ -9,88 +9,51 @@ using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("系统标准 - 医学审核问题 (需要同步)")]
[Table("ReadingMedicineSystemQuestion")]
public class ReadingMedicineSystemQuestion : BaseFullAuditEntity
{ {
///<summary> #region 导航属性
/// 阅片医学审核系统问题 [JsonIgnore]
///</summary>
[Table("ReadingMedicineSystemQuestion")]
public class ReadingMedicineSystemQuestion : BaseFullAuditEntity
{
#region 导航属性
[JsonIgnore]
[ForeignKey("ParentId")] [ForeignKey("ParentId")]
public ReadingMedicineSystemQuestion ParentQuestion { get; set; } public ReadingMedicineSystemQuestion ParentQuestion { get; set; }
//// |1|2| 这种保存 //// |1|2| 这种保存
// public string CriterionEnumStr { get; set; } = string.Empty; // public string CriterionEnumStr { get; set; } = string.Empty;
// [NotMapped] // [NotMapped]
// public List<int> CriterionEnumList => CriterionEnumStr.Split('|', StringSplitOptions.RemoveEmptyEntries).Where(t => !string.IsNullOrEmpty(t)).Select(t=> Convert.ToInt32(t.Trim()) ).ToList( // public List<int> CriterionEnumList => CriterionEnumStr.Split('|', StringSplitOptions.RemoveEmptyEntries).Where(t => !string.IsNullOrEmpty(t)).Select(t=> Convert.ToInt32(t.Trim()) ).ToList(
#endregion #endregion
/// <summary>
/// 类型
/// </summary>
public string Type { get; set; } = string.Empty;
/// <summary> public CriterionType? CriterionTypeEnum { get; set; }
/// 父问题触发
/// </summary>
public string ParentTriggerValue { get; set; } = string.Empty;
/// <summary> public bool IsEnable { get; set; }
/// 问题名称
/// </summary>
public string QuestionName { get; set; } = string.Empty;
/// <summary> public bool IsGeneral { get; set; }
/// 语言类型
/// </summary>
public LanguageType LanguageType { get; set; } = LanguageType.Chinese;
/// <summary> public bool IsRequired { get; set; }
/// 是否是必须
/// </summary> public LanguageType LanguageType { get; set; }
public bool IsRequired { get; set; }
public Guid? ParentId { get; set; }
public string ParentTriggerValue { get; set; } = null!;
[StringLength(510)]
public string QuestionName { get; set; } = null!;
public ReadingCategory ReadingCategory { get; set; }
public int ShowOrder { get; set; }
public string Type { get; set; } = null!;
public string TypeValue { get; set; } = null!;
/// <summary>
/// 排序
/// </summary>
public int ShowOrder { get; set; }
/// <summary>
/// 父问题ID
/// </summary>
public Guid? ParentId { get; set; }
/// <summary>
/// 类型值
/// </summary>
public string TypeValue { get; set; } = string.Empty;
/// <summary>
/// 是否启用
/// </summary>
public bool IsEnable { get; set; }
/// <summary>
/// 任务类型
/// </summary>
public ReadingCategory ReadingCategory { get; set; }
public CriterionType? CriterionTypeEnum { get; set; }
public bool IsGeneral { get; set; }
}
} }

View File

@ -7,94 +7,52 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目标准 - 医学审核问题")]
[Table("ReadingMedicineTrialQuestion")]
public class ReadingMedicineTrialQuestion : BaseFullAuditEntity
{ {
///<summary>
///阅片医学审核项目问题
///</summary>
[Table("ReadingMedicineTrialQuestion")]
public class ReadingMedicineTrialQuestion : BaseFullAuditEntity
{
#region 导航属性 #region 导航属性
[JsonIgnore] [JsonIgnore]
[ForeignKey("ParentId")] [ForeignKey("ParentId")]
public ReadingMedicineTrialQuestion ParentQuestion { get; set; } public ReadingMedicineTrialQuestion ParentQuestion { get; set; }
#endregion #endregion
/// <summary> public bool IsConfirm { get; set; }
/// 类型
/// </summary>
public string Type { get; set; } = string.Empty;
/// <summary> public bool IsEnable { get; set; }
/// 父问题触发值
/// </summary>
public string ParentTriggerValue { get; set; } = string.Empty;
/// <summary> public bool IsRequired { get; set; }
/// 问题名称
/// </summary>
public string QuestionName { get; set; } = string.Empty;
/// <summary> public LanguageType LanguageType { get; set; }
/// 语言类型
/// </summary>
public LanguageType LanguageType { get; set; } = LanguageType.Chinese;
public Guid? ParentId { get; set; }
public string ParentTriggerValue { get; set; } = null!;
/// <summary> [StringLength(510)]
/// 类型值 public string QuestionName { get; set; } = null!;
/// </summary>
public string TypeValue { get; set; } = string.Empty;
public ReadingCategory ReadingCategory { get; set; }
/// <summary> public int ShowOrder { get; set; }
/// 项目ID
/// </summary>
public Guid TrialId { get; set; }
/// <summary> public Guid? SystemQuestionId { get; set; }
/// 是否启用
/// </summary>
public bool IsEnable { get; set; }
/// <summary> public Guid TrialId { get; set; }
/// 是否必须
/// </summary>
public bool IsRequired { get; set; }
/// <summary> public Guid TrialReadingCriterionId { get; set; }
/// 排序
/// </summary>
public int ShowOrder { get; set; }
/// <summary> public string Type { get; set; } = null!;
/// 父问题
/// </summary>
public Guid? ParentId { get; set; }
/// <summary> public string TypeValue { get; set; } = null!;
/// 是否确认
/// </summary>
public bool IsConfirm { get; set; }
/// <summary>
/// 任务类型
/// </summary>
public ReadingCategory ReadingCategory { get; set; }
/// <summary>
/// 项目标准
/// </summary>
public Guid TrialReadingCriterionId { get; set; }
public Guid? SystemQuestionId { get; set; }
}
} }

View File

@ -7,94 +7,54 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("后台 - 系统标准器官 (需要同步)")]
[Table("OrganInfo")]
public class OrganInfo : BaseAddAuditEntity
{ {
///<summary>
///OrganInfo
///</summary>
[Table("OrganInfo")]
public class OrganInfo : BaseAddAuditEntity
{
#region 导航属性 #region 导航属性
#endregion #endregion
/// <summary>
/// 分类
/// </summary>
public string Classification { get; set; } = string.Empty;
/// <summary> [Comment("分类")]
/// 分类 英文 public string Classification { get; set; } = null!;
/// </summary>
public string ClassificationEN { get; set; } = string.Empty;
/// <summary> public string ClassificationEN { get; set; } = null!;
/// 部位
/// </summary>
public string Part { get; set; } = string.Empty;
/// <summary> [Comment("是否可编辑位置")]
/// 部位 英文 public bool IsCanEditPosition { get; set; }
/// </summary>
public string PartEN { get; set; } = string.Empty;
/// <summary> [Comment("是否是淋巴结")]
/// TULOC 器官 public IsLymph IsLymphNodes { get; set; }
/// </summary>
public string TULOC { get; set; } = string.Empty;
/// <summary> public OrganType OrganType { get; set; }
/// TULOC 器官 英文
/// </summary>
public string TULOCEN { get; set; } = string.Empty;
/// <summary> [Comment(" 部位")]
/// 位置 public string Part { get; set; } = null!;
/// </summary>
public string TULAT { get; set; } = string.Empty;
public string PartEN { get; set; } = null!;
/// <summary> public string Remark { get; set; } = null!;
/// 位置 英文
/// </summary>
public string TULATEN { get; set; } = string.Empty;
/// <summary> public int ShowOrder { get; set; }
/// 备注
/// </summary>
public string Remark { get; set; } = string.Empty;
public Guid SystemCriterionId { get; set; }
/// <summary> [Comment(" 位置")]
/// 是否是淋巴结 public string TULAT { get; set; } = null!;
/// </summary>
public IsLymph IsLymphNodes { get; set; }
/// <summary> public string TULATEN { get; set; } = null!;
/// 器官类型
/// </summary>
public OrganType OrganType { get; set; }
/// <summary> public string TULOC { get; set; } = null!;
/// 标准Id
/// </summary>
public Guid SystemCriterionId { get; set; }
public string TULOCEN { get; set; } = null!;
/// <summary>
/// 是否可编辑位置
/// </summary>
public bool IsCanEditPosition { get; set; }
/// <summary>
/// 序号
/// </summary>
public int ShowOrder { get; set; } = 0;
}
} }

View File

@ -7,101 +7,57 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目标准 - 器官")]
[Table("OrganTrialInfo")]
public class OrganTrialInfo : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///OrganTrialInfo
///</summary>
[Table("OrganTrialInfo")]
public class OrganTrialInfo : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore] [JsonIgnore]
[ForeignKey("OrganInfoId")] [ForeignKey("OrganInfoId")]
public OrganInfo OrganInfo { get; set; } public OrganInfo OrganInfo { get; set; }
#endregion #endregion
/// <summary>
/// 器官Id
/// </summary>
public Guid OrganInfoId { get; set; }
/// <summary> [Comment("分类")]
/// 项目Id public string Classification { get; set; } = null!;
/// </summary>
public Guid TrialId { get; set; }
public bool IsEnable { get; set; } public string ClassificationEN { get; set; } = null!;
[Comment("是否可编辑位置")]
public bool IsCanEditPosition { get; set; }
/// <summary> public bool IsEnable { get; set; }
/// 标准Id
/// </summary>
public Guid TrialCriterionId { get; set; }
/// <summary> public IsLymph IsLymphNodes { get; set; }
/// 部位
/// </summary>
public string Part { get; set; } = string.Empty;
/// <summary> [Comment(" 器官Id")]
/// 部位 英文 public Guid OrganInfoId { get; set; }
/// </summary>
public string PartEN { get; set; } = string.Empty;
/// <summary> public OrganType? OrganType { get; set; }
/// TULOC 器官
/// </summary>
public string TULOC { get; set; } = string.Empty;
/// <summary> public string Part { get; set; } = null!;
/// TULOC 器官 英文
/// </summary>
public string TULOCEN { get; set; } = string.Empty;
/// <summary> public string PartEN { get; set; } = null!;
/// 位置
/// </summary>
public string TULAT { get; set; } = string.Empty;
public int ShowOrder { get; set; }
/// <summary> public Guid TrialCriterionId { get; set; }
/// 位置 英文
/// </summary>
public string TULATEN { get; set; } = string.Empty;
/// <summary> [Comment(" 项目Id")]
/// 是否是淋巴结 public Guid TrialId { get; set; }
/// </summary>
public IsLymph IsLymphNodes { get; set; }
/// <summary> public string TULAT { get; set; } = null!;
/// 是否可编辑位置
/// </summary>
public bool IsCanEditPosition { get; set; }
/// <summary> public string TULATEN { get; set; } = null!;
/// 分类
/// </summary>
public string Classification { get; set; } = string.Empty;
/// <summary> public string TULOC { get; set; } = null!;
/// 分类 英文
/// </summary>
public string ClassificationEN { get; set; } = string.Empty;
/// <summary>
/// 序号
/// </summary>
public int ShowOrder { get; set; } = 0;
/// <summary>
/// 器官类型
/// </summary>
public OrganType? OrganType { get; set; }
}
public string TULOCEN { get; set; } = null!;
} }

View File

@ -8,52 +8,32 @@ using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目标准 - 分页")]
[Table("ReadingCriterionPage")]
public class ReadingCriterionPage : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///阅片标准分页 [JsonIgnore]
///</summary> public List<ReadingQuestionTrial> ReadingQuestionList { get; set; } = new List<ReadingQuestionTrial>();
[Table("ReadingCriterionPage")] #endregion
public class ReadingCriterionPage : BaseAddAuditEntity public bool IsEnable { get; set; }
{
#region 导航属性
[JsonIgnore]
public List<ReadingQuestionTrial> ReadingQuestionList { get; set; } = new List<ReadingQuestionTrial>();
#endregion
/// <summary>
/// 项目ID
/// </summary>
public Guid TrialId { get; set; }
/// <summary> [Comment("是否公共分页")]
/// 分页名称 public bool IsPublicPage { get; set; }
/// </summary>
public string PageName { get; set; } = string.Empty;
/// <summary> public string PageName { get; set; } = null!;
/// 是否启用
/// </summary> public Guid ReadingQuestionCriterionTrialId { get; set; }
public bool IsEnable { get; set; }
public int ShowOrder { get; set; }
public Guid TrialId { get; set; }
/// <summary>
/// 是否公共分页
/// </summary>
public bool IsPublicPage { get; set; } = false;
/// <summary>
/// 排序
/// </summary>
public int ShowOrder { get; set; } = 0;
public Guid ReadingQuestionCriterionTrialId { get; set; }
}
} }

View File

@ -5,83 +5,41 @@ using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("系统标准 - 标准配置 (需要同步)")]
[Table("ReadingQuestionCriterionSystem")]
public class ReadingQuestionCriterionSystem : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// 系统阅片标准 [JsonIgnore]
///</summary> public List<ReadingQuestionSystem> ReadingQuestionSystemList { get; set; } = new List<ReadingQuestionSystem>();
[Table("ReadingQuestionCriterionSystem")] #endregion
public class ReadingQuestionCriterionSystem : BaseAddAuditEntity public DateTime ConfirmTime { get; set; }
{
#region 导航属性
[JsonIgnore]
public List<ReadingQuestionSystem> ReadingQuestionSystemList { get; set; } = new List<ReadingQuestionSystem>();
#endregion
/// <summary>
/// 标准
/// </summary>
public string CriterionName { get; set; } = string.Empty;
/// <summary> [StringLength(400)]
/// 是否启用 public string CriterionName { get; set; } = null!;
/// </summary>
public bool IsEnable { get; set; }
/// <summary> public CriterionType CriterionType { get; set; }
/// 排序
/// </summary>
public int ShowOrder { get; set; }
/// <summary>
/// 是否完成配置
/// </summary>
public bool IsCompleteConfig { get; set; }
/// <summary>
/// 确认时间
/// </summary>
public DateTime ConfirmTime { get; set; }
/// <summary>
/// 描述
/// </summary>
public string Description { get; set; } = string.Empty;
/// <summary>
/// 标准类型
/// </summary>
public CriterionType CriterionType { get; set; }
/// <summary>
/// 肿瘤学阅片
/// </summary>
public bool IsOncologyReading { get; set; } = false;
/// <summary>
/// eCRF报告是否显示在图像页面
/// </summary>
public bool IseCRFShowInDicomReading { get; set; } = false;
/// <summary>
/// 是否必须全局阅片
/// </summary>
public bool IsMustGlobalReading { get; set; } = false;
}
[StringLength(600)]
public string Description { get; set; } = null!;
public bool IsCompleteConfig { get; set; }
[Comment("eCRF报告是否显示在图像页面")]
public bool IseCRFShowInDicomReading { get; set; }
public bool IsEnable { get; set; }
[Comment("是否必须全局阅片")]
public bool IsMustGlobalReading { get; set; }
public bool IsOncologyReading { get; set; }
public int ShowOrder { get; set; }
} }

View File

@ -6,297 +6,292 @@ using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("系统标准问题 (需要同步)")]
[Table("ReadingQuestionSystem")]
public class ReadingQuestionSystem : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// 系统阅片问题 [JsonIgnore]
///</summary> [ForeignKey("GroupId")]
[Table("ReadingQuestionSystem")] public ReadingQuestionSystem GroupInfo { get; set; }
public class ReadingQuestionSystem : BaseAddAuditEntity
[JsonIgnore]
[ForeignKey("ReadingQuestionCriterionSystemId")]
public ReadingQuestionCriterionSystem ReadingQuestionCriterionSystem { get; set; }
[JsonIgnore]
[ForeignKey("ParentId")]
public ReadingQuestionSystem ParentReadingQuestionSystem { get; set; }
[JsonIgnore]
[ForeignKey("RelevanceId")]
public ReadingQuestionSystem RelevanceReadingQuestionSystem { get; set; }
[NotMapped]
public List<string> ParentTriggerValueList
{ {
#region 导航属性 get
[JsonIgnore]
[ForeignKey("GroupId")]
public ReadingQuestionSystem GroupInfo { get; set; }
[JsonIgnore]
[ForeignKey("ReadingQuestionCriterionSystemId")]
public ReadingQuestionCriterionSystem ReadingQuestionCriterionSystem { get; set; }
[JsonIgnore]
[ForeignKey("ParentId")]
public ReadingQuestionSystem ParentReadingQuestionSystem { get; set; }
[JsonIgnore]
[ForeignKey("RelevanceId")]
public ReadingQuestionSystem RelevanceReadingQuestionSystem { get; set; }
[NotMapped]
public List<string> ParentTriggerValueList
{ {
get try
{ {
try return this.ParentTriggerValue.Split(',').ToList();
{
return this.ParentTriggerValue.Split(',').ToList();
}
catch (Exception)
{
return new List<string>();
}
} }
catch (Exception)
}
[NotMapped]
public List<string> RelevanceValueList
{
get
{
try
{
return this.RelevanceValue.Split(',').ToList();
}
catch (Exception)
{
return new List<string>();
}
}
}
[NotMapped]
public List<string> HighlightAnswerList
{
get
{ {
try return new List<string>();
{
var result = JsonConvert.DeserializeObject<List<string>>(this.HighlightAnswer);
return result == null ? new List<string>() : result;
}
catch (Exception)
{
return new List<string>();
}
} }
} }
#endregion
/// <summary>
/// 系统标准Id
/// </summary>
public Guid ReadingQuestionCriterionSystemId { get; set; }
/// <summary>
/// 类型
/// </summary>
public string Type { get; set; } = string.Empty;
/// <summary>
/// 父问题触发
/// </summary>
public string ParentTriggerValue { get; set; } = string.Empty;
/// <summary>
/// 问题名称
/// </summary>
public string QuestionName { get; set; } = string.Empty;
/// <summary>
/// 是否是必须
/// </summary>
public IsRequired IsRequired { get; set; }
/// <summary>
/// 排序
/// </summary>
public int ShowOrder { get; set; }
/// <summary>
/// 父问题ID
/// </summary>
public Guid? ParentId { get; set; }
/// <summary>
/// 类型值
/// </summary>
public string TypeValue { get; set; } = string.Empty;
/// <summary>
/// 是否启用
/// </summary>
public bool IsEnable { get; set; }
/// <summary>
/// 是否是裁判问题
/// </summary>
public bool IsJudgeQuestion { get; set; }
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; } = string.Empty;
/// <summary>
/// 关联ID
/// </summary>
public Guid? RelevanceId { get; set; }
/// <summary>
/// 关联Value
/// </summary>
public string RelevanceValue { get; set; } = string.Empty;
/// <summary>
/// 分组
/// </summary>
public string GroupName { get; set; } = string.Empty;
/// <summary>
/// 图片数量
/// </summary>
public int ImageCount { get; set; } = 1;
/// <summary>
/// 是否显示
/// </summary>
public ShowQuestion ShowQuestion { get; set; } = ShowQuestion.Show;
/// <summary>
/// 最大问题数
/// </summary>
public int? MaxQuestionCount { get; set; }
/// <summary>
/// 病灶类型
/// </summary>
public LesionType? LesionType { get; set; }
/// <summary>
/// 问题类型
/// </summary>
public QuestionType? QuestionType { get; set; }
/// <summary>
/// 是否显示在Dicom阅片中
/// </summary>
public bool IsShowInDicom { get; set; } = false;
/// <summary>
/// 序号标记
/// </summary>
public string OrderMark { get; set; } = string.Empty;
/// <summary>
/// 字典code
/// </summary>
public string DictionaryCode { get; set; } = string.Empty;
/// <summary>
/// 问题类型
/// </summary>
public TableQuestionType? QuestionGenre { get; set; }
/// <summary>
/// 全局阅片显示类型
/// </summary>
public GlobalReadingShowType GlobalReadingShowType { get; set; } = GlobalReadingShowType.NotShow;
/// <summary>
/// 转化显示类型
/// </summary>
public ConvertShowType ConvertShowType { get; set; } = ConvertShowType.All;
/// <summary>
/// 默认值
/// </summary>
public string DefaultValue { get; set; } = string.Empty;
/// <summary>
/// 数值类型
/// </summary>
public ValueOfType? ValueType { get; set; }
/// <summary>
/// 单位
/// </summary>
public ValueUnit? Unit { get; set; }
/// <summary>
/// 问题英文名称
/// </summary>
public string QuestionEnName { get; set; } = string.Empty;
/// <summary>
/// 问题英文分组
/// </summary>
public string GroupEnName { get; set; } = string.Empty;
/// <summary>
/// 限制编辑
/// </summary>
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
/// <summary>
/// 限制显示
/// </summary>
public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
/// <summary>
/// 数据来源
/// </summary>
public DataSources DataSource { get; set; } = DataSources.ManualEntry;
/// <summary>
/// 最大答案长度
/// </summary>
public int? MaxAnswerLength { get; set; }
/// <summary>
/// 分组ID
/// </summary>
public Guid? GroupId { get; set; }
/// <summary>
/// 文件类型
/// </summary>
public string FileType { get; set; } = string.Empty;
/// <summary>
/// 分组分类
/// </summary>
public GroupClassify? GroupClassify { get; set; }
/// <summary>
/// 问题分类
/// </summary>
public QuestionClassify? QuestionClassify { get; set; }
/// <summary>
/// 高亮问题的答案
/// </summary>
public string HighlightAnswer { get; set; } = "[]";
} }
[NotMapped]
public List<string> RelevanceValueList
{
get
{
try
{
return this.RelevanceValue.Split(',').ToList();
}
catch (Exception)
{
return new List<string>();
}
}
}
[NotMapped]
public List<string> HighlightAnswerList
{
get
{
try
{
var result = JsonConvert.DeserializeObject<List<string>>(this.HighlightAnswer);
return result == null ? new List<string>() : result;
}
catch (Exception)
{
return new List<string>();
}
}
}
#endregion
/// <summary>
/// 系统标准Id
/// </summary>
public Guid ReadingQuestionCriterionSystemId { get; set; }
/// <summary>
/// 类型
/// </summary>
public string Type { get; set; } = string.Empty;
/// <summary>
/// 父问题触发
/// </summary>
public string ParentTriggerValue { get; set; } = string.Empty;
/// <summary>
/// 问题名称
/// </summary>
public string QuestionName { get; set; } = string.Empty;
/// <summary>
/// 是否是必须
/// </summary>
public IsRequired IsRequired { get; set; }
/// <summary>
/// 排序
/// </summary>
public int ShowOrder { get; set; }
/// <summary>
/// 父问题ID
/// </summary>
public Guid? ParentId { get; set; }
/// <summary>
/// 类型值
/// </summary>
public string TypeValue { get; set; } = string.Empty;
/// <summary>
/// 是否启用
/// </summary>
public bool IsEnable { get; set; }
/// <summary>
/// 是否是裁判问题
/// </summary>
public bool IsJudgeQuestion { get; set; }
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; } = string.Empty;
/// <summary>
/// 关联ID
/// </summary>
public Guid? RelevanceId { get; set; }
/// <summary>
/// 关联Value
/// </summary>
public string RelevanceValue { get; set; } = string.Empty;
/// <summary>
/// 分组
/// </summary>
public string GroupName { get; set; } = string.Empty;
/// <summary>
/// 图片数量
/// </summary>
public int ImageCount { get; set; } = 1;
/// <summary>
/// 是否显示
/// </summary>
public ShowQuestion ShowQuestion { get; set; } = ShowQuestion.Show;
/// <summary>
/// 最大问题数
/// </summary>
public int? MaxQuestionCount { get; set; }
/// <summary>
/// 病灶类型
/// </summary>
public LesionType? LesionType { get; set; }
/// <summary>
/// 问题类型
/// </summary>
public QuestionType? QuestionType { get; set; }
/// <summary>
/// 是否显示在Dicom阅片中
/// </summary>
public bool IsShowInDicom { get; set; } = false;
/// <summary>
/// 序号标记
/// </summary>
public string OrderMark { get; set; } = string.Empty;
/// <summary>
/// 字典code
/// </summary>
public string DictionaryCode { get; set; } = string.Empty;
/// <summary>
/// 问题类型
/// </summary>
public TableQuestionType? QuestionGenre { get; set; }
/// <summary>
/// 全局阅片显示类型
/// </summary>
public GlobalReadingShowType GlobalReadingShowType { get; set; } = GlobalReadingShowType.NotShow;
/// <summary>
/// 转化显示类型
/// </summary>
public ConvertShowType ConvertShowType { get; set; } = ConvertShowType.All;
/// <summary>
/// 默认值
/// </summary>
public string DefaultValue { get; set; } = string.Empty;
/// <summary>
/// 数值类型
/// </summary>
public ValueOfType? ValueType { get; set; }
/// <summary>
/// 单位
/// </summary>
public ValueUnit? Unit { get; set; }
/// <summary>
/// 问题英文名称
/// </summary>
public string QuestionEnName { get; set; } = string.Empty;
/// <summary>
/// 问题英文分组
/// </summary>
public string GroupEnName { get; set; } = string.Empty;
/// <summary>
/// 限制编辑
/// </summary>
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
/// <summary>
/// 限制显示
/// </summary>
public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
/// <summary>
/// 数据来源
/// </summary>
public DataSources DataSource { get; set; } = DataSources.ManualEntry;
/// <summary>
/// 最大答案长度
/// </summary>
public int? MaxAnswerLength { get; set; }
/// <summary>
/// 分组ID
/// </summary>
public Guid? GroupId { get; set; }
/// <summary>
/// 文件类型
/// </summary>
public string FileType { get; set; } = string.Empty;
/// <summary>
/// 分组分类
/// </summary>
public GroupClassify? GroupClassify { get; set; }
/// <summary>
/// 问题分类
/// </summary>
public QuestionClassify? QuestionClassify { get; set; }
/// <summary>
/// 高亮问题的答案
/// </summary>
public string HighlightAnswer { get; set; } = "[]";
} }

View File

@ -7,413 +7,408 @@ using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using IRaCIS.Core.Domain.Share.Reading; using IRaCIS.Core.Domain.Share.Reading;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目标准 - 标准配置")]
[Table("ReadingQuestionCriterionTrial")]
public class ReadingQuestionTrial : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// 项目阅片问题 /// <summary>
///</summary> /// 分页标准
[Table("ReadingQuestionTrial")] /// </summary>
public class ReadingQuestionTrial : BaseAddAuditEntity [ForeignKey("ReadingCriterionPageId")]
{ [JsonIgnore]
#region 导航属性 public ReadingCriterionPage ReadingCriterionPage { get; set; }
/// <summary> [JsonIgnore]
/// 分页标准 [ForeignKey("ParentId")]
/// </summary> public ReadingQuestionTrial ParentReadingQuestionTrial { get; set; }
[ForeignKey("ReadingCriterionPageId")] [JsonIgnore]
[JsonIgnore] [ForeignKey("RelevanceId")]
public ReadingCriterionPage ReadingCriterionPage { get; set; } public ReadingQuestionTrial RelevanceReadingQuestionTrial { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("ParentId")] [ForeignKey("ReadingQuestionCriterionTrialId")]
public ReadingQuestionTrial ParentReadingQuestionTrial { get; set; } public ReadingQuestionCriterionTrial ReadingQuestionCriterionTrial { get; set; }
[JsonIgnore]
[ForeignKey("RelevanceId")]
public ReadingQuestionTrial RelevanceReadingQuestionTrial { get; set; }
[JsonIgnore]
[ForeignKey("ReadingQuestionCriterionTrialId")]
public ReadingQuestionCriterionTrial ReadingQuestionCriterionTrial { get; set; }
[JsonIgnore] [JsonIgnore]
public List<ReadingTableQuestionTrial> ReadingTableQuestionTrialList { get; set; } public List<ReadingTableQuestionTrial> ReadingTableQuestionTrialList { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("GroupId")] [ForeignKey("GroupId")]
public ReadingQuestionTrial GroupInfo { get; set; } public ReadingQuestionTrial GroupInfo { get; set; }
[NotMapped] [NotMapped]
public List<string> ParentTriggerValueList public List<string> ParentTriggerValueList
{
get
{ {
get try
{ {
try return this.ParentTriggerValue.Split(',').ToList();
{
return this.ParentTriggerValue.Split(',').ToList();
}
catch (Exception)
{
return new List<string>();
}
} }
catch (Exception)
}
[NotMapped]
public List<string> RelevanceValueList
{
get
{
try
{
return this.RelevanceValue.Split(',').ToList();
}
catch (Exception)
{
return new List<string>();
}
}
}
[NotMapped]
public List<CalculateInfo> CalculateQuestionList
{
get
{ {
try return new List<string>();
{
var result = JsonConvert.DeserializeObject<List<CalculateInfo>>(this.CalculateQuestions);
return result == null ? new List<CalculateInfo>() : result;
}
catch (Exception)
{
return new List<CalculateInfo>();
}
} }
} }
[NotMapped]
public List<string> HighlightAnswerList
{
get
{
try
{
var result = JsonConvert.DeserializeObject<List<string>>(this.HighlightAnswer);
return result == null ? new List<string>() : result;
}
catch (Exception)
{
return new List<string>();
}
}
}
#endregion
public bool IsAdditional { get; set; }
/// <summary>
/// 项目标准Id
/// </summary>
public Guid ReadingQuestionCriterionTrialId { get; set; }
/// <summary>
/// 项目Id
/// </summary>
public Guid TrialId { get; set; }
/// <summary>
/// 类型
/// </summary>
public string Type { get; set; } = string.Empty;
/// <summary>
/// 父问题触发
/// </summary>
public string ParentTriggerValue { get; set; } = string.Empty;
/// <summary>
/// 问题名称
/// </summary>
public string QuestionName { get; set; } = string.Empty;
/// <summary>
/// 是否是必须
/// </summary>
public IsRequired IsRequired { get; set; }
/// <summary>
/// 排序
/// </summary>
public int ShowOrder { get; set; }
/// <summary>
/// 父问题ID
/// </summary>
public Guid? ParentId { get; set; }
/// <summary>
/// 类型值
/// </summary>
public string TypeValue { get; set; } = string.Empty;
public bool IsEnable { get; set; }
/// <summary>
/// 是否是裁判问题
/// </summary>
public bool IsJudgeQuestion { get; set; }
/// <summary>
/// 病灶类型
/// </summary>
public LesionType? LesionType { get; set; }
/// <summary>
/// 问题类型
/// </summary>
public QuestionType? QuestionType { get; set; }
/// <summary>
/// 全局阅片显示类型
/// </summary>
public GlobalReadingShowType GlobalReadingShowType { get; set; } = GlobalReadingShowType.NotShow;
/// <summary>
/// 转化显示类型
/// </summary>
public ConvertShowType ConvertShowType { get; set; } = ConvertShowType.All;
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; } = string.Empty;
/// <summary>
/// 分组
/// </summary>
public string GroupName { get; set; } = string.Empty;
/// <summary>
/// 系统问题ID
/// </summary>
public Guid? ReadingQuestionSystemId { get; set; }
/// <summary>
/// 系统标准的ParentId
/// </summary>
public Guid? SystemParentId { get; set; }
/// <summary>
/// 答案分组
/// </summary>
public string AnswerGroup { get; set; } = string.Empty;
/// <summary>
/// 答案组合
/// </summary>
public string AnswerCombination { get; set; } = string.Empty;
/// <summary>
/// 裁判类型
/// </summary>
public JudgeTypeEnum JudgeType { get; set; } = JudgeTypeEnum.AnswerDisaffinity;
/// <summary>
/// 裁判百分比或绝对值的相差值
/// </summary>
public decimal? JudgeDifferenceValue { get; set; }
/// <summary>
/// 裁判百分比或绝对值的相差值匹配规则
/// </summary>
public JudgeDifferenceType JudgeDifferenceType { get; set; }
/// <summary>
/// 标准分页Id
/// </summary>
public Guid? ReadingCriterionPageId { get; set; }
/// <summary>
/// 关联ID
/// </summary>
public Guid? RelevanceId { get; set; }
/// <summary>
/// 关联Value
/// </summary>
public string RelevanceValue { get; set; }=string.Empty;
/// <summary>
/// 图片数量
/// </summary>
public int ImageCount { get; set; } = 1;
/// <summary>
/// 是否显示
/// </summary>
public ShowQuestion ShowQuestion { get; set; } = ShowQuestion.Show;
/// <summary>
/// 默认值
/// </summary>
public string DefaultValue { get; set; } =string.Empty;
/// <summary>
/// 最大问题数
/// </summary>
public int? MaxQuestionCount { get; set; }
/// <summary>
/// 最大答案长度
/// </summary>
public int? MaxAnswerLength { get; set; }
/// <summary>
/// 文件类型
/// </summary>
public string FileType { get; set; } = string.Empty;
/// <summary>
/// 是否显示在Dicom阅片中
/// </summary>
public bool IsShowInDicom { get; set; } = false;
/// <summary>
/// 序号标记
/// </summary>
public string OrderMark { get; set; } = string.Empty;
/// <summary>
/// 字典code
/// </summary>
public string DictionaryCode { get; set; } = string.Empty;
/// <summary>
/// 问题类型
/// </summary>
public TableQuestionType? QuestionGenre { get; set; }
/// <summary>
/// 数值类型
/// </summary>
public ValueOfType? ValueType { get; set; }
/// <summary>
/// 单位
/// </summary>
public ValueUnit? Unit { get; set; }
/// <summary>
/// 自定义单位
/// </summary>
public string CustomUnit { get; set; } = string.Empty;
/// <summary>
/// 自定义计算标记
/// </summary>
public CustomCalculateMark? CustomCalculateMark { get; set; }
/// <summary>
/// 限制编辑
/// </summary>
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
/// <summary>
/// 限制显示
/// </summary>
public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
/// <summary>
/// 自定义计算标记
/// </summary>
public string CalculateQuestions { get; set; } = "[]";
/// <summary>
/// 数据来源
/// </summary>
public DataSources DataSource { get; set; } = DataSources.ManualEntry;
/// <summary>
/// 问题英文名称
/// </summary>
public string QuestionEnName { get; set; } = string.Empty;
/// <summary>
/// 问题英文分组
/// </summary>
public string GroupEnName { get; set; } = string.Empty;
/// <summary>
/// 分类算法
/// </summary>
public string ClassifyAlgorithms { get; set; } = string.Empty;
/// <summary>
/// 分类问题Id
/// </summary>
public Guid? ClassifyQuestionId { get; set; }
/// <summary>
/// 是否复制病灶
/// </summary>
public bool IsCopyLesions { get; set; } = false;
/// <summary>
/// 分组ID
/// </summary>
public Guid? GroupId { get; set; }
/// <summary>
/// 分组分类
/// </summary>
public GroupClassify? GroupClassify { get; set; }
/// <summary>
/// 问题分类
/// </summary>
public QuestionClassify? QuestionClassify { get; set; }
/// <summary>
/// 高亮问题的答案
/// </summary>
public string HighlightAnswer { get; set; } = "[]";
} }
public class CalculateInfo [NotMapped]
public List<string> RelevanceValueList
{ {
public bool IsTable { get; set; } get
{
try
{
return this.RelevanceValue.Split(',').ToList();
}
catch (Exception)
{
public Guid? QuestionId { get; set; } return new List<string>();
}
}
public Guid? TableQuestionId { get; set; } }
}
[NotMapped]
public List<CalculateInfo> CalculateQuestionList
{
get
{
try
{
var result = JsonConvert.DeserializeObject<List<CalculateInfo>>(this.CalculateQuestions);
return result == null ? new List<CalculateInfo>() : result;
}
catch (Exception)
{
return new List<CalculateInfo>();
}
}
}
[NotMapped]
public List<string> HighlightAnswerList
{
get
{
try
{
var result = JsonConvert.DeserializeObject<List<string>>(this.HighlightAnswer);
return result == null ? new List<string>() : result;
}
catch (Exception)
{
return new List<string>();
}
}
}
#endregion
public bool IsAdditional { get; set; }
/// <summary>
/// 项目标准Id
/// </summary>
public Guid ReadingQuestionCriterionTrialId { get; set; }
/// <summary>
/// 项目Id
/// </summary>
public Guid TrialId { get; set; }
/// <summary>
/// 类型
/// </summary>
public string Type { get; set; } = string.Empty;
/// <summary>
/// 父问题触发
/// </summary>
public string ParentTriggerValue { get; set; } = string.Empty;
/// <summary>
/// 问题名称
/// </summary>
public string QuestionName { get; set; } = string.Empty;
/// <summary>
/// 是否是必须
/// </summary>
public IsRequired IsRequired { get; set; }
/// <summary>
/// 排序
/// </summary>
public int ShowOrder { get; set; }
/// <summary>
/// 父问题ID
/// </summary>
public Guid? ParentId { get; set; }
/// <summary>
/// 类型值
/// </summary>
public string TypeValue { get; set; } = string.Empty;
public bool IsEnable { get; set; }
/// <summary>
/// 是否是裁判问题
/// </summary>
public bool IsJudgeQuestion { get; set; }
/// <summary>
/// 病灶类型
/// </summary>
public LesionType? LesionType { get; set; }
/// <summary>
/// 问题类型
/// </summary>
public QuestionType? QuestionType { get; set; }
/// <summary>
/// 全局阅片显示类型
/// </summary>
public GlobalReadingShowType GlobalReadingShowType { get; set; } = GlobalReadingShowType.NotShow;
/// <summary>
/// 转化显示类型
/// </summary>
public ConvertShowType ConvertShowType { get; set; } = ConvertShowType.All;
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; } = string.Empty;
/// <summary>
/// 分组
/// </summary>
public string GroupName { get; set; } = string.Empty;
/// <summary>
/// 系统问题ID
/// </summary>
public Guid? ReadingQuestionSystemId { get; set; }
/// <summary>
/// 系统标准的ParentId
/// </summary>
public Guid? SystemParentId { get; set; }
/// <summary>
/// 答案分组
/// </summary>
public string AnswerGroup { get; set; } = string.Empty;
/// <summary>
/// 答案组合
/// </summary>
public string AnswerCombination { get; set; } = string.Empty;
/// <summary>
/// 裁判类型
/// </summary>
public JudgeTypeEnum JudgeType { get; set; } = JudgeTypeEnum.AnswerDisaffinity;
/// <summary>
/// 裁判百分比或绝对值的相差值
/// </summary>
public decimal? JudgeDifferenceValue { get; set; }
/// <summary>
/// 裁判百分比或绝对值的相差值匹配规则
/// </summary>
public JudgeDifferenceType JudgeDifferenceType { get; set; }
/// <summary>
/// 标准分页Id
/// </summary>
public Guid? ReadingCriterionPageId { get; set; }
/// <summary>
/// 关联ID
/// </summary>
public Guid? RelevanceId { get; set; }
/// <summary>
/// 关联Value
/// </summary>
public string RelevanceValue { get; set; } = string.Empty;
/// <summary>
/// 图片数量
/// </summary>
public int ImageCount { get; set; } = 1;
/// <summary>
/// 是否显示
/// </summary>
public ShowQuestion ShowQuestion { get; set; } = ShowQuestion.Show;
/// <summary>
/// 默认值
/// </summary>
public string DefaultValue { get; set; } = string.Empty;
/// <summary>
/// 最大问题数
/// </summary>
public int? MaxQuestionCount { get; set; }
/// <summary>
/// 最大答案长度
/// </summary>
public int? MaxAnswerLength { get; set; }
/// <summary>
/// 文件类型
/// </summary>
public string FileType { get; set; } = string.Empty;
/// <summary>
/// 是否显示在Dicom阅片中
/// </summary>
public bool IsShowInDicom { get; set; } = false;
/// <summary>
/// 序号标记
/// </summary>
public string OrderMark { get; set; } = string.Empty;
/// <summary>
/// 字典code
/// </summary>
public string DictionaryCode { get; set; } = string.Empty;
/// <summary>
/// 问题类型
/// </summary>
public TableQuestionType? QuestionGenre { get; set; }
/// <summary>
/// 数值类型
/// </summary>
public ValueOfType? ValueType { get; set; }
/// <summary>
/// 单位
/// </summary>
public ValueUnit? Unit { get; set; }
/// <summary>
/// 自定义单位
/// </summary>
public string CustomUnit { get; set; } = string.Empty;
/// <summary>
/// 自定义计算标记
/// </summary>
public CustomCalculateMark? CustomCalculateMark { get; set; }
/// <summary>
/// 限制编辑
/// </summary>
public LimitEdit LimitEdit { get; set; } = LimitEdit.None;
/// <summary>
/// 限制显示
/// </summary>
public LimitShow LimitShow { get; set; } = LimitShow.AllShow;
/// <summary>
/// 自定义计算标记
/// </summary>
public string CalculateQuestions { get; set; } = "[]";
/// <summary>
/// 数据来源
/// </summary>
public DataSources DataSource { get; set; } = DataSources.ManualEntry;
/// <summary>
/// 问题英文名称
/// </summary>
public string QuestionEnName { get; set; } = string.Empty;
/// <summary>
/// 问题英文分组
/// </summary>
public string GroupEnName { get; set; } = string.Empty;
/// <summary>
/// 分类算法
/// </summary>
public string ClassifyAlgorithms { get; set; } = string.Empty;
/// <summary>
/// 分类问题Id
/// </summary>
public Guid? ClassifyQuestionId { get; set; }
/// <summary>
/// 是否复制病灶
/// </summary>
public bool IsCopyLesions { get; set; } = false;
/// <summary>
/// 分组ID
/// </summary>
public Guid? GroupId { get; set; }
/// <summary>
/// 分组分类
/// </summary>
public GroupClassify? GroupClassify { get; set; }
/// <summary>
/// 问题分类
/// </summary>
public QuestionClassify? QuestionClassify { get; set; }
/// <summary>
/// 高亮问题的答案
/// </summary>
public string HighlightAnswer { get; set; } = "[]";
} }
public class CalculateInfo
{
public bool IsTable { get; set; }
public Guid? QuestionId { get; set; }
public Guid? TableQuestionId { get; set; }
}

View File

@ -3,50 +3,37 @@ using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json; using Newtonsoft.Json;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("系统标准 - 全局配置 (需要同步)")]
[Table("ReadingSystemCriterionDictionary")]
public class ReadingSystemCriterionDictionary : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///ReadingCriterionDictionary
///</summary>
[Table("ReadingSystemCriterionDictionary")]
public class ReadingSystemCriterionDictionary : BaseAddAuditEntity
{
#region µ¼º½ÊôÐÔ
[JsonIgnore] [JsonIgnore]
[ForeignKey("DictionaryId")] [ForeignKey("DictionaryId")]
public Dictionary Dictionary { get; set; } public Dictionary Dictionary { get; set; }
#endregion #endregion
public Guid CriterionId { get; set; } public Guid CriterionId { get; set; }
[Comment("标准字典分组")]
public CrterionDictionaryGroup CrterionDictionaryGroup { get; set; } = CrterionDictionaryGroup.General;
public Guid DictionaryId { get; set; }
public Guid DictionaryId { get; set; } public bool IsBaseLineUse { get; set; }
public bool IsFollowVisitUse { get; set; }
public bool IsSystemCriterion { get; set; }
public string ParentCode { get; set; } = null!;
public bool IsSystemCriterion { get; set; } = false;
public string ParentCode { get; set; } = string.Empty;
public bool IsBaseLineUse { get; set; } = false;
public bool IsFollowVisitUse { get; set; } = false;
/// <summary>
/// ±ê×¼×Öµä·Ö×é
/// </summary>
public CrterionDictionaryGroup CrterionDictionaryGroup { get; set; } = CrterionDictionaryGroup.General;
}
} }

View File

@ -7,41 +7,36 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片标准 - 全局配置")]
[Table("ReadingTrialCriterionDictionary")]
public class ReadingTrialCriterionDictionary : BaseAddAuditEntity
{ {
///<summary>
///ReadingTrialCriterionDictionary
///</summary>
[Table("ReadingTrialCriterionDictionary")]
public class ReadingTrialCriterionDictionary : BaseAddAuditEntity
{
#region 导航属性 #region 导航属性
[JsonIgnore] [JsonIgnore]
[ForeignKey("DictionaryId")] [ForeignKey("DictionaryId")]
public Dictionary Dictionary { get; set; } public Dictionary Dictionary { get; set; }
[ForeignKey("CriterionId")] [ForeignKey("CriterionId")]
[JsonIgnore] [JsonIgnore]
public ReadingQuestionCriterionTrial TrialReadingCriterion { get; set; } public ReadingQuestionCriterionTrial TrialReadingCriterion { get; set; }
#endregion #endregion
public Guid CriterionId { get; set; } public Guid CriterionId { get; set; }
public Guid DictionaryId { get; set; } public CrterionDictionaryGroup CrterionDictionaryGroup { get; set; }
public Guid DictionaryId { get; set; }
public bool IsBaseLineUse { get; set; }
public string ParentCode { get; set; } = string.Empty; public bool IsFollowVisitUse { get; set; }
public bool IsBaseLineUse { get; set; }
public bool IsFollowVisitUse { get; set; }
public CrterionDictionaryGroup CrterionDictionaryGroup { get; set; }
}
public string ParentCode { get; set; } = null!;
} }

View File

@ -7,32 +7,33 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 自定义标记")]
[Table("ReadingCustomTag")]
public class ReadingCustomTag : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///ReadingCustomTag
///</summary>
[Table("ReadingCustomTag")]
public class ReadingCustomTag : BaseAddAuditEntity
{
#region 导航属性
#endregion #endregion
public Guid VisitTaskId { get; set; } public Guid? InstanceId { get; set; }
public Guid? StudyId { get; set; }
public Guid? SeriesId { get; set; } [MaxLength]
public string MeasureData { get; set; } = null!;
public Guid? InstanceId { get; set; } public int? NumberOfFrames { get; set; }
public string MeasureData { get; set; } = string.Empty; public Guid? SeriesId { get; set; }
public int? NumberOfFrames { get; set; } public Guid? StudyId { get; set; }
}
[Comment(" 任务Id")]
public Guid VisitTaskId { get; set; }
} }

View File

@ -3,62 +3,44 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 全局阅片结果")]
[Table("ReadingGlobalTaskInfo")]
public class ReadingGlobalTaskInfo : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// 阅片全局任务信息 [JsonIgnore]
///</summary> [ForeignKey("TaskId")]
[Table("ReadingGlobalTaskInfo")] public VisitTask VisitTask { get; set; }
public class ReadingGlobalTaskInfo : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore]
[ForeignKey("TaskId")]
public VisitTask VisitTask { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("GlobalTaskId")] [ForeignKey("GlobalTaskId")]
public VisitTask GlobalVisitTask { get; set; } public VisitTask GlobalVisitTask { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("QuestionId")] [ForeignKey("QuestionId")]
public ReadingQuestionTrial TrialReadingQuestion { get; set; } public ReadingQuestionTrial TrialReadingQuestion { get; set; }
#endregion #endregion
/// <summary> [StringLength(4000)]
/// 全局任务Id public string Answer { get; set; } = null!;
/// </summary> [Comment("全局答案类型")]
public Guid GlobalTaskId { get; set; } public GlobalAnswerType GlobalAnswerType { get; set; }
[Comment("全局任务Id")]
public Guid GlobalTaskId { get; set; }
/// <summary> public Guid? QuestionId { get; set; }
/// 原任务ID
/// </summary>
public Guid TaskId { get; set; } public Guid SubjectId { get; set; }
[Comment("原任务ID")]
/// <summary> public Guid TaskId { get; set; }
/// 问题ID
/// </summary>
public Guid? QuestionId { get; set; }
/// <summary>
/// 问题答案
/// </summary>
public string Answer { get; set; } = string.Empty;
public Guid TrialId { get; set; }
/// <summary>
/// 全局答案类型
/// </summary>
public GlobalAnswerType GlobalAnswerType { get; set; }
public Guid SubjectId { get; set; }
}
public Guid TrialId { get; set; }
} }

View File

@ -4,43 +4,27 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 产生裁判信息记录")]
[Table("ReadingJudgeInfo")]
public class ReadingJudgeInfo : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///阅片裁判信息
///</summary>
[Table("ReadingJudgeInfo")]
public class ReadingJudgeInfo : BaseAddAuditEntity
{
#region 导航属性
#endregion #endregion
/// <summary> public Guid JudgeTaskId { get; set; }
/// 第一个任务ID
/// </summary>
[Required]
public Guid TaskIdOne { get; set; }
/// <summary> public Guid SubjectId { get; set; }
/// 第二个任务ID
/// </summary>
[Required]
public Guid TaskIdTwo { get; set; }
/// <summary> public Guid TaskIdOne { get; set; }
/// 裁判任务ID
/// </summary>
[Required]
public Guid JudgeTaskId { get; set; }
public Guid TaskIdTwo { get; set; }
public Guid TrialId { get; set; }
public Guid TrialId { get; set; }
public Guid SubjectId { get; set; }
}
} }

View File

@ -7,57 +7,39 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 肿瘤学结果")]
[Table("ReadingOncologyTaskInfo")]
public class ReadingOncologyTaskInfo : BaseAddAuditEntity
{ {
/// <summary> #region 导航属性
/// 阅片肿瘤学 针对访视任务 添加了一个结果
/// </summary>
[Table("ReadingOncologyTaskInfo")]
public class ReadingOncologyTaskInfo : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore] [JsonIgnore]
[ForeignKey("OncologyTaskId")] [ForeignKey("OncologyTaskId")]
public VisitTask OncologyVisitTask { get; set; } public VisitTask OncologyVisitTask { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("VisitTaskId")] [ForeignKey("VisitTaskId")]
public VisitTask VisitTask { get; set; } public VisitTask VisitTask { get; set; }
#endregion #endregion
/// <summary>
/// 肿瘤学 阅片任务ID
/// </summary>
public Guid OncologyTaskId { get; set; }
/// <summary> [StringLength(1000)]
/// 产生肿瘤学阅片任务的 访视类型的阅片任务Id public string EvaluationReason { get; set; } = null!;
/// </summary>
public Guid VisitTaskId { get; set; }
/// <summary> public string EvaluationResult { get; set; } = null!;
/// 结果
/// </summary>
public string EvaluationResult { get; set; } = string.Empty;
/// <summary> public Guid OncologyTaskId { get; set; }
/// 原因
/// </summary>
public string EvaluationReason { get; set; } = string.Empty;
public Guid SubjectId { get; set; }
/// <summary> public Guid TrialId { get; set; }
/// 项目Id
/// </summary>
public Guid TrialId { get; set; }
/// <summary> public Guid VisitTaskId { get; set; }
/// 受试者Id
/// </summary>
public Guid SubjectId { get; set; }
}
} }

View File

@ -9,14 +9,13 @@ using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis; using System.Diagnostics.CodeAnalysis;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models
{ {
///<summary> [Comment("项目阅片 - 表格问题行记录")]
/// 表格问题答案行数据 [Table("ReadingTableAnswerRowInfo")]
///</summary> public class ReadingTableAnswerRowInfo : BaseFullDeleteAuditEntity
[Table("ReadingTableAnswerRowInfo")]
public class ReadingTableAnswerRowInfo : BaseFullDeleteAuditEntity
{ {
#region 导航属性 #region 导航属性
[JsonIgnore] [JsonIgnore]
@ -50,17 +49,17 @@ namespace IRaCIS.Core.Domain.Models
public Guid QuestionId { get; set; } public Guid QuestionId { get; set; }
public Guid VisitTaskId { get; set; } public Guid VisitTaskId { get; set; }
public Guid TrialId { get; set; } public Guid TrialId { get; set; }
public Guid? InstanceId { get; set; } public Guid? InstanceId { get; set; }
public Guid? SeriesId { get; set; } public Guid? SeriesId { get; set; }
public Guid? StudyId { get; set; } public Guid? StudyId { get; set; }
public Guid? OtherInstanceId { get; set; } public Guid? OtherInstanceId { get; set; }
@ -68,7 +67,7 @@ namespace IRaCIS.Core.Domain.Models
public Guid? OtherStudyId { get; set; } public Guid? OtherStudyId { get; set; }
public string OtherMarkTool { get; set; } = string.Empty; public string OtherMarkTool { get; set; } = string.Empty;
public string OtherPicturePath { get; set; } = string.Empty; public string OtherPicturePath { get; set; } = string.Empty;
@ -77,64 +76,64 @@ namespace IRaCIS.Core.Domain.Models
public bool IsCanEditPosition { get; set; } = false; public bool IsCanEditPosition { get; set; } = false;
/// <summary> /// <summary>
/// 是Dicom阅片 /// 是Dicom阅片
/// </summary> /// </summary>
public bool IsDicomReading { get; set; } = true; public bool IsDicomReading { get; set; } = true;
public decimal RowIndex { get; set; } public decimal RowIndex { get; set; }
public string MeasureData { get; set; } = string.Empty; public string MeasureData { get; set; } = string.Empty;
/// <summary> /// <summary>
/// 是否是当前任务添加 /// 是否是当前任务添加
/// </summary> /// </summary>
public bool IsCurrentTaskAdd { get; set; } = false; public bool IsCurrentTaskAdd { get; set; } = false;
public Guid? SplitRowId { get; set; } public Guid? SplitRowId { get; set; }
public Guid? MergeRowId { get; set; } public Guid? MergeRowId { get; set; }
public string BlindName { get; set; } = string.Empty; public string BlindName { get; set; } = string.Empty;
public string OrderMark { get; set; } = string.Empty; public string OrderMark { get; set; } = string.Empty;
/// <summary> /// <summary>
/// 截图地址 /// 截图地址
/// </summary> /// </summary>
public string PicturePath { get; set; } = string.Empty; public string PicturePath { get; set; } = string.Empty;
/// <summary> /// <summary>
/// 第一次添加的任务ID /// 第一次添加的任务ID
/// </summary> /// </summary>
public decimal FristAddTaskNum { get; set; } = 0; public decimal FristAddTaskNum { get; set; } = 0;
/// <summary> /// <summary>
/// 首次添加任务ID /// 首次添加任务ID
/// </summary> /// </summary>
public Guid FristAddTaskId { get; set; } public Guid FristAddTaskId { get; set; }
/// <summary> /// <summary>
/// 融合的PTSeriesId /// 融合的PTSeriesId
/// </summary> /// </summary>
public Guid? PTSeriesId { get; set; } public Guid? PTSeriesId { get; set; }
/// <summary> /// <summary>
/// 融合的CTSeriesId /// 融合的CTSeriesId
/// </summary> /// </summary>
public Guid? CTSeriesId { get; set; } public Guid? CTSeriesId { get; set; }
public SplitOrMergeType? SplitOrMergeType { get; set; } public SplitOrMergeType? SplitOrMergeType { get; set; }
public int? NumberOfFrames { get; set; } public int? NumberOfFrames { get; set; }
/// <summary> /// <summary>
/// 器官Id /// 器官Id
/// </summary> /// </summary>
public Guid? OrganInfoId { get; set; } public Guid? OrganInfoId { get; set; }
/// <summary> /// <summary>
@ -142,19 +141,19 @@ namespace IRaCIS.Core.Domain.Models
/// </summary> /// </summary>
public decimal? WW { get; set; } public decimal? WW { get; set; }
/// <summary> /// <summary>
/// 窗位WL /// 窗位WL
/// </summary> /// </summary>
public decimal? WL { get; set; } public decimal? WL { get; set; }
/// <summary> /// <summary>
/// 来自于哪个标记 /// 来自于哪个标记
/// </summary> /// </summary>
public string FromMark { get; set; } = string.Empty; public string FromMark { get; set; } = string.Empty;
/// <summary> /// <summary>
/// 报告页面显示来自于哪个标记 /// 报告页面显示来自于哪个标记
/// </summary> /// </summary>
public string ReportMark { get; set; } = string.Empty; public string ReportMark { get; set; } = string.Empty;
@ -162,13 +161,13 @@ namespace IRaCIS.Core.Domain.Models
public string OtherMeasureData { get; set; } = string.Empty; public string OtherMeasureData { get; set; } = string.Empty;
//病灶编号 //病灶编号
public string RowMark { get; set; } = string.Empty; public string RowMark { get; set; } = string.Empty;
/// <summary> /// <summary>
/// 标记工具 /// 标记工具
/// </summary> /// </summary>
public string MarkTool { get; set; } = string.Empty; public string MarkTool { get; set; } = string.Empty;

View File

@ -7,62 +7,62 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 表格问题行记录子项答案")]
[Table("ReadingTableQuestionAnswer")]
public class ReadingTableQuestionAnswer : BaseFullDeleteAuditEntity
{ {
///<summary> #region 导航属性
///ReadingTableQuestionAnswer [JsonIgnore]
///</summary> [ForeignKey("RowId")]
[Table("ReadingTableQuestionAnswer")]
public class ReadingTableQuestionAnswer : BaseFullDeleteAuditEntity
{
#region 导航属性
[JsonIgnore]
[ForeignKey("RowId")]
public ReadingTableAnswerRowInfo Lesion { get; set; } public ReadingTableAnswerRowInfo Lesion { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("QuestionId")] [ForeignKey("QuestionId")]
public ReadingQuestionTrial ReadingQuestionTrial { get; set; } public ReadingQuestionTrial ReadingQuestionTrial { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("TableQuestionId")] [ForeignKey("TableQuestionId")]
public ReadingTableQuestionTrial ReadingTableQuestionTrial { get; set; } public ReadingTableQuestionTrial ReadingTableQuestionTrial { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("VisitTaskId")] [ForeignKey("VisitTaskId")]
public VisitTask VisitTask { get; set; } public VisitTask VisitTask { get; set; }
#endregion #endregion
public Guid QuestionId { get; set; } [Comment(" 答案")]
[MaxLength]
public string Answer { get; set; } = null!;
/// <summary> [Comment(" 问题Id")]
/// 表格问题Id public Guid QuestionId { get; set; }
/// </summary>
public Guid TableQuestionId { get; set; }
public Guid VisitTaskId { get; set; } public Guid RowId { get; set; }
public Guid TrialId { get; set; } [Comment(" 行号")]
[DecimalPrecision(18, 2)]
public decimal RowIndex { get; set; }
public Guid TableQuestionId { get; set; }
public decimal RowIndex { get; set; } [Comment(" 项目Id")]
public Guid TrialId { get; set; }
public string Answer { get; set; } = string.Empty; [Comment(" 任务Id")]
public Guid VisitTaskId { get; set; }
public Guid RowId { get; set; }
}
} }

View File

@ -5,68 +5,45 @@ using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 问题答案")]
[Table("ReadingTaskQuestionAnswer")]
public class ReadingTaskQuestionAnswer : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// 阅片任务答案
///</summary>
[Table("ReadingTaskQuestionAnswer")]
public class ReadingTaskQuestionAnswer : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore] [JsonIgnore]
[ForeignKey("VisitTaskId")] [ForeignKey("VisitTaskId")]
public VisitTask VisitTask { get; set; } public VisitTask VisitTask { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("ReadingQuestionTrialId")] [ForeignKey("ReadingQuestionTrialId")]
public ReadingQuestionTrial ReadingQuestionTrial { get; set; } public ReadingQuestionTrial ReadingQuestionTrial { get; set; }
#endregion #endregion
/// <summary> [MaxLength]
/// 项目问题Id public string Answer { get; set; } = null!;
/// </summary>
public Guid ReadingQuestionTrialId { get; set; }
/// <summary> [Comment("全局阅片修改的答案")]
/// 项目问题标准Id [StringLength(400)]
/// </summary> public string GlobalChangeAnswer { get; set; } = null!;
public Guid ReadingQuestionCriterionTrialId { get; set; }
public Guid TrialId { get; set; } [Comment("全局阅片是否修改")]
public bool IsGlobalChange { get; set; }
public Guid SubjectId { get; set; }
public Guid VisitTaskId { get; set; }
/// <summary>
/// 答案
/// </summary>
public string Answer { get; set; } = string.Empty;
/// <summary>
/// 全局阅片修改的答案
/// </summary>
public string GlobalChangeAnswer { get; set; } = string.Empty;
/// <summary>
/// 全局阅片是否修改
/// </summary>
public bool IsGlobalChange { get; set; } = false;
}
public Guid ReadingQuestionCriterionTrialId { get; set; }
public Guid ReadingQuestionTrialId { get; set; }
public Guid SubjectId { get; set; }
public Guid TrialId { get; set; }
public Guid VisitTaskId { get; set; }
} }

View File

@ -7,68 +7,79 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
///<summary>
///
///</summary>
[Table("ReadingTaskQuestionMark")]
public class ReadingTaskQuestionMark : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// [JsonIgnore]
///</summary> [ForeignKey("QuestionId")]
[Table("ReadingTaskQuestionMark")] public ReadingQuestionTrial ReadingQuestionTrial { get; set; }
public class ReadingTaskQuestionMark : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore]
[ForeignKey("QuestionId")]
public ReadingQuestionTrial ReadingQuestionTrial { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("VisitTaskId")] [ForeignKey("VisitTaskId")]
public VisitTask VisitTask { get; set; } public VisitTask VisitTask { get; set; }
#endregion #endregion
public Guid VisitTaskId { get; set; } public Guid? FirstAddTaskId { get; set; }
public Guid QuestionId { get; set; } public Guid? InstanceId { get; set; }
public Guid? InstanceId { get; set; } [StringLength(1000)]
public string MarkTool { get; set; } = null!;
public Guid? SeriesId { get; set; }
public Guid? StudyId { get; set; } [MaxLength]
public string MeasureData { get; set; } = null!;
public int? NumberOfFrames { get; set; }
public string OrderMarkName { get; set; } = null!;
public Guid? OtherInstanceId { get; set; }
public string MarkTool { get; set; } = string.Empty; [MaxLength]
public string OtherMarkTool { get; set; } = null!;
public string PicturePath { get; set; } = string.Empty;
public int? NumberOfFrames { get; set; }
public string MeasureData { get; set; } = string.Empty;
public Guid? FirstAddTaskId { get; set; } [MaxLength]
public string OtherMeasureData { get; set; } = null!;
public QuestionType? QuestionType { get; set; } public int? OtherNumberOfFrames { get; set; }
public string OrderMarkName { get; set; } = string.Empty; [MaxLength]
public string OtherPicturePath { get; set; } = null!;
public Guid? OtherInstanceId { get; set; } public Guid? OtherSeriesId { get; set; }
public Guid? OtherSeriesId { get; set; } public Guid? OtherStudyId { get; set; }
public Guid? OtherStudyId { get; set; }
public string OtherMarkTool { get; set; } = string.Empty;
public string OtherPicturePath { get; set; } = string.Empty;
public int? OtherNumberOfFrames { get; set; }
public string OtherMeasureData { get; set; } = string.Empty;
} [MaxLength]
public string PicturePath { get; set; } = null!;
[Comment(" 问题Id")]
public Guid QuestionId { get; set; }
public QuestionType? QuestionType { get; set; }
public Guid? SeriesId { get; set; }
public Guid? StudyId { get; set; }
[Comment(" 任务Id")]
public Guid VisitTaskId { get; set; }
} }

View File

@ -7,40 +7,29 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 任务关联")]
[Table("ReadingTaskRelation")]
public class ReadingTaskRelation : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///任务关系表
///</summary>
[Table("ReadingTaskRelation")]
public class ReadingTaskRelation : BaseAddAuditEntity
{
#region 导航属性
[ForeignKey("TaskId")] [ForeignKey("TaskId")]
[JsonIgnore] [JsonIgnore]
public VisitTask VisitTask { get; set; } public VisitTask VisitTask { get; set; }
#endregion #endregion
/// <summary> public Guid RelevanceTaskId { get; set; }
/// 任务ID
/// </summary>
public Guid TaskId { get; set; }
/// <summary> public RelevanceType RelevanceType { get; set; }
/// 关联的任务ID
/// </summary>
public Guid RelevanceTaskId { get; set; }
/// <summary> public Guid TaskId { get; set; }
/// 类型具体解释 看枚举
/// </summary>
public RelevanceType RelevanceType { get; set; }
}
} }

View File

@ -5,119 +5,100 @@ using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("受试者 - 阅片模块")]
[Table("ReadModule")]
public class ReadModule : BaseFullDeleteAuditEntity
{ {
///<summary> #region 导航属性
///读片模块
///</summary>
[Table("ReadModule")]
public class ReadModule : BaseFullDeleteAuditEntity
{
#region 导航属性
[JsonIgnore] [JsonIgnore]
/// <summary> /// <summary>
/// 受试者 /// 受试者
/// </summary> /// </summary>
[ForeignKey("SubjectId")] [ForeignKey("SubjectId")]
public Subject Subject { get; set; } public Subject Subject { get; set; }
[JsonIgnore] [JsonIgnore]
/// <summary> /// <summary>
/// 阅片期配置 /// 阅片期配置
/// </summary> /// </summary>
[ForeignKey("ReadingPeriodSetId")] [ForeignKey("ReadingPeriodSetId")]
public ReadingPeriodSet ReadingPeriodSet { get; set; } public ReadingPeriodSet ReadingPeriodSet { get; set; }
[JsonIgnore] [JsonIgnore]
/// <summary> /// <summary>
/// 访视 /// 访视
/// </summary> /// </summary>
[ForeignKey("SubjectVisitId")] [ForeignKey("SubjectVisitId")]
public SubjectVisit SubjectVisit { get; set; } public SubjectVisit SubjectVisit { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("TrialId")] [ForeignKey("TrialId")]
public Trial Trial { get; set; } public Trial Trial { get; set; }
[JsonIgnore] [JsonIgnore]
public List<ReadModuleCriterionFrom> ReadModuleCriterionFromList { get; set; } = new List<ReadModuleCriterionFrom>(); public List<ReadModuleCriterionFrom> ReadModuleCriterionFromList { get; set; } = new List<ReadModuleCriterionFrom>();
[JsonIgnore] [JsonIgnore]
public List<VisitTask> ModuleTaskList { get; set; } public List<VisitTask> ModuleTaskList { get; set; }
[JsonIgnore] [JsonIgnore]
public ReadingQuestionCriterionTrial TrialReadingCriterion { get; set; } public ReadingQuestionCriterionTrial TrialReadingCriterion { get; set; }
[JsonIgnore] [JsonIgnore]
public List<ReadingClinicalData> ReadingClinicalDataList { get; set; } public List<ReadingClinicalData> ReadingClinicalDataList { get; set; }
#endregion #endregion
public bool? IsClinicalDataBlind { get; set; }
public Guid SubjectId { get; set; } [Comment("临床数据是否完整")]
public bool? IsClinicalDataComplete { get; set; }
public Guid TrialReadingCriterionId { get; set; } [Comment("CRC是否正在申请撤回")]
public bool IsCRCApplicationRevoke { get; set; }
/// <summary> public bool IsCRCConfirm { get; set; }
/// 模块类型
/// </summary>
public ModuleTypeEnum ModuleType { get; set; }
/// <summary> public bool IsNotNeedPMConfirm { get; set; }
/// 模块名称
/// </summary>
public string ModuleName { get; set; } = string.Empty;
/// <summary> public bool IsPMConfirm { get; set; }
/// 是否加急
/// </summary>
public bool? IsUrgent { get; set; }
public Guid SubjectVisitId { get; set; } [Comment(" 是否加急")]
public bool? IsUrgent { get; set; }
public Guid? LastVisitIdSetId { get; set; }
/// <summary> [Comment(" 模块名称")]
/// 阅片计划ID public string ModuleName { get; set; } = null!;
/// </summary>
public Guid? ReadingPeriodSetId { get; set; }
public Guid TrialId { get; set; } [Comment(" 模块类型")]
public ModuleTypeEnum ModuleType { get; set; }
public Guid? ReadingPeriodSetId { get; set; }
public bool IsCRCConfirm { get; set; } = false; public ReadingSetType ReadingSetType { get; set; }
public bool IsPMConfirm { get; set; } = false; public ReadingStatusEnum ReadingStatus { get; set; } = ReadingStatusEnum.TaskAllocate;
public bool IsNotNeedPMConfirm { get; set; } = false; public Guid? ReadModuleId { get; set; }
/// <summary> [Comment(" 状态")]
/// CRC是否正在申请撤回 public int Status { get; set; }
/// </summary>
public bool IsCRCApplicationRevoke { get; set; } = false;
[Comment(" 受试者ID")]
public Guid SubjectId { get; set; }
/// <summary> [Comment(" 访视ID")]
/// 临床数据是否完整 public Guid SubjectVisitId { get; set; }
/// </summary>
public bool? IsClinicalDataComplete { get; set; }
/// <summary>
/// 临床数据是否盲化
/// </summary>
public bool? IsClinicalDataBlind { get; set; }
/// <summary>
/// 阅片配置的类型
/// </summary>
public ReadingSetType ReadingSetType { get; set; }
public ReadingStatusEnum ReadingStatus { get; set; } = ReadingStatusEnum.TaskAllocate;
}
public Guid TrialId { get; set; }
public Guid TrialReadingCriterionId { get; set; }
} }

View File

@ -4,46 +4,38 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目 - 阅片期计划")]
[Table("ReadingPeriodPlan")]
public class ReadingPeriodPlan : BaseFullDeleteAuditEntity
{ {
///<summary> #region 导航属性
/// 阅片计划 // <summary>
///</summary> /// 访视
[Table("ReadingPeriodPlan")] /// </summary>
public class ReadingPeriodPlan : BaseFullDeleteAuditEntity [ForeignKey("SubjectVisitId")]
{ [JsonIgnore]
#region 导航属性 public SubjectVisit SubjectVisit { get; set; }
// <summary>
/// 访视
/// </summary>
[ForeignKey("SubjectVisitId")]
[JsonIgnore]
public SubjectVisit SubjectVisit { get; set; }
/// <summary> /// <summary>
/// 阅片期配置 /// 阅片期配置
/// </summary> /// </summary>
[ForeignKey("ReadingPeriodSetId")] [ForeignKey("ReadingPeriodSetId")]
[JsonIgnore] [JsonIgnore]
public ReadingPeriodSet ReadingPeriodSet { get; set; } public ReadingPeriodSet ReadingPeriodSet { get; set; }
#endregion #endregion
/// <summary>
/// 阅片期配置ID
/// </summary>
public Guid ReadingPeriodSetId { get; set; }
/// <summary> [Comment(" 阅片期配置ID")]
/// 访视 public Guid ReadingPeriodSetId { get; set; }
/// </summary>
public Guid SubjectVisitId { get; set; } [Comment(" 访视Id")]
public Guid SubjectVisitId { get; set; }
}
} }

View File

@ -5,15 +5,14 @@ using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using System.Collections.Generic; using System.Collections.Generic;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models
{ {
///<summary> [Comment("项目 - 阅片期配置")]
///阅片期设置 只会设计到所有人 或者某个Site 针对全局 [Table("ReadingPeriodSet")]
///</summary> public class ReadingPeriodSet : BaseFullDeleteAuditEntity
[Table("ReadingPeriodSet")] {
public class ReadingPeriodSet : BaseFullDeleteAuditEntity
{
#region 导航属性 #region 导航属性
[JsonIgnore] [JsonIgnore]
public List<ReadingPeriodSite> ReadingPeriodSites { get; set; } = new List<ReadingPeriodSite>(); public List<ReadingPeriodSite> ReadingPeriodSites { get; set; } = new List<ReadingPeriodSite>();
@ -31,61 +30,35 @@ namespace IRaCIS.Core.Domain.Models
public List<ReadingPeriodPlan> ReadingPeriodPlanList { get; set; } = new List<ReadingPeriodPlan>(); public List<ReadingPeriodPlan> ReadingPeriodPlanList { get; set; } = new List<ReadingPeriodPlan>();
#endregion #endregion
[Comment("生效时间")]
public DateTime? EffectOfTime { get; set; }
[Comment("")]
public DateTime? ExpirationDate { get; set; }
[Comment("截止访视")]
[DecimalPrecision(18, 0)]
public decimal? ExpirationVisitNum { get; set; }
public bool IsGlobal { get; set; }
public ReadingPeriodStatus IsTakeEffect { get; set; }
[StringLength(400)]
public string ReadingPeriodName { get; set; } = null!;
[Comment("阅片范围")]
public ReadingScopeEnum ReadingScope { get; set; }
[Comment("阅片配置的类型")]
public ReadingSetType ReadingSetType { get; set; }
public Guid? SiteId { get; set; }
public Guid TrialId { get; set; } public Guid TrialId { get; set; }
public Guid TrialReadingCriterionId { get; set; } public Guid TrialReadingCriterionId { get; set; }
/// <summary> public Guid? VisitStageId { get; set; }
/// 阅片期名称
/// </summary>
public string ReadingPeriodName { get; set; } = string.Empty;
/// <summary>
/// 阅片范围
/// </summary>
public ReadingScopeEnum ReadingScope { get; set; }
/// <summary>
/// 截止日期
/// </summary>
public DateTime? ExpirationDate { get; set; }
/// <summary>
/// 截止访视
/// </summary>
public decimal? ExpirationVisitNum { get; set; }
/// <summary>
/// 访视计划ID
/// </summary>
public Guid? VisitStageId { get; set; }
/// <summary> }
/// 是否生效
/// </summary>
public ReadingPeriodStatus IsTakeEffect { get; set; }
/// <summary>
/// 生效时间
/// </summary>
public DateTime? EffectOfTime { get; set; }
/// <summary>
/// 是否为全局阅片
/// </summary>
public bool IsGlobal { get; set; }
/// <summary>
/// 阅片配置的类型
/// </summary>
public ReadingSetType ReadingSetType { get; set; }
}
} }

View File

@ -4,38 +4,28 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("阅片期和中心关联")]
[Table("ReadingPeriodSite")]
public class ReadingPeriodSite : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
/// 阅片期和中心关联 [JsonIgnore]
///</summary> public TrialSite TrialSite { get; set; }
[Table("ReadingPeriodSite")]
public class ReadingPeriodSite : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore]
public TrialSite TrialSite { get; set; }
[JsonIgnore] [JsonIgnore]
public ReadingPeriodSet ReadingPeriodSet { get; set; } public ReadingPeriodSet ReadingPeriodSet { get; set; }
#endregion #endregion
/// <summary>
///阅片期配置ID
/// </summary>
public Guid ReadingPeriodSetId { get; set; }
public Guid TrialId { get; set; }
public Guid TrialSiteId { get; set; }
}
[Comment(" 阅片期配置ID")]
public Guid ReadingPeriodSetId { get; set; }
public Guid TrialId { get; set; }
public Guid TrialSiteId { get; set; }

View File

@ -7,48 +7,38 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("用户配置 - 快捷键")]
[Table("ShortcutKey")]
public class ShortcutKey : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///ShortcutKey
///</summary>
[Table("ShortcutKey")]
public class ShortcutKey : BaseAddAuditEntity
{
#region 导航属性
#endregion #endregion
/// <summary> public bool AltKey { get; set; }
/// 对应的键盘按键
/// </summary>
public string Keyboardkey { get; set; } = string.Empty;
/// <summary> public string Code { get; set; } = null!;
/// 按键枚举
/// </summary>
public int ShortcutKeyEnum { get; set; }
/// <summary> public bool CtrlKey { get; set; }
/// 影像工具类型
/// </summary>
public int ImageToolType { get; set; }
[Comment("影像工具类型")]
public int ImageToolType { get; set; }
public Guid UserId { get; set; } public string Keyboardkey { get; set; } = null!;
public bool AltKey { get; set; } = false; public bool MetaKey { get; set; }
public bool CtrlKey { get; set; } = false; public bool ShiftKey { get; set; }
[Comment("按键枚举")]
public int ShortcutKeyEnum { get; set; }
public bool ShiftKey { get; set; } = false; public string Text { get; set; } = null!;
public bool MetaKey { get; set; } = false;
public string Text { get; set; } = string.Empty;
public string Code { get; set; } = string.Empty;
}
public Guid UserId { get; set; }
} }

View File

@ -1,70 +1,93 @@
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("医生 - 入组项目中间记录表")]
[Table("Enroll")]
public partial class Enroll : BaseFullAuditEntity
{ {
[Table("Enroll")] #region 导航属性
public partial class Enroll : BaseFullAuditEntity [JsonIgnore]
{ [ForeignKey("TrialId")]
#region 导航属性 public virtual Trial Trial { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("TrialId")] public virtual Doctor Doctor { get; set; }
public virtual Trial Trial { get; set; } [JsonIgnore]
[JsonIgnore] public User DoctorUser { get; set; }
public virtual Doctor Doctor { get; set; }
[JsonIgnore]
public User DoctorUser { get; set; }
[JsonIgnore] [JsonIgnore]
public List<EnrollReadingCategory> EnrollReadingCategoryList { get; set; } public List<EnrollReadingCategory> EnrollReadingCategoryList { get; set; }
[JsonIgnore] [JsonIgnore]
public List<EnrollReadingCriterion> EnrollReadingCriteriaList { get; set; } public List<EnrollReadingCriterion> EnrollReadingCriteriaList { get; set; }
#endregion #endregion
public Guid DoctorId { get; set; } [Comment(" 裁定")]
public Guid TrialId { get; set; } public int? Adjudication { get; set; }
public Guid AttachmentId { get; set; } = Guid.Empty;
public EnrollStatus EnrollStatus { get; set; }
public decimal? AdjustmentMultiple { get; set; } [Comment(" 裁定24小时")]
public DateTime? EnrollTime { get; set; } public int? Adjudication24H { get; set; }
public DateTime? OutEnrollTime { get; set; }
public string Memo { get; set; } = string.Empty; [Comment(" 裁定48小时")]
public int? Adjudication48H { get; set; }
public int ReviewerReadingType { get; set; } = 0; [Comment(" 价格")]
[DecimalPrecision(18, 2)]
public decimal? AdjustmentMultiple { get; set; }
public int? Training { get; set; } public Guid? AttachmentId { get; set; }
public int? RefresherTraining { get; set; } public Guid DoctorId { get; set; }
public int? Timepoint { get; set; } public int DoctorTrialState { get; set; }
public int? Timepoint48H { get; set; } [Comment(" 生成账号 加入到项目中后 赋值")]
public Guid? DoctorUserId { get; set; }
public int? Timepoint24H { get; set; } [Comment(" 空跑")]
public int? Downtime { get; set; }
public int? Adjudication { get; set; } [Comment(" 入组状态")]
public EnrollStatus EnrollStatus { get; set; }
public int? Adjudication48H { get; set; } [Comment(" 入组时间")]
public DateTime? EnrollTime { get; set; }
public int? Adjudication24H { get; set; } [Comment(" 总体")]
public int? Global { get; set; }
public int? Global { get; set; } [StringLength(500)]
public string Memo { get; set; } = null!;
public int? Downtime { get; set; } [Comment(" 出组时间")]
public DateTime? OutEnrollTime { get; set; }
[Comment(" 重新培训")]
public int? RefresherTraining { get; set; }
[Comment(" 0代表裁判和TP都可以 1代表Tp 2 代表裁判")]
public int ReviewerReadingType { get; set; }
[Comment(" 时间点")]
public int? Timepoint { get; set; }
[Comment(" 时间点24小时")]
public int? Timepoint24H { get; set; }
[Comment(" 时间点48小时")]
public int? Timepoint48H { get; set; }
[Comment(" 培训")]
public int? Training { get; set; }
public Guid TrialId { get; set; }
/// <summary>
/// 生成账号 加入到项目中后 赋值
/// </summary>
public Guid? DoctorUserId { get; set; }
}
} }

View File

@ -1,30 +1,37 @@
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using Microsoft.EntityFrameworkCore;
using System; using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("医生 - 入组项目流程记录表")]
[Table("EnrollDetail")]
public partial class EnrollDetail : BaseAddAuditEntity
{ {
[Table("EnrollDetail")] #region 导航属性
public partial class EnrollDetail : BaseAddAuditEntity [JsonIgnore]
{ public virtual TrialStatusDetail TrialDetail { get; set; }
#region µ¼º½ÊôÐÔ [JsonIgnore]
[JsonIgnore] public Doctor Doctor { get; set; }
public virtual TrialStatusDetail TrialDetail { get; set; } #endregion
[JsonIgnore]
public Doctor Doctor { get; set; }
#endregion
public Guid DoctorId { get; set; } public Guid DoctorId { get; set; }
public Guid TrialId { get; set; }
public EnrollStatus EnrollStatus { get; set; } public Guid? EnrollId { get; set; }
public Guid? EnrollId { get; set; }
public string Memo { get; set; } = string.Empty; public EnrollStatus EnrollStatus { get; set; }
public int OptUserType { get; set; }
[StringLength(1024)]
public string Memo { get; set; } = null!;
public int OptUserType { get; set; }
public Guid TrialDetailId { get; set; }
public Guid TrialId { get; set; }
public Guid TrialDetailId { get; set; }
}
} }

View File

@ -7,30 +7,27 @@ using System;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
namespace IRaCIS.Core.Domain.Models using Microsoft.EntityFrameworkCore;
namespace IRaCIS.Core.Domain.Models;
[Comment("医生 - 项目阅片标准阅片类型配置表")]
[Table("EnrollReadingCategory")]
public class EnrollReadingCategory : BaseAddAuditEntity
{ {
///<summary> #region 导航属性
///EnrollReadingCategory
///</summary>
[Table("EnrollReadingCategory")]
public class EnrollReadingCategory : BaseAddAuditEntity
{
#region 导航属性
[JsonIgnore] [JsonIgnore]
[ForeignKey("EnrollId")] [ForeignKey("EnrollId")]
public Enroll Enroll { get; set; } public Enroll Enroll { get; set; }
#endregion #endregion
public Guid EnrollId { get; set; } public Guid EnrollId { get; set; }
public ReadingCategory ReadingCategory { get; set; } public ReadingCategory ReadingCategory { get; set; }
public Guid TrialReadingCriterionId { get; set; } public Guid TrialReadingCriterionId { get; set; }
}
} }

View File

@ -1,121 +1,133 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json; using Newtonsoft.Json;
namespace IRaCIS.Core.Domain.Models namespace IRaCIS.Core.Domain.Models;
[Comment("项目 - 受试者")]
[Table("Subject")]
public class Subject : BaseFullDeleteAuditEntity
{ {
/// <summary> #region 导航属性
/// 受试者 [JsonIgnore]
/// </summary> public List<TaskStudy> TaskStudyList { get; set; } = new List<TaskStudy>();
[Table("Subject")]
public class Subject : BaseFullDeleteAuditEntity
{
#region 导航属性
[JsonIgnore]
public List<TaskStudy> TaskStudyList { get; set; } = new List<TaskStudy>();
[JsonIgnore] [JsonIgnore]
public List<SubjectVisit> SubjectVisitList { get; set; } = new List<SubjectVisit>(); public List<SubjectVisit> SubjectVisitList { get; set; } = new List<SubjectVisit>();
[JsonIgnore] [JsonIgnore]
public List<SubjectUser> SubjectDoctorList { get; set; } = new List<SubjectUser>(); public List<SubjectUser> SubjectDoctorList { get; set; } = new List<SubjectUser>();
[JsonIgnore] [JsonIgnore]
public List<VisitTask> SubjectVisitTaskList { get; set; } = new List<VisitTask>(); public List<VisitTask> SubjectVisitTaskList { get; set; } = new List<VisitTask>();
[JsonIgnore] [JsonIgnore]
public List<ReadModule> ReadModuleList { get; set; } public List<ReadModule> ReadModuleList { get; set; }
[JsonIgnore] [JsonIgnore]
public List<SubjectCanceDoctor> SubjectCanceDoctorList { get; set; } public List<SubjectCanceDoctor> SubjectCanceDoctorList { get; set; }
[JsonIgnore] [JsonIgnore]
public List<ReadingClinicalData> ClinicalDataList { get; set; } public List<ReadingClinicalData> ClinicalDataList { get; set; }
[JsonIgnore] [JsonIgnore]
public List<SubjectCriteriaEvaluation> SubjectCriteriaEvaluationList { get; set; } public List<SubjectCriteriaEvaluation> SubjectCriteriaEvaluationList { get; set; }
[JsonIgnore] [JsonIgnore]
public List<SubjectCriteriaEvaluationVisitFilter> SubjectCriteriaEvaluationVisitFilterList { get; set; } public List<SubjectCriteriaEvaluationVisitFilter> SubjectCriteriaEvaluationVisitFilterList { get; set; }
[JsonIgnore] [JsonIgnore]
public List<SubjectAdditionalEvaluationResult> SubjectAdditionalEvaluationResult { get; set; } public List<SubjectAdditionalEvaluationResult> SubjectAdditionalEvaluationResult { get; set; }
[JsonIgnore] [JsonIgnore]
public List<ReadingTaskQuestionAnswer> ReadingTaskQuestionAnswerList { get; set; } public List<ReadingTaskQuestionAnswer> ReadingTaskQuestionAnswerList { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("FinalSubjectVisitId")] [ForeignKey("FinalSubjectVisitId")]
public SubjectVisit FinalSubjectVisit { get; set; } public SubjectVisit FinalSubjectVisit { get; set; }
[JsonIgnore] [JsonIgnore]
[ForeignKey("TrialId")] [ForeignKey("TrialId")]
public Trial Trial { get; set; } public Trial Trial { get; set; }
[JsonIgnore] [JsonIgnore]
public TrialSite TrialSite { get; set; } public TrialSite TrialSite { get; set; }
[JsonIgnore] [JsonIgnore]
public List<DicomStudy> StudyList { get; set; } = new List<DicomStudy>(); public List<DicomStudy> StudyList { get; set; } = new List<DicomStudy>();
[JsonIgnore] [JsonIgnore]
[ForeignKey("LatestSubjectVisitId")] [ForeignKey("LatestSubjectVisitId")]
public SubjectVisit LatestSubjectVisit { get; set; } public SubjectVisit LatestSubjectVisit { get; set; }
[JsonIgnore] [JsonIgnore]
public List<ClinicalForm> ClinicalFormList { get; set; } public List<ClinicalForm> ClinicalFormList { get; set; }
#endregion #endregion
public Guid? FinalSubjectVisitId { get; set; } public int? Age { get; set; }
public DateTime? BirthDate { get; set; }
[StringLength(400)]
public string Code { get; set; } = null!;
public Guid? FinalSubjectVisitId { get; set; }
public DateTime? FirstGiveMedicineTime { get; set; }
[StringLength(400)]
public string FirstName { get; set; } = null!;
public string Height { get; set; } = null!;
public bool IsEnrollment { get; set; }
public bool IsEnrollmentConfirm { get; set; }
public bool IsMissingImages { get; set; }
public bool IsReReadingOrBackInfluenceAnalysis { get; set; }
public bool IsUrgent { get; set; }
[StringLength(400)]
public string LastName { get; set; } = null!;
[Comment(" 最新受试者访视")]
public Guid? LatestSubjectVisitId { get; set; }
[StringLength(400)]
public string MedicalNo { get; set; } = null!;
public Guid TrialSiteId { get; set; } public DateTime? OutEnrollmentTime { get; set; }
public string Code { get; set; } = string.Empty; [Comment(" 出组原因")]
public string FirstName { get; set; } = string.Empty;
public string LastName { get; set; } = string.Empty; [MaxLength]
public int? Age { get; set; } public string? Reason { get; set; }
public string Sex { get; set; } = string.Empty;
[StringLength(400)]
public string Sex { get; set; } = null!;
[Comment(" 受试者名称缩写")]
public string ShortName { get; set; } = null!;
[Comment(" 知情同意书签署日期")]
public DateTime? SignDate { get; set; }
public SubjectStatus Status { get; set; } = SubjectStatus.OnVisit;
public Guid TrialId { get; set; }
public Guid TrialSiteId { get; set; }
public DateTime? VisitOverTime { get; set; }
[StringLength(400)]
public string Weight { get; set; } = null!;
public Guid? LatestSubjectVisitId { get; set; }
public Guid TrialId { get; set; } = Guid.Empty;
public string MedicalNo { get; set; } = string.Empty;
public SubjectStatus Status { get; set; } = SubjectStatus.OnVisit;//1 访视中2 出组 3 访视结束
public string Reason { get; set; } = string.Empty;
public bool IsEnrollment { get; set; }
public DateTime? OutEnrollmentTime { get; set; }
public DateTime? VisitOverTime { get; set; }
public string ShortName { get; set; } = String.Empty;
public string Height { get; set; } = String.Empty;
public string Weight { get; set; } = String.Empty;
public DateTime? BirthDate { get; set; }
public DateTime? SignDate { get; set; }
public int StudyCount { get; set; } = 0;
public string Modalities { get; set; } = string.Empty;
public DateTime? FirstGiveMedicineTime { get; set; }
public bool IsUrgent { get; set; }
public bool IsReReadingOrBackInfluenceAnalysis { get; set; }
}
} }