整理实体
continuous-integration/drone/push Build is passing Details

IRC_NewDev
hang 2024-08-22 17:05:02 +08:00
parent 8a42ed74bc
commit f0943ca9a4
19 changed files with 356 additions and 462 deletions

View File

@ -159,7 +159,7 @@ namespace IRaCIS.Core.Application.Service
{
var filterObj = await _taskConsistentRuleRepository.FirstOrDefaultAsync(t => t.Id == inQuery.TaskConsistentRuleId);
var pagedList = await GetIQueryableDoctorSelfConsistentSubjectView(filterObj, inQuery.DoctorUserId).ToPagedListAsync(inQuery);
var pagedList = await GetIQueryableDoctorSelfConsistentSubjectView(filterObj, inQuery.DoctorUserId).ToPagedListAsync(inQuery,nameof(DoctorSelfConsistentSubjectView.SubjectCode));
return pagedList;
}

View File

@ -136,7 +136,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
.ProjectTo<SubjectAssignStat>(_mapper.ConfigurationProvider, new { trialReadingCriterionId = inQuery.TrialReadingCriterionId });
var pageList = await subjectQuery.ToPagedListAsync(inQuery);
var pageList = await subjectQuery.ToPagedListAsync(inQuery,nameof(SubjectAssignStat.SubjectId));

View File

@ -32,7 +32,7 @@ namespace IRaCIS.Core.Application.Services
var systemBasicDataQueryable = _systemBasicDataRepository.Where(t => t.ParentId == null)
.ProjectTo<SystemBasicDataView>(_mapper.ConfigurationProvider);
return await systemBasicDataQueryable.ToPagedListAsync(inQuery);
return await systemBasicDataQueryable.ToPagedListAsync(inQuery,nameof(SystemBasicDataView.Code));
}

View File

@ -52,7 +52,7 @@ namespace IRaCIS.Application.Services
.ProjectTo<DoctorDTO>(_mapper.ConfigurationProvider);
return await query.ToPagedListAsync(inQuery);
return await query.ToPagedListAsync(inQuery, nameof(DoctorDTO.CreateTime));
}

View File

@ -88,7 +88,7 @@ namespace IRaCIS.Application.Services
.WhereIf(!string.IsNullOrWhiteSpace(inQuery.UserRealName), t => (t.User.FullName).Contains(inQuery.UserRealName))
.ProjectTo<TrialMaintenanceDTO>(_mapper.ConfigurationProvider);
return await query.ToPagedListAsync(inQuery);
return await query.ToPagedListAsync(inQuery, nameof(TrialMaintenanceDTO.UpdateTime));
}

View File

@ -616,7 +616,7 @@ namespace IRaCIS.Application.Services
.WhereIf(inQuery.Status == 14, t => t.EnrollList.Any(u => u.EnrollStatus == EnrollStatus.Finished))
.ProjectTo<TrialDetailDTO>(_mapper.ConfigurationProvider, new { userTypeEnumInt = _userInfo.UserTypeEnumInt, userId = _userInfo.Id, isEn_Us = _userInfo.IsEn_Us });
return await query.ToPagedListAsync(inQuery);
return await query.ToPagedListAsync(inQuery, nameof(TrialDetailDTO.CreateTime));
}
@ -652,7 +652,7 @@ namespace IRaCIS.Application.Services
.ProjectTo<TrialDetailDTO>(_mapper.ConfigurationProvider, new { userTypeEnumInt = _userInfo.UserTypeEnumInt, userId = _userInfo.Id, isEn_Us = _userInfo.IsEn_Us });
return await query.ToPagedListAsync(inQuery);
return await query.ToPagedListAsync(inQuery, nameof(TrialDetailDTO.CreateTime));

View File

@ -246,7 +246,7 @@ namespace IRaCIS.Application.Services
//var list = await orderQuery.ToListAsync();
var pageList = await query.ToPagedListAsync(inQuery);
var pageList = await query.ToPagedListAsync(inQuery, nameof(PatientStudySimpleView.StudyTime));
return pageList;
}
@ -315,7 +315,7 @@ namespace IRaCIS.Application.Services
};
var pageList = await query.ToPagedListAsync(inQuery);
var pageList = await query.ToPagedListAsync(inQuery, nameof(PatientStudySimpleView.StudyTime));
return pageList;
}

View File

@ -127,7 +127,7 @@ namespace IRaCIS.Application.Services
.WhereIf(inQuery.IsMissingImages != null, t => t.IsMissingImages == inQuery.IsMissingImages);
var pageList = await subjectQuery.ToPagedListAsync(inQuery);
var pageList = await subjectQuery.ToPagedListAsync(inQuery,nameof(SubjectQueryView.Code));
var trialConfig = await _repository.Where<Trial>(t => t.Id == inQuery.TrialId).ProjectTo<TrialSubjectConfig>(_mapper.ConfigurationProvider).FirstOrDefaultAsync().IfNullThrowException();

View File

@ -37,13 +37,13 @@ namespace IRaCIS.Application.Services
///暂时不用
/// <summary> 获取项目访视计划</summary>
[HttpPost]
public async Task<PageOutput<VisitStageDTO>> GetTrialVisitStageList(VisitPlanQueryDTO param)
public async Task<PageOutput<VisitStageDTO>> GetTrialVisitStageList(VisitPlanQueryDTO inQuery)
{
var visitStageQuery = _visitStageRepository.AsQueryable(true).Where(u => u.TrialId == param.TrialId)
.WhereIf(!string.IsNullOrWhiteSpace(param.Keyword), t => t.VisitName.Contains(param.Keyword))
var visitStageQuery = _visitStageRepository.AsQueryable(true).Where(u => u.TrialId == inQuery.TrialId)
.WhereIf(!string.IsNullOrWhiteSpace(inQuery.Keyword), t => t.VisitName.Contains(inQuery.Keyword))
.ProjectTo<VisitStageDTO>(_mapper.ConfigurationProvider);
return await visitStageQuery.ToPagedListAsync(param);
return await visitStageQuery.ToPagedListAsync(inQuery,nameof(VisitStageDTO.CreateTime));
}

View File

@ -15,26 +15,18 @@ namespace IRaCIS.Core.Domain.Models
///是否需要拆表
///</summary>
[Table("SubjectTaskCategory")]
public class SubjectTaskCategory : Entity, IAuditAdd
public class SubjectTaskCategory : BaseAuditAddEntity
{
public Guid TrialId { get; set; }
public string TaskName { get; set; } = string.Empty;
public string TaskBlindName { get; set; } = string.Empty;
//任务来源访视Id 方便回更访视读片状态
public Guid? SourceSubjectVisitId { get; set; }
[JsonIgnore]
[ForeignKey("SourceSubjectVisitId")]
public SubjectVisit SubjectVisit { get; set; }
public Guid? SouceReadModuleId { get; set; }
[JsonIgnore]
[ForeignKey("SouceReadModuleId")]
public ReadModule ReadModule { get; set; }
public ReadingCategory ReadingCategory { get; set; }
@ -42,11 +34,22 @@ namespace IRaCIS.Core.Domain.Models
public Subject Subject { get; set; }
public Guid CreateUserId { get; set; }
public DateTime CreateTime { get; set; }
#region 导航属性
[JsonIgnore]
[ForeignKey("SouceReadModuleId")]
public ReadModule ReadModule { get; set; }
[JsonIgnore]
[ForeignKey("SourceSubjectVisitId")]
public SubjectVisit SubjectVisit { get; set; }
#endregion
}
}

View File

@ -15,47 +15,15 @@ namespace IRaCIS.Core.Domain.Models
///SubjectUser
///</summary>
[Table("SubjectUser")]
public class SubjectUser : Entity, IAuditUpdate, IAuditAdd
public class SubjectUser : BaseFullAuditEntity
{
[JsonIgnore]
public Trial Trial { get; set; }
public Guid TrialId { get; set; }
public Guid TrialId { get; set; }
public Guid TrialReadingCriterionId { get; set; }
/// <summary>
/// CreateUserId
/// </summary>
[Required]
public Guid CreateUserId { get; set; }
/// <summary>
/// CreateTime
/// </summary>
[Required]
public DateTime CreateTime { get; set; }
/// <summary>
/// UpdateTime
/// </summary>
[Required]
public DateTime UpdateTime { get; set; }
/// <summary>
/// UpdateUserId
/// </summary>
[Required]
public Guid UpdateUserId { get; set; }
public DateTime? AssignTime { get; set; }
/// <summary>
/// SubjectId
/// </summary>
[Required]
public Guid SubjectId { get; set; }
public Subject Subject { get; set; }
@ -73,18 +41,23 @@ namespace IRaCIS.Core.Domain.Models
//该属性有值 说明该医生被替换了 分配的时候 要过滤掉
public Guid? OrignalSubjectUserId { get; set; }
[JsonIgnore]
//Parent
[ForeignKey("OrignalSubjectUserId")]
public SubjectUser OrignalSubjectUser { get; set; }
#region 导航属性
[JsonIgnore]
public Trial Trial { get; set; }
[JsonIgnore]
//Parent
[ForeignKey("OrignalSubjectUserId")]
public SubjectUser OrignalSubjectUser { get; set; }
//ChildList
[JsonIgnore]
public List<SubjectUser> EarlierSubjectUserList { get; set; }
//public List<VisitTask> SubjectArmVisitTaskList { get; set; }
public List<SubjectUser> EarlierSubjectUserList { get; set; }
#endregion
}
}

View File

@ -15,15 +15,11 @@ namespace IRaCIS.Core.Domain.Models
///TaskAllocationRule
///</summary>
[Table("TaskAllocationRule")]
public class TaskAllocationRule : Entity, IAuditUpdate, IAuditAdd
public class TaskAllocationRule : BaseFullAuditEntity
{
[JsonIgnore]
public Trial Trial { get; set; }
public Guid TrialId { get; set; }
public Guid CreateUserId { get; set; }
public DateTime CreateTime { get; set; }
public DateTime UpdateTime { get; set; }
public Guid UpdateUserId { get; set; }
public int PlanSubjectCount { get; set; }
@ -31,22 +27,9 @@ namespace IRaCIS.Core.Domain.Models
public string Note { get; set; } = string.Empty;
public Guid DoctorUserId { get; set; }
[ForeignKey("DoctorUserId")]
[JsonIgnore]
public User DoctorUser { get; set; }
public Guid EnrollId { get; set; }
[JsonIgnore]
public Enroll Enroll { get; set; }
//是否是裁判医生 裁判医生单独加入
public bool IsJudgeDoctor { get; set; }
@ -55,7 +38,18 @@ namespace IRaCIS.Core.Domain.Models
#region 导航属性
[ForeignKey("DoctorUserId")]
[JsonIgnore]
public User DoctorUser { get; set; }
[JsonIgnore]
public Enroll Enroll { get; set; }
[JsonIgnore]
public Trial Trial { get; set; }
#endregion
}

View File

@ -14,48 +14,27 @@ namespace IRaCIS.Core.Domain.Models
///TaskConsistentRule
///</summary>
[Table("TaskConsistentRule")]
public class TaskConsistentRule : Entity, IAuditUpdate, IAuditAdd
{
public Trial Trial { get; set; }
public Guid CreateUserId { get; set; }
public DateTime CreateTime { get; set; }
public DateTime UpdateTime { get; set; }
public Guid UpdateUserId { get; set; }
public class TaskConsistentRule : BaseFullAuditEntity
{
public Guid TrialId { get; set; }
public int PlanSubjectCount { get; set; }
public int PlanVisitCount { get; set; }
public int IntervalWeeks { get; set; }
public bool IsHaveReadingPeriod { get; set; }
public bool IsGenerateGlobalTask { get; set; }
public bool IsGenerateGlobalTask { get; set; }
public int BlindSubjectNumberOfPlaces { get; set; }
public string BlindTrialSiteCode { get; set; } = string.Empty;
public bool IsSelfAnalysis { get; set; }
//public Guid? CompareDoctorUserId { get; set; }
//public User AnalysisDoctorUser { get; set; }
//public Guid AnalysisDoctorUserId { get; set; }
//public List<VisitTask> DoctorVisitTaskList { get; set; }
public bool IsEnable { get; set; }
public string Note { get; set; }
@ -63,13 +42,17 @@ namespace IRaCIS.Core.Domain.Models
public Guid TrialReadingCriterionId { get; set; }
#region 导航属性
[JsonIgnore]
[ForeignKey("TrialReadingCriterionId")]
public ReadingQuestionCriterionTrial TrialReadingCriterion { get; set; }
public Trial Trial { get; set; }
//[Projectable]
//public List<VisitTask> DoctorConsistentTaskList => DoctorVisitTaskList.Where(t => t.IsAnalysisCreate && t.TaskConsistentRuleId == Id).ToList();
}
[JsonIgnore]
[ForeignKey("TrialReadingCriterionId")]
public ReadingQuestionCriterionTrial TrialReadingCriterion { get; set; }
#endregion
}
}

View File

@ -13,17 +13,9 @@ namespace IRaCIS.Core.Domain.Models
///TaskInfluence
///</summary>
[Table("TaskInfluence")]
public class TaskInfluence : Entity, IAuditAdd
public class TaskInfluence : BaseAuditAddEntity
{
public Guid CreateUserId { get; set; }
public DateTime CreateTime { get; set; }
public Guid OriginalTaskId { get; set; }
public VisitTask OriginalTask { get; set; }
@ -38,6 +30,11 @@ namespace IRaCIS.Core.Domain.Models
//对影响任务进行的操作
public ReReadingOrBackOptType OptType { get; set; }
#region 导航属性
#endregion
}

View File

@ -13,40 +13,70 @@ using Newtonsoft.Json;
namespace IRaCIS.Core.Domain.Models
{
public class OSSImageInfo
{
public string FileName { get; set; }
public string ImagePath { get; set; }
}
///<summary>
///TaskMedicalReview
///</summary>
[Table("TaskMedicalReview")]
public class TaskMedicalReview : Entity, IAuditUpdate, IAuditAdd
public class TaskMedicalReview : BaseFullAuditEntity
{
#region 导航属性
[JsonIgnore]
public User LatestReplyUser { get; set; }
[JsonIgnore]
public User MedicalManagerUser { get; set; }
[JsonIgnore]
[ForeignKey("VisitTaskId")]
public VisitTask VisitTask { get; set; }
[JsonIgnore]
public List<ReadingMedicalReviewDialog> ReadingMedicalReviewDialogList { get; set; }
[JsonIgnore]
public Trial Trial { 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>();
}
}
}
[NotMapped]
public List<Guid> PDRelationTaskIdList => PDRelationTaskIdListStr.Split('|', StringSplitOptions.RemoveEmptyEntries).Select(t => Guid.Parse(t)).ToList();
#endregion
public Guid? LatestReplyUserId { get; set; }
/// <summary>
/// CreateUserId
/// </summary>
[Required]
public Guid CreateUserId { get; set; }
/// <summary>
/// CreateTime
/// </summary>
[Required]
public DateTime CreateTime { get; set; }
/// <summary>
/// UpdateTime
/// </summary>
[Required]
public DateTime UpdateTime { get; set; }
/// <summary>
/// UpdateUserId
/// </summary>
[Required]
public Guid UpdateUserId { get; set; }
/// <summary>
/// 分配时间
@ -59,43 +89,25 @@ namespace IRaCIS.Core.Domain.Models
[Required]
public MedicalReviewAuditState AuditState { get; set; }
/// <summary>
/// 审核通过时间
/// </summary>
public DateTime? AuditSignTime { get; set; }
/// <summary>
/// 审核通过时间
/// </summary>
public DateTime? AuditSignTime { get; set; }
/// <summary>
/// 阅片人是否认同
/// </summary>
public MedicalReviewDoctorUserIdea DoctorUserIdeaEnum { get; set; }
/// <summary>
/// MedicalManagerUserId
/// </summary>
public Guid? MedicalManagerUserId { get; set; }
public User MedicalManagerUser { get; set; }
public Guid VisitTaskId { get; set; }
[ForeignKey("VisitTaskId")]
public VisitTask VisitTask { get; set; }
public Guid TrialId { get; set; }
public Trial Trial { get; set; }
/// <summary>
/// 冗余 废弃
/// </summary>
//public Guid DoctorUserId { get; set; }
//[JsonIgnore]
//public TaskMedicalReviewRule TaskMedicalReviewRule { get; set; }
/// <summary>
/// 是否有问题
/// </summary>
@ -151,10 +163,6 @@ namespace IRaCIS.Core.Domain.Models
/// </summary>
public string FileName { get; set; } = string.Empty;
[JsonIgnore]
public List<ReadingMedicalReviewDialog> ReadingMedicalReviewDialogList { get; set; }
/// <summary>
/// 是否发送消息
/// </summary>
@ -171,55 +179,19 @@ namespace IRaCIS.Core.Domain.Models
/// </summary>
public string DialogCloseReason { get; set; } = string.Empty;
/// <summary>
/// 无效的 为True无效
/// </summary>
public bool IsInvalid { 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>();
}
}
}
public bool IsAutoGenerate { get; set; }
// | 分割
public string PDRelationTaskIdListStr { get; set; }=string.Empty;
public string PDRelationTaskIdListStr { get; set; } = string.Empty;
[NotMapped]
public List<Guid> PDRelationTaskIdList=> PDRelationTaskIdListStr.Split('|',StringSplitOptions.RemoveEmptyEntries).Select(t=> Guid.Parse(t) ).ToList();
}
#region 文件对象
public class OSSImageInfo
{
public string FileName { get; set; }
public string ImagePath { get; set; }
}
#endregion
}

View File

@ -15,17 +15,9 @@ namespace IRaCIS.Core.Domain.Models
///TaskTaskMedicalReviewRule
///</summary>
[Table("TaskMedicalReviewRule")]
public class TaskMedicalReviewRule : Entity, IAuditUpdate, IAuditAdd
public class TaskMedicalReviewRule :BaseFullAuditEntity
{
public Guid CreateUserId { get; set; }
public DateTime CreateTime { get; set; }
public DateTime UpdateTime { get; set; }
public Guid UpdateUserId { get; set; }
public Guid DoctorUserId { get; set; }
public bool IsEnable { get; set; }
@ -45,11 +37,13 @@ namespace IRaCIS.Core.Domain.Models
[JsonIgnore]
public User DoctorUser { get; set; }
//[JsonIgnore]
//public List<VisitTask> DoctorTrialVisitTaskList { get; set; }
//[JsonIgnore]
//public List<TaskMedicalReview> TaskMedicalReviewList { get; set; }
}
#region 导航属性
#endregion
}
}

View File

@ -13,31 +13,21 @@ namespace IRaCIS.Core.Domain.Models
///TrialVirtualSiteCodeUpdate
///</summary>
[Table("TrialVirtualSiteCodeUpdate")]
public class TrialVirtualSiteCodeUpdate : Entity, IAuditAdd
{
public class TrialVirtualSiteCodeUpdate : BaseAuditAddEntity
{
public Guid TrialId { get; set; }
#region 导航属性
#endregion
public Guid TrialId { get; set; }
/// <summary>
/// CreateTime
/// </summary>
[Required]
public DateTime CreateTime { get; set; }
/// <summary>
/// CreateUserId
/// </summary>
[Required]
public Guid CreateUserId { get; set; }
/// <summary>
/// VirturalSiteCode
/// </summary>
[Required]
public string VirturalSiteCode { get; set; }
}
}
}

View File

@ -17,31 +17,188 @@ namespace IRaCIS.Core.Domain.Models
///VisitTask
///</summary>
[Table("VisitTask")]
public class VisitTask : Entity, IAuditUpdate, IAuditAdd
public class VisitTask : BaseFullAuditEntity
{
#region 导航属性
[JsonIgnore]
public List<TaskStudy> TaskStudyList { get; set; }
[JsonIgnore]
[ForeignKey("TrialReadingCriterionId")]
public ReadingQuestionCriterionTrial TrialReadingCriterion { get; set; }
[ForeignKey("DoctorUserId")]
public User DoctorUser { get; set; }
[ForeignKey("SouceReadModuleId")]
public ReadModule ReadModule { get; set; }
[ForeignKey("SourceSubjectVisitId")]
public SubjectVisit SourceSubjectVisit { get; set; }
[JsonIgnore]
[ForeignKey("JudgeVisitTaskId")]
public VisitTask JudgeVisitTask { get; set; }
[JsonIgnore]
public Subject Subject { get; set; }
[JsonIgnore]
public List<TaskMedicalReview> TaskMedicalReviewList { get; set; }
[ForeignKey("JudgeResultTaskId")]
public VisitTask JudgeResultTask { get; set; }
//影像质量 等等第一层级问题答案
[JsonIgnore]
public List<ReadingTaskQuestionAnswer> ReadingTaskQuestionAnswerList { get; set; } = new List<ReadingTaskQuestionAnswer>();
//病灶表
[JsonIgnore]
public List<ReadingTableAnswerRowInfo> LesionList { get; set; } = new List<ReadingTableAnswerRowInfo>();
//病灶答案表
[JsonIgnore]
public List<ReadingTableQuestionAnswer> LesionAnswerList { get; set; } = new List<ReadingTableQuestionAnswer>();
//重阅或者退回影像的记录中间表
[JsonIgnore]
public List<TaskInfluence> TaskInfluenceList { get; set; } = new List<TaskInfluence>();
[JsonIgnore]
//对于全局任务而言 才可以用的 关联的访视阅片结果
public List<ReadingGlobalTaskInfo> GlobalVisitResultList { get; set; } = new List<ReadingGlobalTaskInfo>();
/// <summary>
/// 裁判结果图片地址
/// </summary>
[NotMapped]
public List<string> JudgeResultImagePathList
{
get
{
try
{
return this.JudgeResultImagePath.Trim().Split(',').ToList();
}
catch (Exception)
{
return new List<string>();
}
}
}
[JsonIgnore]
public Trial Trial { get; set; }
[JsonIgnore]
public List<UserFeedBack> UserFeedBackList { get; set; }
/// <summary>
/// 关联的访视任务ID (当前任务是访视任务的话会有自己)集合
/// </summary>
[NotMapped]
public List<Guid> RelatedVisitTaskIdList
{
get
{
try
{
return JsonConvert.DeserializeObject<List<Guid>>(this.RelatedVisitTaskIds);
}
catch (Exception)
{
return new List<Guid>();
}
}
}
/// <summary>
/// 报告任务关系 包含冻结
/// </summary>
[NotMapped]
public List<Guid> ReportRelatedTaskIdList
{
get
{
try
{
return JsonConvert.DeserializeObject<List<Guid>>(this.ReportRelatedTaskIds);
}
catch (Exception)
{
return new List<Guid>();
}
}
}
/// <summary>
/// 既往任务Id 不包括自己集合
/// </summary>
[NotMapped]
public List<Guid> PastResultTaskIdList
{
get
{
try
{
return JsonConvert.DeserializeObject<List<Guid>>(this.PastResultTaskIds);
}
catch (Exception)
{
return new List<Guid>();
}
}
}
#endregion
public string TaskName { get; set; } = string.Empty;
public string TaskBlindName { get; set; } = string.Empty;
//任务来源访视Id 方便回更访视读片状态
public Guid? SourceSubjectVisitId { get; set; }
public Guid? SouceReadModuleId { get; set; }
/// <summary>
/// 任务类型
/// </summary>
/// <summary> 任务类型 </summary>
public ReadingCategory ReadingCategory { get; set; }
public Guid CreateUserId { get; set; }
public DateTime CreateTime { get; set; }
public DateTime UpdateTime { get; set; }
public Guid UpdateUserId { get; set; }
public Guid TrialId { get; set; }
@ -99,46 +256,7 @@ namespace IRaCIS.Core.Domain.Models
public Guid TrialReadingCriterionId { get; set; }
[JsonIgnore]
[ForeignKey("TrialReadingCriterionId")]
public ReadingQuestionCriterionTrial TrialReadingCriterion { get; set; }
[ForeignKey("DoctorUserId")]
public User DoctorUser { get; set; }
[ForeignKey("SouceReadModuleId")]
public ReadModule ReadModule { get; set; }
[ForeignKey("SourceSubjectVisitId")]
public SubjectVisit SourceSubjectVisit { get; set; }
[JsonIgnore]
[ForeignKey("JudgeVisitTaskId")]
public VisitTask JudgeVisitTask { get; set; }
[JsonIgnore]
public Subject Subject { get; set; }
[JsonIgnore]
public List<TaskMedicalReview> TaskMedicalReviewList { get; set; }
//排除一致性分析 因为souceVisitId 没值
//public List<VisitTask> SameVisitTaskList { get; set; }
//public List<VisitTask> SameSubjectVisiTaskList { get; set; }
//public TaskAllocationRule DoctorTaskAllocationRule { get; set; }
//[JsonIgnore]
//public TaskMedicalReviewRule DoctorTaskMedicalReviewRule { get; set; }
//裁判任务的Id
@ -167,10 +285,7 @@ namespace IRaCIS.Core.Domain.Models
/// <summary> 裁判结果的任务ID </summary>
public Guid? JudgeResultTaskId { get; set; }
[ForeignKey("JudgeResultTaskId")]
public VisitTask JudgeResultTask { get; set; }
//随访任务号 取访视的号 计划外是 访视+0.1 裁判任务在访视任务上+0.002 全局任务在截止访视号上+0.03 肿瘤待定
public decimal VisitTaskNum { get; set; }
@ -197,57 +312,11 @@ namespace IRaCIS.Core.Domain.Models
/// </summary>
public string RelatedVisitTaskIds { get; set; } = "[]";
/// <summary>
/// 关联的访视任务ID (当前任务是访视任务的话会有自己)集合
/// </summary>
[NotMapped]
public List<Guid> RelatedVisitTaskIdList
{
get
{
try
{
return JsonConvert.DeserializeObject<List<Guid>>(this.RelatedVisitTaskIds);
}
catch (Exception)
{
return new List<Guid>();
}
}
}
/// <summary>
/// 报告任务关系 包含冻结
/// </summary>
public string ReportRelatedTaskIds { get; set; } = "[]";
/// <summary>
/// 报告任务关系 包含冻结
/// </summary>
[NotMapped]
public List<Guid> ReportRelatedTaskIdList
{
get
{
try
{
return JsonConvert.DeserializeObject<List<Guid>>(this.ReportRelatedTaskIds);
}
catch (Exception)
{
return new List<Guid>();
}
}
}
/// <summary>
/// 既往任务Id 不包括自己
/// </summary>
@ -256,28 +325,6 @@ namespace IRaCIS.Core.Domain.Models
/// <summary>
/// 既往任务Id 不包括自己集合
/// </summary>
[NotMapped]
public List<Guid> PastResultTaskIdList
{
get
{
try
{
return JsonConvert.DeserializeObject<List<Guid>>(this.PastResultTaskIds);
}
catch (Exception)
{
return new List<Guid>();
}
}
}
#region 裁判任务特有
[JsonIgnore]
@ -378,66 +425,9 @@ namespace IRaCIS.Core.Domain.Models
/// </summary>
public bool IsFrontTaskNeedSignButNotSign { get; set; }
[JsonIgnore]
public Trial Trial { get; set; }
//影像质量 等等第一层级问题答案
[JsonIgnore]
public List<ReadingTaskQuestionAnswer> ReadingTaskQuestionAnswerList { get; set; } = new List<ReadingTaskQuestionAnswer>();
//病灶表
[JsonIgnore]
public List<ReadingTableAnswerRowInfo> LesionList { get; set; } = new List<ReadingTableAnswerRowInfo>();
//病灶答案表
[JsonIgnore]
public List<ReadingTableQuestionAnswer> LesionAnswerList { get; set; } = new List<ReadingTableQuestionAnswer>();
//重阅或者退回影像的记录中间表
[JsonIgnore]
public List<TaskInfluence> TaskInfluenceList { get; set; } = new List<TaskInfluence>();
[JsonIgnore]
//对于全局任务而言 才可以用的 关联的访视阅片结果
public List<ReadingGlobalTaskInfo> GlobalVisitResultList { get; set; } = new List<ReadingGlobalTaskInfo>();
/// <summary>
/// 裁判结果图片地址
/// </summary>
[NotMapped]
public List<string> JudgeResultImagePathList
{
get
{
try
{
return this.JudgeResultImagePath.Trim().Split(',').ToList();
}
catch (Exception)
{
return new List<string>();
}
}
}
public int ImageStudyState { get; set; }
[JsonIgnore]
public List<UserFeedBack> UserFeedBackList { get; set; }
}
}

View File

@ -15,8 +15,28 @@ namespace IRaCIS.Core.Domain.Models
///重阅申请流程记录表
///</summary>
[Table("VisitTaskReReading")]
public class VisitTaskReReading : Entity, IAuditUpdate, IAuditAdd
public class VisitTaskReReading : BaseFullAuditEntity
{
#region 导航属性
[JsonIgnore]
public User RequestReReadingUser { get; set; }
[JsonIgnore]
public VisitTask NewReReadingTask { get; set; }
[JsonIgnore]
public VisitTask RootReReadingTask { get; set; }
[JsonIgnore]
public VisitTask OriginalReReadingTask { get; set; }
[JsonIgnore]
public User RequestReReadingConfirmUser { get; set; }
[JsonIgnore]
public User CreateUser { get; set; }
#endregion
public Guid TrialId { get; set; }
//重阅原始任务Id 重阅会产生新的任务
@ -30,16 +50,10 @@ namespace IRaCIS.Core.Domain.Models
public Guid? NewReReadingTaskId { get; set; }
public Guid RequestReReadingUserId { get; set; }
[JsonIgnore]
public User RequestReReadingUser { get; set; }
public DateTime RequestReReadingTime { get; set; }
[JsonIgnore]
public VisitTask NewReReadingTask { get; set; }
[JsonIgnore]
public VisitTask RootReReadingTask { get; set; }
[JsonIgnore]
public VisitTask OriginalReReadingTask { get; set; }
//申请回退类型
public RequestReReadingType RequestReReadingType { get; set; }
@ -51,13 +65,8 @@ namespace IRaCIS.Core.Domain.Models
public RequestReReadingResult RequestReReadingResultEnum { get; set; }
public Guid? RequestReReadingConfirmUserId { get; set; }
public User RequestReReadingConfirmUser { get; set; }
public bool IsCopyOrigenalForms { get; set; }
@ -65,18 +74,7 @@ namespace IRaCIS.Core.Domain.Models
public bool IsCopyFollowForms { get; set; }
public Guid CreateUserId { get; set; }
public DateTime CreateTime { get; set; }
public DateTime UpdateTime { get; set; }
public Guid UpdateUserId { get; set; }
[JsonIgnore]
public User CreateUser { get; set; }
}
}