@@ -3,435 +3,432 @@
|
||||
// 此代码由T4模板自动生成 byzhouhang 20210918
|
||||
// 生成时间 2022-06-07 14:09:29
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
|
||||
using System;
|
||||
using IRaCIS.Core.Domain.Share;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using EntityFrameworkCore.Projectables;
|
||||
using IRaCIS.Core.Domain.Share;
|
||||
using System.Linq;
|
||||
|
||||
namespace IRaCIS.Core.Domain.Models;
|
||||
|
||||
///<summary>
|
||||
///VisitTask
|
||||
///</summary>
|
||||
[Table("VisitTask")]
|
||||
public class VisitTask : BaseFullAuditEntity
|
||||
namespace IRaCIS.Core.Domain.Models
|
||||
{
|
||||
#region 导航属性
|
||||
[JsonIgnore]
|
||||
public List<TaskStudy> TaskStudyList { get; set; }
|
||||
|
||||
public List<NoneDicomStudyFile> TaskNoneDicomStudyFileList { 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
|
||||
///<summary>
|
||||
///VisitTask
|
||||
///</summary>
|
||||
[Table("VisitTask")]
|
||||
public class VisitTask : BaseFullAuditEntity
|
||||
{
|
||||
get
|
||||
#region 导航属性
|
||||
[JsonIgnore]
|
||||
public List<TaskStudy> TaskStudyList { get; set; }
|
||||
|
||||
public List<NoneDicomStudyFile> TaskNoneDicomStudyFileList { 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
|
||||
{
|
||||
|
||||
try
|
||||
{
|
||||
return this.JudgeResultImagePath.Trim().Split(',').ToList();
|
||||
}
|
||||
catch (Exception)
|
||||
get
|
||||
{
|
||||
|
||||
return new List<string>();
|
||||
}
|
||||
try
|
||||
{
|
||||
return this.JudgeResultImagePath.Trim().Split(',').ToList();
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
return new List<string>();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
[JsonIgnore]
|
||||
[JsonIgnore]
|
||||
|
||||
public Trial Trial { get; set; }
|
||||
public Trial Trial { get; set; }
|
||||
|
||||
|
||||
|
||||
[JsonIgnore]
|
||||
public List<UserFeedBack> UserFeedBackList { get; set; }
|
||||
[JsonIgnore]
|
||||
public List<UserFeedBack> UserFeedBackList { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 关联的访视任务ID (当前任务是访视任务的话会有自己)集合
|
||||
/// </summary>
|
||||
[NotMapped]
|
||||
public List<Guid> RelatedVisitTaskIdList
|
||||
{
|
||||
get
|
||||
/// <summary>
|
||||
/// 关联的访视任务ID (当前任务是访视任务的话会有自己)集合
|
||||
/// </summary>
|
||||
[NotMapped]
|
||||
public List<Guid> RelatedVisitTaskIdList
|
||||
{
|
||||
|
||||
try
|
||||
get
|
||||
{
|
||||
|
||||
return JsonConvert.DeserializeObject<List<Guid>>(this.RelatedVisitTaskIds);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
return new List<Guid>();
|
||||
}
|
||||
return JsonConvert.DeserializeObject<List<Guid>>(this.RelatedVisitTaskIds);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
return new List<Guid>();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 报告任务关系 包含冻结
|
||||
/// </summary>
|
||||
[NotMapped]
|
||||
public List<Guid> ReportRelatedTaskIdList
|
||||
{
|
||||
get
|
||||
/// <summary>
|
||||
/// 报告任务关系 包含冻结
|
||||
/// </summary>
|
||||
[NotMapped]
|
||||
public List<Guid> ReportRelatedTaskIdList
|
||||
{
|
||||
|
||||
try
|
||||
get
|
||||
{
|
||||
|
||||
return JsonConvert.DeserializeObject<List<Guid>>(this.ReportRelatedTaskIds);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
return new List<Guid>();
|
||||
}
|
||||
return JsonConvert.DeserializeObject<List<Guid>>(this.ReportRelatedTaskIds);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
return new List<Guid>();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 既往任务Id 不包括自己集合
|
||||
/// </summary>
|
||||
[NotMapped]
|
||||
public List<Guid> PastResultTaskIdList
|
||||
{
|
||||
get
|
||||
/// <summary>
|
||||
/// 既往任务Id 不包括自己集合
|
||||
/// </summary>
|
||||
[NotMapped]
|
||||
public List<Guid> PastResultTaskIdList
|
||||
{
|
||||
|
||||
try
|
||||
{
|
||||
return JsonConvert.DeserializeObject<List<Guid>>(this.PastResultTaskIds);
|
||||
}
|
||||
catch (Exception)
|
||||
get
|
||||
{
|
||||
|
||||
return new List<Guid>();
|
||||
}
|
||||
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>
|
||||
public ReadingCategory ReadingCategory { get; set; }
|
||||
|
||||
public Guid TrialId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 分配时间
|
||||
/// </summary>
|
||||
public DateTime? AllocateTime { get; set; }
|
||||
|
||||
public Guid SubjectId { get; set; }
|
||||
|
||||
|
||||
public int Code { get; set; }
|
||||
|
||||
public string TaskCode { get; set; } = string.Empty;
|
||||
|
||||
public bool IsUrgent { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 加急类型
|
||||
/// </summary>
|
||||
public TaskUrgentType? TaskUrgentType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 任务加急类型
|
||||
/// </summary>
|
||||
public string TaskUrgentRemake { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 是否和编辑加急状态
|
||||
/// </summary>
|
||||
public bool IsCanEditUrgentState { get; set; } = true;
|
||||
|
||||
/// <summary>
|
||||
/// 0 代表 单重阅片 产生的任务 否则就是双重 任务 1 任务 2
|
||||
/// </summary>
|
||||
[Required]
|
||||
public Arm ArmEnum { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分配状态
|
||||
/// </summary>
|
||||
public TaskAllocationState TaskAllocationState { get; set; }
|
||||
|
||||
|
||||
public TaskState TaskState { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 重阅状态
|
||||
/// </summary>
|
||||
public ReReadingApplyState ReReadingApplyState { get; set; }
|
||||
|
||||
public Guid? DoctorUserId { get; set; }
|
||||
|
||||
|
||||
public Guid TrialReadingCriterionId { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
//裁判任务的Id
|
||||
public Guid? JudgeVisitTaskId { get; set; }
|
||||
|
||||
//任务阅片状态
|
||||
public ReadingTaskState ReadingTaskState { get; set; }
|
||||
|
||||
//签名时间
|
||||
public DateTime? SignTime { get; set; }
|
||||
|
||||
public DateTime? SuggesteFinishedTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 是否是重阅产生的,方便过滤数据
|
||||
/// </summary>
|
||||
public bool IsReReadingCreate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// PM 对该任务进行了回退 影响的任务不设置
|
||||
/// </summary>
|
||||
public bool IsPMSetBack { get; set; }
|
||||
|
||||
|
||||
/// <summary> 裁判结果的任务ID </summary>
|
||||
public Guid? JudgeResultTaskId { get; set; }
|
||||
|
||||
|
||||
|
||||
//随访任务号 取访视的号 计划外是 访视+0.1 裁判任务在访视任务上+0.002 全局任务在截止访视号上+0.03 肿瘤待定
|
||||
public decimal VisitTaskNum { get; set; }
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 首次阅片时间
|
||||
/// </summary>
|
||||
public DateTime? FirstReadingTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 全局是否有更新
|
||||
/// </summary>
|
||||
public bool? IsGlobalHaveUpdate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// IR是否阅读临床数据
|
||||
/// </summary>
|
||||
public bool IsReadClinicalData { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// 关联的访视任务ID (当前任务是访视任务的话会有自己)
|
||||
/// </summary>
|
||||
public string RelatedVisitTaskIds { get; set; } = "[]";
|
||||
|
||||
/// <summary>
|
||||
/// 报告任务关系 包含冻结
|
||||
/// </summary>
|
||||
public string ReportRelatedTaskIds { get; set; } = "[]";
|
||||
|
||||
/// <summary>
|
||||
/// 既往任务Id 不包括自己
|
||||
/// </summary>
|
||||
|
||||
public string PastResultTaskIds { get; set; } = "[]";
|
||||
|
||||
|
||||
|
||||
#region 裁判任务特有
|
||||
|
||||
[JsonIgnore]
|
||||
//对于裁判任务而言,触发裁判的列表
|
||||
public List<VisitTask> JudgeVisitList { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 裁判结果的备注
|
||||
/// </summary>
|
||||
public string JudgeResultRemark { get; set; } = string.Empty;
|
||||
/// <summary>
|
||||
/// 裁判结果的图片路径
|
||||
/// </summary>
|
||||
public string JudgeResultImagePath { get; set; } = string.Empty;
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
#region 一致性分析的任务特有数据
|
||||
|
||||
/// <summary>
|
||||
/// 阅片结果是否和原数据有差异
|
||||
/// </summary>
|
||||
public bool? IsAnalysisDiffToOriginalData { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组件一致性和原Arm1是否有差异
|
||||
/// </summary>
|
||||
public bool? IsGroupDiffArm1 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组件一致性和原Arm2是否有差异
|
||||
/// </summary>
|
||||
public bool? IsGroupDiffArm2 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否是一致性分析产生
|
||||
/// </summary>
|
||||
public bool IsAnalysisCreate { get; set; }
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 转换之前的任务Id(转化的任务才有该值)
|
||||
/// </summary>
|
||||
public Guid? BeforeConvertedTaskId { get; set; }
|
||||
|
||||
|
||||
[Projectable]
|
||||
[JsonIgnore]
|
||||
public bool IsConvertedTask => BeforeConvertedTaskId != null || IsHistoryConvertedTask || Subject.SubjectVisitTaskList.Where(t => t.TrialReadingCriterionId == TrialReadingCriterionId
|
||||
&& t.DoctorUserId == DoctorUserId && t.BeforeConvertedTaskId != null
|
||||
&& t.TaskState == TaskState.Effect
|
||||
&& t.VisitTaskNum < VisitTaskNum
|
||||
&& t.IsSelfAnalysis == IsSelfAnalysis
|
||||
&& t.ArmEnum == ArmEnum
|
||||
).Any();
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 是否修改了整体肿瘤评估
|
||||
/// </summary>
|
||||
public bool IsChangeTumorEvaluate { get; set; } = false;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 重阅重置任务的 标注是转化之前的 还是转化之后的
|
||||
/// </summary>
|
||||
public bool IsHistoryConvertedTask { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// 是否是自身一致性
|
||||
/// </summary>
|
||||
public bool? IsSelfAnalysis { get; set; }
|
||||
|
||||
public string BlindSubjectCode { get; set; } = string.Empty;
|
||||
public string BlindTrialSiteCode { get; set; } = string.Empty;
|
||||
|
||||
//一致性分析规则Id 用于最后统计
|
||||
//public Guid? TaskConsistentRuleId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 针对产生的一致性任务而言,这个字段存储的是原始任务
|
||||
/// </summary>
|
||||
public Guid? ConsistentAnalysisOriginalTaskId { get; set; }
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
//临床数据
|
||||
|
||||
public bool IsNeedClinicalDataSign { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 临床数据是否签名
|
||||
/// </summary>
|
||||
public bool IsClinicalDataSign { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 前序任务需要签名 但是未签名
|
||||
/// </summary>
|
||||
public bool IsFrontTaskNeedSignButNotSign { get; set; }
|
||||
|
||||
|
||||
public int ImageStudyState { get; set; }
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
#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>
|
||||
public ReadingCategory ReadingCategory { get; set; }
|
||||
|
||||
public Guid TrialId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 分配时间
|
||||
/// </summary>
|
||||
public DateTime? AllocateTime { get; set; }
|
||||
|
||||
public Guid SubjectId { get; set; }
|
||||
|
||||
|
||||
public int Code { get; set; }
|
||||
|
||||
public string TaskCode { get; set; } = string.Empty;
|
||||
|
||||
public bool IsUrgent { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 加急类型
|
||||
/// </summary>
|
||||
public TaskUrgentType? TaskUrgentType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 任务加急类型
|
||||
/// </summary>
|
||||
public string TaskUrgentRemake { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 是否和编辑加急状态
|
||||
/// </summary>
|
||||
public bool IsCanEditUrgentState { get; set; } = true;
|
||||
|
||||
/// <summary>
|
||||
/// 0 代表 单重阅片 产生的任务 否则就是双重 任务 1 任务 2
|
||||
/// </summary>
|
||||
[Required]
|
||||
public Arm ArmEnum { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分配状态
|
||||
/// </summary>
|
||||
public TaskAllocationState TaskAllocationState { get; set; }
|
||||
|
||||
|
||||
public TaskState TaskState { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 重阅状态
|
||||
/// </summary>
|
||||
public ReReadingApplyState ReReadingApplyState { get; set; }
|
||||
|
||||
public Guid? DoctorUserId { get; set; }
|
||||
|
||||
|
||||
public Guid TrialReadingCriterionId { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
//裁判任务的Id
|
||||
public Guid? JudgeVisitTaskId { get; set; }
|
||||
|
||||
//任务阅片状态
|
||||
public ReadingTaskState ReadingTaskState { get; set; }
|
||||
|
||||
//签名时间
|
||||
public DateTime? SignTime { get; set; }
|
||||
|
||||
public DateTime? SuggesteFinishedTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 是否是重阅产生的,方便过滤数据
|
||||
/// </summary>
|
||||
public bool IsReReadingCreate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// PM 对该任务进行了回退 影响的任务不设置
|
||||
/// </summary>
|
||||
public bool IsPMSetBack { get; set; }
|
||||
|
||||
|
||||
/// <summary> 裁判结果的任务ID </summary>
|
||||
public Guid? JudgeResultTaskId { get; set; }
|
||||
|
||||
|
||||
|
||||
//随访任务号 取访视的号 计划外是 访视+0.1 裁判任务在访视任务上+0.002 全局任务在截止访视号上+0.03 肿瘤待定
|
||||
public decimal VisitTaskNum { get; set; }
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 首次阅片时间
|
||||
/// </summary>
|
||||
public DateTime? FirstReadingTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 全局是否有更新
|
||||
/// </summary>
|
||||
public bool? IsGlobalHaveUpdate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// IR是否阅读临床数据
|
||||
/// </summary>
|
||||
public bool IsReadClinicalData { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// 关联的访视任务ID (当前任务是访视任务的话会有自己)
|
||||
/// </summary>
|
||||
public string RelatedVisitTaskIds { get; set; } = "[]";
|
||||
|
||||
/// <summary>
|
||||
/// 报告任务关系 包含冻结
|
||||
/// </summary>
|
||||
public string ReportRelatedTaskIds { get; set; } = "[]";
|
||||
|
||||
/// <summary>
|
||||
/// 既往任务Id 不包括自己
|
||||
/// </summary>
|
||||
|
||||
public string PastResultTaskIds { get; set; } = "[]";
|
||||
|
||||
|
||||
|
||||
#region 裁判任务特有
|
||||
|
||||
[JsonIgnore]
|
||||
//对于裁判任务而言,触发裁判的列表
|
||||
public List<VisitTask> JudgeVisitList { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 裁判结果的备注
|
||||
/// </summary>
|
||||
public string JudgeResultRemark { get; set; } = string.Empty;
|
||||
/// <summary>
|
||||
/// 裁判结果的图片路径
|
||||
/// </summary>
|
||||
public string JudgeResultImagePath { get; set; } = string.Empty;
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
#region 一致性分析的任务特有数据
|
||||
|
||||
/// <summary>
|
||||
/// 阅片结果是否和原数据有差异
|
||||
/// </summary>
|
||||
public bool? IsAnalysisDiffToOriginalData { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组件一致性和原Arm1是否有差异
|
||||
/// </summary>
|
||||
public bool? IsGroupDiffArm1 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 组件一致性和原Arm2是否有差异
|
||||
/// </summary>
|
||||
public bool? IsGroupDiffArm2 { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否是一致性分析产生
|
||||
/// </summary>
|
||||
public bool IsAnalysisCreate { get; set; }
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 转换之前的任务Id(转化的任务才有该值)
|
||||
/// </summary>
|
||||
public Guid? BeforeConvertedTaskId { get; set; }
|
||||
|
||||
|
||||
[Projectable]
|
||||
[JsonIgnore]
|
||||
public bool IsConvertedTask => BeforeConvertedTaskId != null || IsHistoryConvertedTask || Subject.SubjectVisitTaskList.Where(t => t.TrialReadingCriterionId == TrialReadingCriterionId
|
||||
&& t.DoctorUserId == DoctorUserId && t.BeforeConvertedTaskId != null
|
||||
&& t.TaskState == TaskState.Effect
|
||||
&& t.VisitTaskNum < VisitTaskNum
|
||||
&& t.IsSelfAnalysis == IsSelfAnalysis
|
||||
&& t.ArmEnum == ArmEnum
|
||||
).Any();
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 是否修改了整体肿瘤评估
|
||||
/// </summary>
|
||||
public bool IsChangeTumorEvaluate { get; set; } = false;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 重阅重置任务的 标注是转化之前的 还是转化之后的
|
||||
/// </summary>
|
||||
public bool IsHistoryConvertedTask { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// 是否是自身一致性
|
||||
/// </summary>
|
||||
public bool? IsSelfAnalysis { get; set; }
|
||||
|
||||
public string BlindSubjectCode { get; set; } = string.Empty;
|
||||
public string BlindTrialSiteCode { get; set; } = string.Empty;
|
||||
|
||||
//一致性分析规则Id 用于最后统计
|
||||
//public Guid? TaskConsistentRuleId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 针对产生的一致性任务而言,这个字段存储的是原始任务
|
||||
/// </summary>
|
||||
public Guid? ConsistentAnalysisOriginalTaskId { get; set; }
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
//临床数据
|
||||
|
||||
public bool IsNeedClinicalDataSign { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 临床数据是否签名
|
||||
/// </summary>
|
||||
public bool IsClinicalDataSign { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 前序任务需要签名 但是未签名
|
||||
/// </summary>
|
||||
public bool IsFrontTaskNeedSignButNotSign { get; set; }
|
||||
|
||||
|
||||
public int ImageStudyState { get; set; }
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user