IRC_NewDev
he 2023-07-11 10:10:07 +08:00
parent 52e7166177
commit a4819c4016
4 changed files with 68 additions and 23 deletions

View File

@ -730,8 +730,8 @@ namespace IRaCIS.Application.Services
ClinicalFormId = x.ClinicalFormId
}).ToList();
x.ReadingClinicalDataState = readModule.IsPMConfirm ? ReadingClinicalDataStatus.HaveSigned : ReadingClinicalDataStatus.HaveChecked;
x.IsSign = readModule.IsPMConfirm ? true : false;
x.ReadingClinicalDataState = readModule.IsPMConfirm ? ReadingClinicalDataStatus.HaveSigned : ReadingClinicalDataStatus.HaveChecked;
});
@ -740,30 +740,47 @@ namespace IRaCIS.Application.Services
// 根据标准
if (inDto.VisitTaskId != null)
// 根据标准
if (inDto.VisitTaskId != null)
{
var visitTaskInfo = await _visitTaskRepository.FirstOrDefaultAsync(x => x.Id == inDto.VisitTaskId);
result = result.Where(x => x.TrialClinicalDataSetCriteriaList.Any(z=>z.TrialReadingCriterionId==visitTaskInfo.TrialReadingCriterionId)).ToList();
result = result.Where(x => x.TrialClinicalDataSetCriteriaList.Any(z => z.TrialReadingCriterionId == visitTaskInfo.TrialReadingCriterionId)).ToList();
}
result = result.Where(x => !(x.ClinicalUploadType == ClinicalUploadType.PDF && x.FileList.Count() == 0)).ToList();
// 需要排除表格为空的数据
var readingIds = result.Select(x => x.ReadingId).ToList();
var tablecount = (await _previousHistoryRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync()) +
(await _previousOtherRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync()) +
(await _previousSurgeryRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync());
if (tablecount == 0)
if (inDto.GetClinicalType != null)
{
result = result.Where(x => x.ClinicalUploadType != ClinicalUploadType.Table).ToList();
switch (inDto.GetClinicalType)
{
case GetClinicalType.PMUpload:
result = result.Where(x => x.UploadRole == UploadRole.PM).ToList();
break;
case GetClinicalType.CRCConfirm:
result = result.Where(x => x.UploadRole == UploadRole.CRC).ToList();
break;
case GetClinicalType.HasSign:
result = result.Where(x => x.IsSign).ToList();
break;
}
}
//result = result.Where(x => !(x.ClinicalUploadType == ClinicalUploadType.PDF && x.FileList.Count() == 0)).ToList();
//// 需要排除表格为空的数据
//var readingIds = result.Select(x => x.ReadingId).ToList();
//var tablecount = (await _previousHistoryRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync()) +
// (await _previousOtherRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync()) +
// (await _previousSurgeryRepository.Where(x => readingIds.Contains(x.SubjectVisitId)).CountAsync());
//if (tablecount == 0)
//{
// result = result.Where(x => x.ClinicalUploadType != ClinicalUploadType.Table).ToList();
//}
return result;
}
@ -878,13 +895,13 @@ namespace IRaCIS.Application.Services
{
switch (inDto.GetClinicalType)
{
case 1:
case GetClinicalType.PMUpload:
result = result.Where(x => x.UploadRole == UploadRole.PM).ToList();
break;
case 2:
case GetClinicalType.CRCConfirm:
result = result.Where(x => x.UploadRole == UploadRole.CRC).ToList();
break;
case 3:
case GetClinicalType.HasSign:
result = result.Where(x => x.IsSign).ToList();
break;
}

View File

@ -186,7 +186,12 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public Guid? VisitTaskId { get; set; }
public Guid? ReadingClinicalDataId { get; set; }
/// <summary>
/// 1 PM上传的所有的 2CRC上传的所有已确认的 3 所有已经签名的
/// </summary>
public GetClinicalType? GetClinicalType { get; set; }
public Guid? ReadingClinicalDataId { get; set; }
/// <summary>
/// 只获取CRC上传的阅片模块结构化录入
@ -212,7 +217,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
/// <summary>
/// 1 PM上传的所有的 2CRC上传的所有已确认的 3 所有已经签名的
/// </summary>
public int? GetClinicalType { get; set; }
public GetClinicalType? GetClinicalType { get; set; }
[NotDefault]
public Guid TrialReadingCriterionId { get; set; }

View File

@ -2211,6 +2211,7 @@ namespace IRaCIS.Application.Services
SubjectId = taskInfo.SubjectId,
TrialId = taskInfo.TrialId,
VisitTaskId = taskInfo.Id,
});
var isBaseLine = false;

View File

@ -16,6 +16,28 @@ namespace IRaCIS.Core.Domain.Share
public static readonly string Group = "group";
}
/// <summary>
/// GetClinicalType
/// </summary>
public enum GetClinicalType
{
/// <summary>
/// PM上传
/// </summary>
PMUpload = 1,
/// <summary>
/// CRC 上传 过确认
/// </summary>
CRCConfirm = 2,
/// <summary>
/// 已审核
/// </summary>
HasSign = 3
}
/// <summary>
/// 临床表格问题标识
/// </summary>