167 lines
3.7 KiB
C#
167 lines
3.7 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace IRaCIS.Core.Test.CodeFirstTest.MSSQL
|
|
{
|
|
public abstract class BaseFullAuditEntity
|
|
{
|
|
[Key]
|
|
public Guid Id { get; set; }
|
|
public Guid CreateUserId { get; set; }
|
|
public DateTime CreateTime { get; set; }
|
|
public Guid UpdateUserId { get; set; }
|
|
public DateTime UpdateTime { get; set; }
|
|
}
|
|
|
|
[Table("TrialImageDownload")]
|
|
public class TrialImageDownload : BaseFullAuditEntity
|
|
{
|
|
public Guid SubjectVisitId { get; set; }
|
|
|
|
public bool IsSuccess { get; set; }
|
|
|
|
public DateTime DownloadStartTime { get; set; }
|
|
public DateTime? DownloadEndTime { get; set; }
|
|
|
|
public ImageType ImageType { get; set; }
|
|
|
|
public int ImageCount { get; set; }
|
|
|
|
public long ImageSize { get; set; }
|
|
|
|
#region 测试导航属性
|
|
|
|
public List<TestNew> TestNewList { get; set; }
|
|
|
|
#endregion
|
|
}
|
|
|
|
public enum ImageType
|
|
{
|
|
Dicom = 1,
|
|
NoneDIcom = 2
|
|
};
|
|
|
|
public class TestNew : BaseFullAuditEntity
|
|
{
|
|
public Guid TrialImageDownloadId { get; set; }
|
|
|
|
[StringLength(100)]
|
|
public string TestName { get; set; }
|
|
}
|
|
|
|
|
|
public class Subject : BaseFullAuditEntity
|
|
{
|
|
public string Name { get; set; }
|
|
|
|
|
|
public Guid? LatestSubjectVisitId { get; set; }
|
|
|
|
public Guid? FinalSubjectVisitId { get; set; }
|
|
|
|
#region 同时配置一对多,一对一 导航属性
|
|
|
|
[ForeignKey("FinalSubjectVisitId")]
|
|
public SubejectVisit FinalSubjectVisit { get; set; }
|
|
|
|
[ForeignKey("LatestSubjectVisitId")]
|
|
public SubejectVisit LatestSubjectVisit { get; set; }
|
|
|
|
public List<SubejectVisit> SubejectVisitList { get; set; }
|
|
#endregion
|
|
|
|
}
|
|
|
|
public class SubejectVisit : BaseFullAuditEntity
|
|
{
|
|
public Subject Subject { get; set; }
|
|
|
|
public Guid SubjectId { get; set; }
|
|
|
|
}
|
|
|
|
|
|
public class Dictionary : BaseFullAuditEntity
|
|
{
|
|
#region 导航属性
|
|
[ForeignKey("ConfigTypeId")]
|
|
public Dictionary ConfigType { get; set; }
|
|
|
|
[ForeignKey("ParentId")]
|
|
public Dictionary Parent { get; set; }
|
|
|
|
public List<Dictionary> ChildList { get; set; } = new List<Dictionary>();
|
|
|
|
#endregion
|
|
|
|
|
|
public Guid? ParentId { get; set; }
|
|
|
|
|
|
public Guid? ConfigTypeId { get; set; }
|
|
|
|
public string Code { get; set; }
|
|
}
|
|
|
|
#region 一个外键 关联两个实体
|
|
public class ReadingClinicalData : BaseFullAuditEntity
|
|
{
|
|
public string Code { get; set; }
|
|
|
|
|
|
public Guid ReadingId { get; set; }
|
|
|
|
|
|
[ForeignKey("ReadingId")]
|
|
|
|
public SubejectVisit SubjectVisit { get; set; }
|
|
|
|
[ForeignKey("ReadingId")]
|
|
|
|
public ReadModule ReadModule { get; set; }
|
|
}
|
|
|
|
public class ReadModule : BaseFullAuditEntity
|
|
{
|
|
public string Name { get; set; }
|
|
}
|
|
#endregion
|
|
|
|
#region 测试 字符串默认长度配置
|
|
|
|
public class TestStringLength : BaseFullAuditEntity
|
|
{
|
|
public string DefaultLength { get; set; }
|
|
|
|
[MaxLength(300)]
|
|
public string UserDefineLength { get; set; }
|
|
|
|
[Column(TypeName = "text")]
|
|
public string UserDefineText { get; set; }
|
|
|
|
}
|
|
#endregion
|
|
|
|
#region 测试生成迁移移除外键约束
|
|
|
|
#endregion
|
|
public class Project : BaseFullAuditEntity
|
|
{
|
|
|
|
}
|
|
|
|
public class ProjectUser: BaseFullAuditEntity
|
|
{
|
|
//外键
|
|
public Guid ProjectId { get; set; }
|
|
|
|
public Project Project { get; set; }
|
|
}
|
|
}
|