Test.EIImageViewer
he 2022-06-17 16:54:00 +08:00
parent f9d2fb91c8
commit 82e27d70ea
10 changed files with 45 additions and 330 deletions

View File

@ -765,7 +765,7 @@
模块类型
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleDto.Status">
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleDto.ReadingStatus">
<summary>
状态
</summary>
@ -860,126 +860,6 @@
状态
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.Id">
<summary>
Id(阅片期Id 或者 访视ID)
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.Name">
<summary>
名称
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.SubjectId">
<summary>
受试者ID
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.ModuleType">
<summary>
模块类型
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.IsUrgent">
<summary>
是否加急
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.SubjectVisitId">
<summary>
访视ID
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.SubjectVisitName">
<summary>
访视名称
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.CutOffVisitId">
<summary>
截止访视
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.CutOffVisitName">
<summary>
截止访视名称
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.ReadModuleId">
<summary>
对应阅片期
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.ReadModuleName">
<summary>
对应Name
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.Status">
<summary>
状态
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.CreateTime">
<summary>
创建时间
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.SubjectCode">
<summary>
受试者Code
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.SiteCode">
<summary>
中心Id
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.TrialSiteCode">
<summary>
项目中心Id
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.IsFinalVisit">
<summary>
是否为末次访视
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.OutPlanPreviousVisitId">
<summary>
上一访视
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.OutPlanPreviousVisitName">
<summary>
上一访视名称
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.SiteId">
<summary>
中心ID
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.IsVisit">
<summary>
是否为访视
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.VisitNum">
<summary>
访视Num
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.PDState">
<summary>
是否为PD进展
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleOutDto.IsEnrollmentConfirm">
<summary>
入组确认评估
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleResultDto.PageIndex">
<summary>
当前页索引

View File

@ -31,7 +31,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
/// <summary>
/// 状态
/// </summary>
public ReadModuleEnum? Status { get; set; }
public ReadingStatusEnum? ReadingStatus { get; set; }
/// <summary>
/// 任务名称
@ -168,136 +168,10 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
/// <summary>
/// 状态
/// </summary>
public ReadModuleEnum? Status { get; set; }
public ReadingStatusEnum Status { get; set; }
}
public class GetReadModuleOutDto
{
/// <summary>
/// Id(阅片期Id 或者 访视ID)
/// </summary>
public Guid Id { get; set; }
/// <summary>
/// 名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 受试者ID
/// </summary>
public Guid SubjectId { get; set; }
/// <summary>
/// 模块类型
/// </summary>
public ModuleTypeEnum ModuleType { get; set; }
/// <summary>
/// 是否加急
/// </summary>
public bool? IsUrgent { get; set; }
/// <summary>
/// 访视ID
/// </summary>
public Guid SubjectVisitId { get; set; }
/// <summary>
/// 访视名称
/// </summary>
public string SubjectVisitName { get; set; }
/// <summary>
/// 截止访视
/// </summary>
public Guid? CutOffVisitId { get; set; }
/// <summary>
/// 截止访视名称
/// </summary>
public string? CutOffVisitName { get; set; }
/// <summary>
/// 对应阅片期
/// </summary>
public Guid? ReadModuleId { get; set; }
/// <summary>
/// 对应Name
/// </summary>
public string? ReadModuleName { get; set; }
/// <summary>
/// 状态
/// </summary>
public ReadModuleEnum? Status { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 受试者Code
/// </summary>
public string SubjectCode { get; set; }
/// <summary>
/// 中心Id
/// </summary>
public string SiteCode { get; set; }
/// <summary>
/// 项目中心Id
/// </summary>
public string TrialSiteCode { get; set; }
/// <summary>
/// 是否为末次访视
/// </summary>
public bool IsFinalVisit { get; set; } = false;
/// <summary>
/// 上一访视
/// </summary>
public Guid? OutPlanPreviousVisitId { get; set; }
/// <summary>
/// 上一访视名称
/// </summary>
public string OutPlanPreviousVisitName { get; set; }
/// <summary>
/// 中心ID
/// </summary>
public Guid? SiteId { get; set; }
/// <summary>
/// 是否为访视
/// </summary>
public bool IsVisit { get; set; }
/// <summary>
/// 访视Num
/// </summary>
public decimal? VisitNum { get; set; }
/// <summary>
/// 是否为PD进展
/// </summary>
public PDStateEnum PDState { get; set; } = PDStateEnum.None;
/// <summary>
/// 入组确认评估
/// </summary>
public bool IsEnrollmentConfirm { get; set; } = false;
}
public class GetReadModuleResultDto
@ -377,7 +251,6 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public ModuleTypeEnum ModuleType { get; set; }
public ReadModuleEnum? Status { get; set; }
public bool? IsUrgent { get; set; }
@ -417,7 +290,6 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public ModuleTypeEnum ModuleType { get; set; }
public ReadModuleEnum? Status { get; set; }
public bool? IsUrgent { get; set; }

View File

@ -11,6 +11,6 @@ namespace IRaCIS.Core.Application.Contracts
{
public interface IReadModuleService
{
ReadModuleEnum GetVisitSubmitStateEnum(SubjectVisit visit);
}
}

View File

@ -158,7 +158,7 @@ namespace IRaCIS.Application.Services
.WhereIf(dto.TrialSiteCode != null && dto.TrialSiteCode != String.Empty, x => x.TrialSiteCode == dto.TrialSiteCode)
.WhereIf(dto.SubjectCode != null && dto.SubjectCode != String.Empty, x => x.SubjectCode == dto.SubjectCode)
.WhereIf(dto.ModuleType != null, x => x.ModuleType == dto.ModuleType)
.WhereIf(dto.Status != null, x => x.Status == dto.Status)
.WhereIf(dto.ReadingStatus != null, x => x.ReadingStatus == dto.ReadingStatus)
.WhereIf(dto.Name != null, x => x.Name.Contains(dto.Name)).OrderBy(x => x.SiteCode);
var subjectIds = await subjectQuery.Select(x => x.SubjectId).Distinct().Skip((dto.PageIndex - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();
@ -338,7 +338,7 @@ namespace IRaCIS.Application.Services
SubjectVisitId = x.SubjectVisitId,
SubjectVisitName = x.SubjectVisitName,
Status = x.Status,
Status = x.ReadingStatus,
}).FirstOrDefault();
@ -347,11 +347,11 @@ namespace IRaCIS.Application.Services
var subjectVisit =await _subjectVisitRepository.FirstOrDefaultAsync(x => x.Id == readModule.SubjectVisitId);
switch (readModule.Status)
{
case ReadModuleEnum.ImageUpload:
case ReadingStatusEnum.ImageNotSubmit:
stakeholderIds.AddRange(await _dicomInstanceRepository.Where(x => x.SubjectVisitId == readModule.SubjectVisitId).Select(x => x.CreateUserId).Distinct().ToListAsync());
stakeholderIds.AddRange(await _noneDicomStudyFileRepository.Where(x => x.NoneDicomStudy.SubjectVisitId == readModule.SubjectVisitId).Select(x => x.CreateUserId).Distinct().ToListAsync());
break;
case ReadModuleEnum.ImageQuality:
case ReadingStatusEnum.ImageQuality:
if (subjectVisit.PreliminaryAuditUserId != null)
{
stakeholderIds.Add(subjectVisit.PreliminaryAuditUserId.Value);
@ -361,7 +361,7 @@ namespace IRaCIS.Application.Services
stakeholderIds.Add(subjectVisit.ReviewAuditUserId.Value);
}
break;
case ReadModuleEnum.ConsistencyCheck:
case ReadingStatusEnum.TaskAllocate:
if (subjectVisit.CheckUserId != null)
{
stakeholderIds.Add(subjectVisit.CheckUserId.Value);
@ -431,7 +431,7 @@ namespace IRaCIS.Application.Services
ReadingSetType= dto.ReadingSetType,
TrialId= dto.TrialId,
VisitNum= visit.VisitNum,
Status = ReadModuleEnum.TaskAllocation,
ReadingStatus = ReadingStatusEnum.TaskAllocate,
});
var res = await _readModuleRepository.SaveChangesAsync();

View File

@ -308,7 +308,7 @@ namespace IRaCIS.Application.Services
SubjectVisitId = item.SubjectVisitId,
ReadingSetType = item.ReadingPeriodSet.ReadingSetType,
ReadingPeriodSetId = item.ReadingPeriodSet.Id,
Status = ReadModuleEnum.TaskAllocation,
ReadingStatus = ReadingStatusEnum.TaskAllocate,
TrialId = readingPeriodSet.TrialId,
VisitNum = item.SubjectVisit.VisitNum,
});

View File

@ -140,7 +140,7 @@ namespace IRaCIS.Core.Application.Triggers
ReadingPeriodSetId = readingPeriodSet.Id,
IsUrgent = subjectVisit.IsUrgent,
SubjectVisitId = subjectVisitId,
Status = ReadModuleEnum.TaskAllocation,
ReadingStatus = ReadingStatusEnum.TaskAllocate,
SubjectId = subjectVisit.SubjectId,
ModuleName = "Global",// 全局阅片
ReadingSetType = ReadingSetType.ImageReading,

View File

@ -99,42 +99,42 @@ namespace IRaCIS.Core.Domain.Share
Revocation=2,
}
/// <summary>
/// 阅片模块状态
/// </summary>
public enum ReadModuleEnum
{
/// <summary>
/// 影像上传
/// </summary>
ImageUpload=0,
///// <summary>
///// 阅片模块状态
///// </summary>
//public enum ReadModuleEnum
//{
// /// <summary>
// /// 影像上传
// /// </summary>
// ImageUpload=0,
/// <summary>
/// 影像质控
/// </summary>
ImageQuality = 1,
// /// <summary>
// /// 影像质控
// /// </summary>
// ImageQuality = 1,
/// <summary>
/// 一致性核查
/// </summary>
ConsistencyCheck = 2,
// /// <summary>
// /// 一致性核查
// /// </summary>
// ConsistencyCheck = 2,
/// <summary>
/// 任务分配
/// </summary>
TaskAllocation = 3,
// /// <summary>
// /// 任务分配
// /// </summary>
// TaskAllocation = 3,
/// <summary>
/// 影像阅片
/// </summary>
ImageRead = 4,
// /// <summary>
// /// 影像阅片
// /// </summary>
// ImageRead = 4,
/// <summary>
/// 阅片完成
/// </summary>
ReadComplete = 5,
// /// <summary>
// /// 阅片完成
// /// </summary>
// ReadComplete = 5,
}
//}
/// <summary>

View File

@ -40,11 +40,6 @@ namespace IRaCIS.Core.Domain.Models
/// </summary>
public Guid SubjectVisitId { get; set; }
/// <summary>
/// 状态
/// </summary>
public ReadModuleEnum Status { get; set; }
/// <summary>
/// 创建时间
/// </summary>
@ -120,9 +115,7 @@ namespace IRaCIS.Core.Domain.Models
[ForeignKey("LastVisitIdSetId")]
public SubjectVisit LastSubjectVisit { get; set; }
public ReadingStatusEnum ReadingStatus { get; set; }
}

View File

@ -74,10 +74,7 @@ namespace IRaCIS.Core.Domain.Models
/// </summary>
public string? ReadModuleName { get; set; }
/// <summary>
/// 状态
/// </summary>
public ReadModuleEnum? Status { get; set; }
/// <summary>
/// 创建时间

View File

@ -13,34 +13,7 @@ namespace IRaCIS.Core.Infra.EFCore.Common
{
public static class ReadingCommon
{
/// <summary>
/// 获取访视的状态
/// </summary>
/// <param name="visit"></param>
/// <returns></returns>
public static ReadModuleEnum GetVisitSubmitStateEnum(SubjectVisit visit)
{
if (visit.SubmitState != SubmitStateEnum.Submitted) // 未提交
{
return ReadModuleEnum.ImageUpload;
}
else if (visit.AuditState != AuditStateEnum.QCPassed) // 审核未通过
{
return ReadModuleEnum.ImageQuality;
}
else if (visit.ForwardState != ForwardStateEnum.Forwarded) // 未通过一致性核查
{
return ReadModuleEnum.ConsistencyCheck;
}
else
{
// 暂时
return ReadModuleEnum.ReadComplete;
}
}
public static bool IsNullOrEmpty(this string value)
{
if (value == null || value == string.Empty)