Merge branch 'Test.IRC' of http://192.168.3.68:2000/XCKJ/irc-netcore-api into Test.IRC
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
commit
158c3608a0
|
@ -64,7 +64,7 @@ namespace IRaCIS.Core.API
|
|||
{
|
||||
Log.Logger.Warning($"当前部署平台环境:windows");
|
||||
}
|
||||
if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
|
||||
else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
|
||||
{
|
||||
Log.Logger.Warning($"当前部署平台环境:linux");
|
||||
}
|
||||
|
@ -75,10 +75,10 @@ namespace IRaCIS.Core.API
|
|||
|
||||
NewId.SetProcessIdProvider(new CurrentProcessIdProvider());
|
||||
|
||||
|
||||
|
||||
host.Run();
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -106,7 +106,7 @@ namespace IRaCIS.Core.API
|
|||
webBuilder.UseStartup<Startup>();
|
||||
}).UseSerilog()
|
||||
.UseServiceProviderFactory(new AutofacServiceProviderFactory());
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -50,7 +50,7 @@ namespace IRaCIS.Application.Services.BusinessFilter
|
|||
|
||||
//OK
|
||||
var tuple = (dynamic)objectResult.Value;
|
||||
var apiResponse = ResponseOutput.Ok(tuple.Item1, tuple.Item2);
|
||||
var apiResponse = ResponseOutput.Ok(tuple!.Item1, tuple!.Item2);
|
||||
|
||||
|
||||
objectResult.Value = apiResponse;
|
||||
|
|
|
@ -27,7 +27,7 @@ public static class FileStoreHelper
|
|||
// 填写Object完整路径,完整路径中不能包含Bucket名称,例如exampledir/exampleobject.txt。
|
||||
|
||||
var fileNameList = filePath.Split(',').ToList();
|
||||
var fileName = fileNameList[fileNameList.Count() - 1];
|
||||
var fileName = fileNameList[fileNameList.Count - 1];
|
||||
|
||||
var objectName = route+ fileName;
|
||||
// 填写本地文件完整路径,例如D:\\localpath\\examplefile.txt。如果未指定本地路径,则默认从示例程序所属项目对应本地路径中上传文件。
|
||||
|
@ -462,7 +462,6 @@ public static class FileStoreHelper
|
|||
/// <param name="trialId"></param>
|
||||
/// <param name="siteid"></param>
|
||||
/// <param name="subjectId"></param>
|
||||
/// <param name="type"></param>
|
||||
/// <returns></returns>
|
||||
public static (string PhysicalPath, string RelativePath, string FileRealName) GetUploadPrintscreenFilePath(IWebHostEnvironment _hostEnvironment, string fileName, Guid trialId, Guid siteid, Guid subjectId)
|
||||
{
|
||||
|
|
|
@ -71,7 +71,6 @@
|
|||
<param name="trialId"></param>
|
||||
<param name="siteid"></param>
|
||||
<param name="subjectId"></param>
|
||||
<param name="type"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Helper.FileStoreHelper.GetFilePath(Microsoft.AspNetCore.Hosting.IWebHostEnvironment,System.String,System.Guid,System.Guid,System.String)">
|
||||
|
@ -633,7 +632,6 @@
|
|||
<param name="_commonDocumentRepository"></param>
|
||||
<param name="_dictionaryService"></param>
|
||||
<param name="_trialRepository"></param>
|
||||
<param name="inQuery"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.Common.ExcelExportService.GetTrialReadingCriterionCanExportDocumentList(System.Guid)">
|
||||
|
@ -1266,7 +1264,6 @@
|
|||
<summary>
|
||||
获取阅片报告
|
||||
</summary>
|
||||
<param name="indto"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.GetDeleteLesionStatrIndex(IRaCIS.Core.Application.Service.Reading.Dto.DeleteReadingRowAnswerInDto)">
|
||||
|
@ -12914,7 +12911,6 @@
|
|||
<summary>
|
||||
新增修改系统表格问题
|
||||
</summary>
|
||||
<param name="addOrEditReadingTableQuestionSystem"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Application.Services.ReadingQuestionService.DeleteReadingTableQuestionSystem(System.Guid)">
|
||||
|
|
|
@ -165,16 +165,16 @@ namespace IRaCIS.Core.Application.Service
|
|||
}
|
||||
else
|
||||
{
|
||||
needGenerateVisit = await _subjectVisitRepository.Where(t => subjectVisitIdList.Contains(t.Id)).ToListAsync();
|
||||
needGenerateVisit = await _subjectVisitRepository.Where(t => subjectVisitIdList!.Contains(t.Id)).ToListAsync();
|
||||
}
|
||||
|
||||
|
||||
var trialReadingCriterionConfig = await _trialReadingCriterionRepository.Where(t => t.Id == confirmedTrialReadingCriterionId).Select(t => new { TrialReadingCriterionId = t.Id, t.ReadingTool, t.ReadingType, t.IsReadingTaskViewInOrder, t.IsFollowVisitAutoAssign, t.IsFollowGlobalVisitAutoAssign, t.FollowGlobalVisitAutoAssignDefaultState, t.FollowVisitAutoAssignDefaultState, t.TaskAllocateObjEnum, t.CriterionType }).FirstOrDefaultAsync();
|
||||
var trialReadingCriterionConfig = await _trialReadingCriterionRepository.Where(t => t.Id == confirmedTrialReadingCriterionId).Select(t => new { TrialReadingCriterionId = t.Id, t.ReadingTool, t.ReadingType, t.IsReadingTaskViewInOrder, t.IsFollowVisitAutoAssign, t.IsFollowGlobalVisitAutoAssign, t.FollowGlobalVisitAutoAssignDefaultState, t.FollowVisitAutoAssignDefaultState, t.TaskAllocateObjEnum, t.CriterionType }).FirstNotNullAsync();
|
||||
|
||||
//获取确认的临床数据配置
|
||||
var clinicalDataConfirmList = _trialClinicalDataSetRepository.Where(t => t.TrialId == trialId && t.IsConfirm).Include(t => t.TrialClinicalDataSetCriteriaList).ToList();
|
||||
|
||||
var visitBlindConfig = _trialRepository.Where(t => t.Id == trialId).Select(t => new { t.BlindBaseLineName, t.BlindFollowUpPrefix }).FirstOrDefault();
|
||||
var visitBlindConfig = await _trialRepository.Where(t => t.Id == trialId).Select(t => new { t.BlindBaseLineName, t.BlindFollowUpPrefix }).FirstNotNullAsync();
|
||||
|
||||
var dbMaxCode = _visitTaskRepository.Where(t => t.TrialId == trialId).Select(t => t.Code).DefaultIfEmpty().Max();
|
||||
|
||||
|
@ -318,7 +318,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
task1.TaskAllocationState = defaultState;
|
||||
//分配给对应Arm的人
|
||||
task1.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm1).DoctorUserId;
|
||||
task1.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm1)!.DoctorUserId;
|
||||
task1.AllocateTime = DateTime.Now;
|
||||
|
||||
task1.SuggesteFinishedTime = GetSuggessFinishTime(true, UrgentType.NotUrget);
|
||||
|
@ -327,7 +327,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
if (assignConfigList.Any(t => t.ArmEnum == Arm.DoubleReadingArm2) && task2 != null)
|
||||
{
|
||||
task2.TaskAllocationState = defaultState;
|
||||
task2.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm2).DoctorUserId;
|
||||
task2.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm2)!.DoctorUserId;
|
||||
task2.AllocateTime = DateTime.Now;
|
||||
task2.SuggesteFinishedTime = GetSuggessFinishTime(true, UrgentType.NotUrget);
|
||||
}
|
||||
|
@ -376,9 +376,9 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
if (assignConfigList.Any(t => t.ArmEnum == Arm.SingleReadingArm))
|
||||
{
|
||||
singleTask.TaskAllocationState = defaultState;
|
||||
singleTask!.TaskAllocationState = defaultState;
|
||||
|
||||
singleTask.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.SingleReadingArm).DoctorUserId;
|
||||
singleTask.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.SingleReadingArm)!.DoctorUserId;
|
||||
|
||||
singleTask.AllocateTime = DateTime.Now;
|
||||
|
||||
|
@ -590,7 +590,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
var trialReadingCriterionConfigList = _trialReadingCriterionRepository.Where(t => t.TrialId == trialId && t.ReadingInfoSignTime != null).Select(t => new { TrialReadingCriterionId = t.Id, t.ReadingTool, t.ReadingType, t.IsReadingTaskViewInOrder, t.IsFollowVisitAutoAssign, t.IsAutoCreate, t.IsFollowGlobalVisitAutoAssign, t.FollowGlobalVisitAutoAssignDefaultState, t.FollowVisitAutoAssignDefaultState, t.TaskAllocateObjEnum, t.CriterionType }).ToList();
|
||||
|
||||
var visitBlindConfig = _trialRepository.Where(t => t.Id == trialId).Select(t => new { t.BlindBaseLineName, t.BlindFollowUpPrefix }).FirstOrDefault();
|
||||
var visitBlindConfig = await _trialRepository.Where(t => t.Id == trialId).Select(t => new { t.BlindBaseLineName, t.BlindFollowUpPrefix }).FirstNotNullAsync();
|
||||
|
||||
//获取确认的临床数据配置
|
||||
var clinicalDataConfirmList = _trialClinicalDataSetRepository.Where(t => t.TrialId == trialId && t.IsConfirm).Include(t => t.TrialClinicalDataSetCriteriaList).ToList();
|
||||
|
@ -801,7 +801,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
task1.TaskAllocationState = defaultState;
|
||||
//分配给对应Arm的人
|
||||
task1.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm1).DoctorUserId;
|
||||
task1.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm1)!.DoctorUserId;
|
||||
task1.AllocateTime = DateTime.Now;
|
||||
|
||||
task1.SuggesteFinishedTime = GetSuggessFinishTime(true, UrgentType.NotUrget);
|
||||
|
@ -810,7 +810,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
if (assignConfigList.Any(t => t.ArmEnum == Arm.DoubleReadingArm2) && task2 != null)
|
||||
{
|
||||
task2.TaskAllocationState = defaultState;
|
||||
task2.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm2).DoctorUserId;
|
||||
task2.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm2)!.DoctorUserId;
|
||||
task2.AllocateTime = DateTime.Now;
|
||||
task2.SuggesteFinishedTime = GetSuggessFinishTime(true, UrgentType.NotUrget);
|
||||
}
|
||||
|
@ -826,7 +826,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
//存在退回访视1 又退回基线 这种情况 生成任务 考虑基线先一致性核查通过,但是访视1还未通过时 生成任务
|
||||
var followVisitTaskList = await _visitTaskRepository
|
||||
.Where(t => t.TrialId == trialId && t.TrialReadingCriterionId == trialReadingCriterionConfig.TrialReadingCriterionId && t.SubjectId == subjectVisit.SubjectId && t.VisitTaskNum > subjectVisit.VisitNum && t.SourceSubjectVisit.CheckState == CheckStateEnum.CVPassed && t.ReadingCategory == ReadingCategory.Visit && t.IsAnalysisCreate == false, true)
|
||||
.WhereIf(followBackVisitTask != null, t => t.VisitTaskNum < followBackVisitTask.VisitTaskNum)
|
||||
.WhereIf(followBackVisitTask != null, t => t.VisitTaskNum < followBackVisitTask!.VisitTaskNum)
|
||||
.ToListAsync();
|
||||
|
||||
var followVisitGroup = followVisitTaskList.GroupBy(t => t.VisitTaskNum);
|
||||
|
@ -915,7 +915,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
IsSelfAnalysis = latestTask.IsSelfAnalysis,
|
||||
TaskAllocationState = TaskAllocationState.Allocated,
|
||||
AllocateTime = DateTime.Now,
|
||||
DoctorUserId = task1.DoctorUserId,
|
||||
DoctorUserId = task1!.DoctorUserId,
|
||||
SuggesteFinishedTime = GetSuggessFinishTime(true, UrgentType.NotUrget),
|
||||
TrialReadingCriterionId = latestTask.TrialReadingCriterionId,
|
||||
IsNeedClinicalDataSign = latestTask.IsNeedClinicalDataSign,
|
||||
|
@ -982,7 +982,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
TaskAllocationState = TaskAllocationState.Allocated,
|
||||
|
||||
AllocateTime = DateTime.Now,
|
||||
DoctorUserId = task2.DoctorUserId,
|
||||
DoctorUserId = task2!.DoctorUserId,
|
||||
SuggesteFinishedTime = GetSuggessFinishTime(true, UrgentType.NotUrget),
|
||||
|
||||
TrialReadingCriterionId = latestTask.TrialReadingCriterionId,
|
||||
|
@ -1009,7 +1009,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
task1.TaskAllocationState = defaultState;
|
||||
//分配给对应Arm的人
|
||||
task1.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm1).DoctorUserId;
|
||||
task1.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm1)!.DoctorUserId;
|
||||
task1.AllocateTime = DateTime.Now;
|
||||
|
||||
task1.SuggesteFinishedTime = GetSuggessFinishTime(true, UrgentType.NotUrget);
|
||||
|
@ -1018,7 +1018,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
if (assignConfigList.Any(t => t.ArmEnum == Arm.DoubleReadingArm2) && task2 != null)
|
||||
{
|
||||
task2.TaskAllocationState = defaultState;
|
||||
task2.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm2).DoctorUserId;
|
||||
task2.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.DoubleReadingArm2)!.DoctorUserId;
|
||||
task2.AllocateTime = DateTime.Now;
|
||||
task2.SuggesteFinishedTime = GetSuggessFinishTime(true, UrgentType.NotUrget);
|
||||
}
|
||||
|
@ -1124,7 +1124,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
singleTask.TaskAllocationState = defaultState;
|
||||
|
||||
singleTask.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.SingleReadingArm).DoctorUserId;
|
||||
singleTask.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.SingleReadingArm)!.DoctorUserId;
|
||||
|
||||
singleTask.AllocateTime = DateTime.Now;
|
||||
|
||||
|
@ -1140,7 +1140,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
//存在退回访视1 又退回基线 这种情况 生成任务 考虑基线先一致性核查通过,但是访视1还未通过时 生成任务
|
||||
var followVisitTaskList = await _visitTaskRepository
|
||||
.Where(t => t.TrialId == trialId && t.SubjectId == subjectVisit.SubjectId && t.TrialReadingCriterionId == trialReadingCriterionId && t.VisitTaskNum > subjectVisit.VisitNum && t.SourceSubjectVisit.CheckState == CheckStateEnum.CVPassed && t.ReadingCategory == ReadingCategory.Visit && t.IsAnalysisCreate == false, true)
|
||||
.WhereIf(followBackVisitTask != null, t => t.VisitTaskNum < followBackVisitTask.VisitTaskNum)
|
||||
.WhereIf(followBackVisitTask != null, t => t.VisitTaskNum < followBackVisitTask!.VisitTaskNum)
|
||||
.ToListAsync();
|
||||
|
||||
var followVisitGroup = followVisitTaskList.GroupBy(t => t.VisitTaskNum);
|
||||
|
@ -1230,7 +1230,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
singleTask.TaskAllocationState = defaultState;
|
||||
|
||||
singleTask.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.SingleReadingArm).DoctorUserId;
|
||||
singleTask.DoctorUserId = assignConfigList.FirstOrDefault(t => t.ArmEnum == Arm.SingleReadingArm)!.DoctorUserId;
|
||||
|
||||
singleTask.AllocateTime = DateTime.Now;
|
||||
|
||||
|
@ -1367,7 +1367,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
if (reReadingVisitTask.ReadingCategory == ReadingCategory.Judge)
|
||||
{
|
||||
var judgeRecord = await _readingJudgeInfoRepository.Where(t => t.JudgeTaskId == reReadingVisitTask.Id).FirstOrDefaultAsync();
|
||||
var judgeRecord = await _readingJudgeInfoRepository.Where(t => t.JudgeTaskId == reReadingVisitTask.Id).FirstNotNullAsync();
|
||||
|
||||
var origenalTaskIdList = new Guid[] { judgeRecord.TaskIdOne, judgeRecord.TaskIdTwo };
|
||||
|
||||
|
@ -1491,7 +1491,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
break;
|
||||
|
||||
case GenerateTaskCategory.Judge:
|
||||
var firstTask = await _visitTaskRepository.Where(x => generateTaskCommand.JudgeVisitTaskIdList.Contains(x.Id)).FirstOrDefaultAsync();
|
||||
var firstTask = await _visitTaskRepository.Where(x => generateTaskCommand.JudgeVisitTaskIdList.Contains(x.Id)).FirstNotNullAsync();
|
||||
|
||||
var subjectUser = await _subjectUserRepository.Where(x => x.SubjectId == firstTask.SubjectId && x.ArmEnum == Arm.JudgeArm && x.IsConfirmed && x.TrialReadingCriterionId == firstTask.TrialReadingCriterionId).FirstOrDefaultAsync();
|
||||
|
||||
|
|
|
@ -577,8 +577,8 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
|||
|
||||
|
||||
var taskList = _visitTaskRepository.Where(t => t.TrialId == assignConfirmCommand.TrialId && t.DoctorUserId == null, true)
|
||||
.WhereIf(subjectIdList.Count() > 0 && assignConfirmCommand.IsJudgeDoctor == false, t => subjectIdList.Contains(t.SubjectId) && t.Subject.SubjectDoctorList.Where(t => t.ArmEnum != Arm.JudgeArm).Any())
|
||||
.WhereIf(subjectIdList.Count() > 0 && assignConfirmCommand.IsJudgeDoctor, t => subjectIdList.Contains(t.SubjectId) && t.Subject.SubjectDoctorList.Where(t => t.ArmEnum == Arm.JudgeArm).Any())
|
||||
.WhereIf(subjectIdList.Count > 0 && assignConfirmCommand.IsJudgeDoctor == false, t => subjectIdList.Contains(t.SubjectId) && t.Subject.SubjectDoctorList.Where(t => t.ArmEnum != Arm.JudgeArm).Any())
|
||||
.WhereIf(subjectIdList.Count > 0 && assignConfirmCommand.IsJudgeDoctor, t => subjectIdList.Contains(t.SubjectId) && t.Subject.SubjectDoctorList.Where(t => t.ArmEnum == Arm.JudgeArm).Any())
|
||||
//过滤掉 那些回退的subject
|
||||
.Where(t => !t.Subject.SubjectVisitList.Any(t => t.IsPMBackOrReReading))
|
||||
|
||||
|
@ -1150,7 +1150,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
|||
|
||||
var result = new List<IRUnReadSubjectView>();
|
||||
|
||||
var propName = string.IsNullOrWhiteSpace(inDto.Page.SortField) ? "UnReadCanReadTaskCount" : inDto.Page.SortField;
|
||||
var propName = string.IsNullOrWhiteSpace(inDto.Page!.SortField) ? "UnReadCanReadTaskCount" : inDto.Page.SortField;
|
||||
|
||||
var visitTaskOrderQuery = inDto.Page.Asc ? visitTaskQuery.OrderBy(propName) : visitTaskQuery.OrderBy(propName + " desc");
|
||||
if (inDto.Page != null)
|
||||
|
@ -1234,7 +1234,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
|||
|
||||
var requestRecordList = await _visitTaskReReadingRepository.Where(t => baseLineTaskIdList.Contains(t.OriginalReReadingTaskId) && t.RequestReReadingUserId == _userInfo.Id && t.RequestReReadingReason == "AIR自动重阅基线").ToListAsync();
|
||||
|
||||
if (requestRecordList.Count() != baseLineTaskIdList.Count())
|
||||
if (requestRecordList.Count != baseLineTaskIdList.Count)
|
||||
{
|
||||
//---后台数据有错误
|
||||
return ResponseOutput.NotOk(_localizer["VisitTask_DoctorConfiguration"]);
|
||||
|
|
|
@ -896,7 +896,7 @@ namespace IRaCIS.Core.Application.Service.Common
|
|||
[FromServices] IRepository<Trial> _trialRepository)
|
||||
{
|
||||
|
||||
var criterion = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == queryVisitTask.TrialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstOrDefaultAsync();
|
||||
var criterion = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == queryVisitTask.TrialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstNotNullAsync();
|
||||
|
||||
if (criterion.CriterionType != CriterionType.RECIST1Point1)
|
||||
{
|
||||
|
@ -971,7 +971,6 @@ namespace IRaCIS.Core.Application.Service.Common
|
|||
/// <param name="_commonDocumentRepository"></param>
|
||||
/// <param name="_dictionaryService"></param>
|
||||
/// <param name="_trialRepository"></param>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IActionResult> GetGroupAnalysisTaskList_Export(VisitTaskQuery queryVisitTask,
|
||||
|
@ -979,7 +978,7 @@ namespace IRaCIS.Core.Application.Service.Common
|
|||
[FromServices] IDictionaryService _dictionaryService,
|
||||
[FromServices] IRepository<Trial> _trialRepository)
|
||||
{
|
||||
var criterion = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == queryVisitTask.TrialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstOrDefaultAsync();
|
||||
var criterion = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == queryVisitTask.TrialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstNotNullAsync();
|
||||
|
||||
if (criterion.CriterionType != CriterionType.RECIST1Point1)
|
||||
{
|
||||
|
@ -1101,7 +1100,7 @@ namespace IRaCIS.Core.Application.Service.Common
|
|||
{
|
||||
|
||||
var list = new List<ExportDocumentDes>();
|
||||
var criterion = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == trialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstOrDefaultAsync();
|
||||
var criterion = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.Id == trialReadingCriterionId).Select(t => new { t.CriterionType, t.CriterionName }).FirstNotNullAsync();
|
||||
|
||||
if (criterion.CriterionType == CriterionType.RECIST1Point1)
|
||||
{
|
||||
|
|
|
@ -602,7 +602,7 @@ namespace IRaCIS.Application.Services
|
|||
public async Task<Guid> DoctorJoinTrialEmail(Guid trialId, Guid doctorId, string baseUrl, string rootUrl)
|
||||
{
|
||||
var doctor = await _doctorTypeRepository.FindAsync(doctorId);
|
||||
User sysUserInfo = null;
|
||||
User sysUserInfo = new User();
|
||||
|
||||
var userType = await _userTypeRepository.FirstAsync(t => t.UserTypeEnum == UserTypeEnum.IndependentReviewer);
|
||||
|
||||
|
|
|
@ -38,7 +38,6 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
private readonly IRepository<TrialEmailNoticeConfig> _trialEmailNoticeConfigRepository;
|
||||
|
||||
private readonly IRepository<EmailNoticeConfig> _emailNoticeConfigRepository;
|
||||
|
||||
private readonly IRepository<Trial> _trialRepository;
|
||||
|
||||
|
@ -46,10 +45,9 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
public static string EmailNamePlaceholder => StaticData. EmailSend.EmailNamePlaceholder;
|
||||
|
||||
public EmailSendService(IRepository<TrialEmailNoticeConfig> trialEmailNoticeConfigRepository, IRepository<EmailNoticeConfig> emailNoticeConfigRepository, IRepository<Trial> trialRepository, IOptionsMonitor<SystemEmailSendConfig> systemEmailSendConfig)
|
||||
public EmailSendService(IRepository<TrialEmailNoticeConfig> trialEmailNoticeConfigRepository, IRepository<Trial> trialRepository, IOptionsMonitor<SystemEmailSendConfig> systemEmailSendConfig)
|
||||
{
|
||||
_trialEmailNoticeConfigRepository = trialEmailNoticeConfigRepository;
|
||||
_emailNoticeConfigRepository = emailNoticeConfigRepository;
|
||||
_trialRepository = trialRepository;
|
||||
_SystemEmailSendConfig = systemEmailSendConfig;
|
||||
}
|
||||
|
@ -186,7 +184,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
public async Task SendTrialQCQuestionEmailAsync(Guid trialId)
|
||||
{
|
||||
var isEn_us = false;
|
||||
var trialInfo = _repository.Where<Trial>(t => t.Id == trialId).Select(t => new { t.ResearchProgramNo, t.ExperimentName, t.TrialCode, t.TrialStatusStr, t.DeclarationTypeEnumList }).FirstOrDefault();
|
||||
var trialInfo =await _repository.Where<Trial>(t => t.Id == trialId).Select(t => new { t.ResearchProgramNo, t.ExperimentName, t.TrialCode, t.TrialStatusStr, t.DeclarationTypeEnumList }).FirstNotNullAsync();
|
||||
|
||||
//找到 该项目的IQC 用户Id
|
||||
var userList = await _repository.Where<TrialUser>(t => t.TrialId == trialId).Where(t => t.User.UserTypeEnum == UserTypeEnum.IQC).Select(t => new { t.UserId, t.User.FullName }).ToListAsync();
|
||||
|
@ -241,7 +239,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
var isEn_us = false;
|
||||
|
||||
var trialInfo = _repository.Where<Trial>(t => t.Id == trialId).Select(t => new { t.ResearchProgramNo, t.ExperimentName, t.TrialCode, t.TrialStatusStr }).FirstOrDefault();
|
||||
var trialInfo = await _repository.Where<Trial>(t => t.Id == trialId).Select(t => new { t.ResearchProgramNo, t.ExperimentName, t.TrialCode, t.TrialStatusStr }).FirstNotNullAsync();
|
||||
|
||||
//找到 该项目的CRC 用户Id
|
||||
var userList = await _repository.Where<TrialUser>(t => t.TrialId == trialId).Where(t => t.User.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator).Select(t => new { t.UserId, t.User.FullName }).ToListAsync();
|
||||
|
|
|
@ -84,7 +84,7 @@ namespace IRaCIS.Core.Application.Services
|
|||
PageSize = 1,
|
||||
});
|
||||
|
||||
if (result.Data.CurrentPageData.Count() > 0)
|
||||
if (result.Data.CurrentPageData.Count > 0)
|
||||
{
|
||||
return result.Data.CurrentPageData.First();
|
||||
}
|
||||
|
@ -165,7 +165,7 @@ namespace IRaCIS.Core.Application.Services
|
|||
|
||||
var trialId = querySystemDocument.TrialId;
|
||||
|
||||
var trialInfo = await (_repository.Where<Trial>(t => t.Id == querySystemDocument.TrialId,ignoreQueryFilters:true).Select(t => new { t.TrialFinishedTime, t.TrialStatusStr }).FirstOrDefaultAsync());
|
||||
var trialInfo = await (_repository.Where<Trial>(t => t.Id == querySystemDocument.TrialId,ignoreQueryFilters:true).Select(t => new { t.TrialFinishedTime, t.TrialStatusStr }).FirstNotNullAsync());
|
||||
|
||||
//系统文档查询
|
||||
var systemDocumentQueryable = from needConfirmedUserType in _repository.Where<SystemDocNeedConfirmedUserType>(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId)
|
||||
|
@ -335,7 +335,7 @@ namespace IRaCIS.Core.Application.Services
|
|||
|
||||
#endregion
|
||||
|
||||
var trialInfo = (await _repository.Where<Trial>(t => t.Id == querySystemDocument.TrialId).Select(t => new { t.TrialFinishedTime, t.TrialStatusStr }).FirstOrDefaultAsync());
|
||||
var trialInfo = (await _repository.Where<Trial>(t => t.Id == querySystemDocument.TrialId).Select(t => new { t.TrialFinishedTime, t.TrialStatusStr }).FirstNotNullAsync());
|
||||
|
||||
var trialDocQuery = from trialDocumentNeedConfirmedUserType in _repository.Where<TrialDocNeedConfirmedUserType>(t => t.TrialDocument.TrialId == querySystemDocument.TrialId)
|
||||
join trialUser in _repository.Where<TrialUser>(t => t.TrialId == querySystemDocument.TrialId)
|
||||
|
|
|
@ -366,7 +366,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
resultJsonStrList.Add(auditData?.JsonStr);
|
||||
});
|
||||
|
||||
if (resultJsonStrList.Count() < 2)
|
||||
if (resultJsonStrList.Count < 2)
|
||||
{
|
||||
resultJsonStrList.Add(String.Empty);
|
||||
}
|
||||
|
|
|
@ -29,7 +29,7 @@ namespace IRaCIS.Core.Application.Service.Inspection
|
|||
{
|
||||
//_repository.GetQueryable.GetQueryable < DataInspection >
|
||||
|
||||
var trialData = await _repository.GetQueryable<Trial>().Where(x => x.Id == dto.TrialId).AsNoTracking().FirstOrDefaultAsync();
|
||||
var trialData = await _repository.GetQueryable<Trial>().Where(x => x.Id == dto.TrialId).AsNoTracking().FirstNotNullAsync();
|
||||
|
||||
|
||||
trialData.TrialFinishTime = trialData.TrialFinishTime == null ? DateTime.Now : trialData.TrialFinishTime;
|
||||
|
|
|
@ -175,13 +175,13 @@ namespace IRaCIS.Application.Services
|
|||
.Where(t => t.UserTypeId == _userInfo.UserTypeId && (t.Menu.MenuType == "M" || t.Menu.MenuType == "C") && t.Menu.IsEnable)
|
||||
.ProjectTo<MenuTreeNode>(_mapper.ConfigurationProvider).ToListAsync();
|
||||
|
||||
var list = menuFunctionlist.ToTree((root, child) => child.ParentId == Guid.Empty,
|
||||
(root, child) => child.ParentId == root.MenuId,
|
||||
var list = menuFunctionlist!.ToTree((root, child) => child!.ParentId == Guid.Empty,
|
||||
(root, child) => child!.ParentId == root!.MenuId,
|
||||
(child, datalist) =>
|
||||
{
|
||||
child.Children ??= new List<MenuTreeNode>();
|
||||
child!.Children ??= new List<MenuTreeNode>();
|
||||
child.Children.AddRange(datalist);
|
||||
}, item => item.ShowOrder);
|
||||
}, item => item!.ShowOrder);
|
||||
|
||||
return list;
|
||||
}
|
||||
|
|
|
@ -891,7 +891,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
|
||||
if (nextIQCQuality.VisitId != null)
|
||||
{
|
||||
var visit = await _subjectVisitRepository.Where(x => x.Id == nextIQCQuality.VisitId).FirstOrDefaultAsync();
|
||||
var visit = await _subjectVisitRepository.Where(x => x.Id == nextIQCQuality.VisitId).FirstNotNullAsync();
|
||||
if (!visit.IsTake)
|
||||
{
|
||||
await ObtainOrCancelQCTask(inDto.TrialId, nextIQCQuality.VisitId.Value, true);
|
||||
|
@ -1173,7 +1173,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
var dbSubjectVisitList = await _subjectVisitRepository.Where(t => cRCRequestToQCCommand.SubjectVisitIds.Contains(t.Id), true).ProjectTo<QCCRCVisitViewModel>(_mapper.ConfigurationProvider).ToListAsync();
|
||||
|
||||
//普通提交
|
||||
if (dbSubjectVisitList.Count() == 1)
|
||||
if (dbSubjectVisitList.Count == 1)
|
||||
{
|
||||
var sv = dbSubjectVisitList[0];
|
||||
|
||||
|
@ -1182,7 +1182,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
if (sv.PDState == PDStateEnum.PDProgress)
|
||||
{
|
||||
|
||||
if (nameList.Count() > 0)
|
||||
if (nameList.Count > 0)
|
||||
{
|
||||
//$"当前访视要求进行疾病进展确认。请在提交当前访视前,先处理未提交的前序访视:{string.Join('、', nameList)}。"
|
||||
return ResponseOutput.NotOk(_localizer["QCOperation_DiseaseProgressConfirmation", string.Join('、', nameList)], 1, ApiResponseCodeEnum.NeedTips);
|
||||
|
@ -1190,7 +1190,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
}
|
||||
else
|
||||
{
|
||||
if (nameList.Count() > 0)
|
||||
if (nameList.Count > 0)
|
||||
{
|
||||
//$"在提交当前访视后,请尽快处理尚未提交的前序访视:{string.Join('、', nameList)}。"
|
||||
return ResponseOutput.NotOk(_localizer["QCOperation_UnsubmittedVisits", string.Join('、', nameList)], 0, ApiResponseCodeEnum.NeedTips);
|
||||
|
@ -1246,7 +1246,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
}
|
||||
|
||||
//单个提交提示信息
|
||||
if (dbSubjectVisitList.Count() == 1 && dbSubjectVisitList.First().SubmitState == SubmitStateEnum.Submitted)
|
||||
if (dbSubjectVisitList.Count == 1 && dbSubjectVisitList.First().SubmitState == SubmitStateEnum.Submitted)
|
||||
{
|
||||
//---当前访视的影像数据,已经由其他CRC提交。
|
||||
return ResponseOutput.NotOk(_localizer["QCOperation_ImagesSubmitted"], 3, ApiResponseCodeEnum.NeedTips);
|
||||
|
|
|
@ -26,7 +26,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
.ForMember(d => d.SubmitUserName, u => u.MapFrom(s => s.SubmitUser.FullName))
|
||||
|
||||
.ForMember(d => d.IsHaveClinicalData, u => u.MapFrom(t => t.IsBaseLine ? t.PreviousHistoryList.Any() || t.PreviousOtherList.Any()
|
||||
|| t.ReadingClinicalDataList.Any(x => x.ClinicalDataTrialSet.UploadRole == Domain.Share.UploadRole.CRC && x.ReadingClinicalDataPDFList.Count() > 0)
|
||||
|| t.ReadingClinicalDataList.Any(x => x.ClinicalDataTrialSet.UploadRole == Domain.Share.UploadRole.CRC && x.ReadingClinicalDataPDFList.Count > 0)
|
||||
|| t.PreviousSurgeryList.Any() : false));
|
||||
|
||||
|
||||
|
@ -157,8 +157,8 @@ namespace IRaCIS.Core.Application.Service
|
|||
.ForMember(o => o.SubjectCode, t => t.MapFrom(u => u.Subject.Code))
|
||||
.ForMember(o => o.IsBaseline, t => t.MapFrom(u => u.SourceSubjectVisit.IsBaseLine))
|
||||
.ForMember(o => o.EvaluateResult, t => t.MapFrom(u =>
|
||||
u.SourceSubjectVisit.IsBaseLine? u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.ExistDisease).FirstOrDefault().Answer
|
||||
: u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.Tumor).FirstOrDefault().Answer ))
|
||||
u.SourceSubjectVisit.IsBaseLine? u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.ExistDisease).FirstOrDefault()!.Answer
|
||||
: u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.Tumor).FirstOrDefault()!.Answer ))
|
||||
|
||||
.ForMember(o => o.UserName, t => t.MapFrom(u => u.DoctorUser.UserName));
|
||||
|
||||
|
@ -175,9 +175,9 @@ namespace IRaCIS.Core.Application.Service
|
|||
.ForMember(o => o.JudgeArmEnum, t => t.MapFrom(u => u.JudgeResultTask.ArmEnum))
|
||||
|
||||
.ForMember(o => o.OverallTumorEvaluationResult, t => t.MapFrom(u =>
|
||||
criterionType == CriterionType.RECIST1Point1 ?( u.SourceSubjectVisit.IsBaseLine==true ? u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.ExistDisease).FirstOrDefault().Answer:
|
||||
u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.Tumor).FirstOrDefault().Answer)
|
||||
: criterionType == CriterionType.PCWG3 ? u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.SiteVisitForTumorEvaluation).FirstOrDefault().Answer : String.Empty
|
||||
criterionType == CriterionType.RECIST1Point1 ?( u.SourceSubjectVisit.IsBaseLine==true ? u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.ExistDisease).FirstOrDefault()!.Answer:
|
||||
u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.Tumor).FirstOrDefault()!.Answer)
|
||||
: criterionType == CriterionType.PCWG3 ? u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.SiteVisitForTumorEvaluation).FirstOrDefault()!.Answer : String.Empty
|
||||
))
|
||||
|
||||
.ForMember(o => o.TrialSiteCode, t => t.MapFrom(u => u.Subject.TrialSite.TrialSiteCode))
|
||||
|
@ -185,9 +185,9 @@ namespace IRaCIS.Core.Application.Service
|
|||
.ForMember(o => o.UserName, t => t.MapFrom(u => u.DoctorUser.UserName));
|
||||
|
||||
CreateMap<VisitTask, RECIST1Point1EvaluationOfTumorEfficacyExport>().IncludeBase<VisitTask, OverallTumorEvaluationExport>()
|
||||
.ForMember(o => o.TargetlesionEvaluationResult, t => t.MapFrom(u => u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.TargetLesion).FirstOrDefault().Answer))
|
||||
.ForMember(o => o.NoneTargetlesionEvaluationResult, t => t.MapFrom(u => u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.NoTargetLesion).FirstOrDefault().Answer))
|
||||
.ForMember(o => o.IsExistNewlesionEvaluationResult, t => t.MapFrom(u => u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.NewLesions).FirstOrDefault().Answer))
|
||||
.ForMember(o => o.TargetlesionEvaluationResult, t => t.MapFrom(u => u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.TargetLesion).FirstOrDefault()!.Answer))
|
||||
.ForMember(o => o.NoneTargetlesionEvaluationResult, t => t.MapFrom(u => u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.NoTargetLesion).FirstOrDefault()!.Answer))
|
||||
.ForMember(o => o.IsExistNewlesionEvaluationResult, t => t.MapFrom(u => u.ReadingTaskQuestionAnswerList.Where(c => c.ReadingQuestionTrial.QuestionType == QuestionType.NewLesions).FirstOrDefault()!.Answer))
|
||||
|
||||
//.ForMember(o => o.TrialSiteCode, t => t.MapFrom(u => u.Subject.TrialSite.TrialSiteCode))
|
||||
//.ForMember(o => o.SubjectCode, t => t.MapFrom(u => u.Subject.Code))
|
||||
|
@ -201,13 +201,13 @@ namespace IRaCIS.Core.Application.Service
|
|||
CreateMap<ReadingTableAnswerRowInfo, RECIST1Point1LessionInfo>()
|
||||
.ForMember(o => o.LessionCode, t => t.MapFrom(u => u.RowMark))
|
||||
.ForMember(o => o.LessionType, t => t.MapFrom(u =>(int?) u.ReadingQuestionTrial.LesionType))
|
||||
.ForMember(o => o.IsLymph, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.IsLymph).FirstOrDefault().Answer))
|
||||
.ForMember(o => o.IsLymph, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.IsLymph).FirstOrDefault()!.Answer))
|
||||
|
||||
//位置可能是自己填写的
|
||||
.ForMember(o => o.LessionLocation, t =>
|
||||
//t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.Location).FirstOrDefault().Answer)
|
||||
t.MapFrom(u => u.OrganInfo.IsCanEditPosition?
|
||||
u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.Location).FirstOrDefault().Answer: isEn_Us ? u.OrganInfo.TULATEN : u.OrganInfo.TULAT)
|
||||
u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.Location).FirstOrDefault()!.Answer: isEn_Us ? u.OrganInfo.TULATEN : u.OrganInfo.TULAT)
|
||||
)
|
||||
.ForMember(o => o.LessionOrgan, t =>
|
||||
//t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.Organ).FirstOrDefault().Answer)
|
||||
|
@ -220,9 +220,9 @@ namespace IRaCIS.Core.Application.Service
|
|||
)
|
||||
|
||||
//.ForMember(o => o.MeasurementResult, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.Location).FirstOrDefault().Answer))
|
||||
.ForMember(o => o.LongDiameter, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.MajorAxis).FirstOrDefault().Answer))
|
||||
.ForMember(o => o.ShortDiameter, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.ShortAxis).FirstOrDefault().Answer))
|
||||
.ForMember(o => o.LessionState, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State).FirstOrDefault().Answer));
|
||||
.ForMember(o => o.LongDiameter, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.MajorAxis).FirstOrDefault()!.Answer))
|
||||
.ForMember(o => o.ShortDiameter, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.ShortAxis).FirstOrDefault()!.Answer))
|
||||
.ForMember(o => o.LessionState, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State).FirstOrDefault()!.Answer));
|
||||
|
||||
|
||||
CreateMap<VisitTask, PCWG3DetailedOfEvaluatedLesionExport>().IncludeBase<VisitTask, OverallTumorEvaluationExport>()
|
||||
|
@ -237,7 +237,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
.ForMember(o => o.LessionLocation, t =>
|
||||
//t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.Location).FirstOrDefault().Answer)
|
||||
t.MapFrom(u => u.OrganInfo.IsCanEditPosition ?
|
||||
u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.Location).FirstOrDefault().Answer : isEn_Us ? u.OrganInfo.TULATEN : u.OrganInfo.TULAT)
|
||||
u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.Location).FirstOrDefault()!.Answer : isEn_Us ? u.OrganInfo.TULATEN : u.OrganInfo.TULAT)
|
||||
)
|
||||
|
||||
.ForMember(o => o.LessionOrgan, t =>
|
||||
|
@ -248,7 +248,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
//t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.Part).FirstOrDefault().Answer)
|
||||
t.MapFrom(u => isEn_Us ? u.OrganInfo.PartEN : u.OrganInfo.Part)
|
||||
)
|
||||
.ForMember(o => o.LessionState, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State).FirstOrDefault().Answer));
|
||||
.ForMember(o => o.LessionState, t => t.MapFrom(u => u.LesionAnswerList.Where(c => c.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State).FirstOrDefault()!.Answer));
|
||||
|
||||
#endregion
|
||||
|
||||
|
@ -369,7 +369,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
.ForMember(d => d.ReviewAuditUserName, u => u.MapFrom(s => s.ReviewAuditUser.UserName))
|
||||
.ForMember(d => d.IsHaveClinicalData, u => u.MapFrom(t => t.PreviousHistoryList.Any() || t.PreviousOtherList.Any()
|
||||
|| t.Subject.ClinicalFormList.Any(x => x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC && x.ReadingId == t.Id)
|
||||
|| t.ReadingClinicalDataList.Any(x => x.ClinicalDataTrialSet.UploadRole == Domain.Share.UploadRole.CRC && x.ReadingClinicalDataPDFList.Count() > 0)
|
||||
|| t.ReadingClinicalDataList.Any(x => x.ClinicalDataTrialSet.UploadRole == Domain.Share.UploadRole.CRC && x.ReadingClinicalDataPDFList.Count > 0)
|
||||
|| t.PreviousSurgeryList.Any()))
|
||||
.ForMember(d => d.DicomStudyCount, u => u.MapFrom(t => t.StudyList.Count()))
|
||||
.ForMember(d => d.NoneDicomStudyCount, u => u.MapFrom(t => t.NoneDicomStudyList.Count(t => t.NoneDicomFileList.Any())));
|
||||
|
@ -388,7 +388,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
.ForMember(d => d.Age, u => u.MapFrom(t => t.Subject.Age))
|
||||
.ForMember(d => d.IsHaveClinicalData, u => u.MapFrom(t => t.PreviousHistoryList.Any() || t.PreviousOtherList.Any()
|
||||
|| t.Subject.ClinicalFormList.Any(x=>x.ClinicalDataTrialSet.UploadRole==UploadRole.CRC&& x.ReadingId==t.Id)
|
||||
|| t.ReadingClinicalDataList.Any(x => x.ClinicalDataTrialSet.UploadRole == Domain.Share.UploadRole.CRC && x.ReadingClinicalDataPDFList.Count() > 0)
|
||||
|| t.ReadingClinicalDataList.Any(x => x.ClinicalDataTrialSet.UploadRole == Domain.Share.UploadRole.CRC && x.ReadingClinicalDataPDFList.Count > 0)
|
||||
|| t.PreviousSurgeryList.Any()))
|
||||
|
||||
//.ForMember(d => d.VisitName, u => u.MapFrom(t =>t.InPlan? t.VisitStage.VisitName : t.VisitName))
|
||||
|
|
|
@ -320,7 +320,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
throw new BusinessValidationFailedException(_localizer["ReadingMed_NoMedQ"]);
|
||||
}
|
||||
|
||||
if (readingMedicineQuestionList.Count() != readingMedicineQuestionList.Select(t => t.ShowOrder).Distinct().Count())
|
||||
if (readingMedicineQuestionList.Count != readingMedicineQuestionList.Select(t => t.ShowOrder).Distinct().Count())
|
||||
{
|
||||
//---影像医学审核问题显示序号不能重复。
|
||||
throw new BusinessValidationFailedException(_localizer["ReadingMed_MedQNumDup"]);
|
||||
|
@ -397,7 +397,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
throw new BusinessValidationFailedException(_localizer["ReadingMed_NoMedQ"]);
|
||||
}
|
||||
|
||||
if (readingMedicineQuestionList.Count() != readingMedicineQuestionList.Select(t => t.ShowOrder).Distinct().Count())
|
||||
if (readingMedicineQuestionList.Count != readingMedicineQuestionList.Select(t => t.ShowOrder).Distinct().Count())
|
||||
{
|
||||
//---影像医学审核问题显示序号不能重复。
|
||||
throw new BusinessValidationFailedException(_localizer["ReadingMed_MedQNumDup"]);
|
||||
|
@ -476,13 +476,13 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
var questionlist =await _readingMedicineTrialQuestionRepository.Where(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId).ToListAsync();
|
||||
|
||||
var count = inDto.Ids.Count();
|
||||
var count = inDto.Ids.Count;
|
||||
var childids = inDto.Ids.Clone();
|
||||
while (count > 0)
|
||||
{
|
||||
childids = questionlist.Where(x => childids.Contains(x.ParentId ?? default(Guid))).Select(x => x.Id).ToList();
|
||||
inDto.Ids.AddRange(childids);
|
||||
count = childids.Count();
|
||||
count = childids.Count;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -372,7 +372,6 @@ namespace IRaCIS.Application.Services
|
|||
/// <summary>
|
||||
/// 新增修改系统表格问题
|
||||
/// </summary>
|
||||
/// <param name="addOrEditReadingTableQuestionSystem"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput> AddOrUpdateReadingTableQuestionSystem(ReadingTableQuestionSystemAddOrEdit indto)
|
||||
|
@ -1258,7 +1257,7 @@ namespace IRaCIS.Application.Services
|
|||
|
||||
var systemQuestionList = await _readingQuestionSystemRepository.Where(x => x.IsJudgeQuestion && x.ReadingQuestionCriterionSystemId == trialCriterion.ReadingQuestionCriterionSystemId).ToListAsync();
|
||||
var trialQuestionList = await _readingQuestionTrialRepository.Where(x => x.IsJudgeQuestion && x.ReadingQuestionCriterionTrialId == trialCriterion.Id).ToListAsync();
|
||||
if (systemQuestionList.Count() != trialQuestionList.Count())
|
||||
if (systemQuestionList.Count != trialQuestionList.Count)
|
||||
{
|
||||
return NeedSynchronize.JudgeNotEqual;
|
||||
}
|
||||
|
|
|
@ -559,7 +559,7 @@ namespace IRaCIS.Application.Services
|
|||
VisitTaskId = item.VisitTaskId,
|
||||
});
|
||||
|
||||
item.IsExistsClinicalData = clinicalDataList.Count() > 0;
|
||||
item.IsExistsClinicalData = clinicalDataList.Count > 0;
|
||||
}
|
||||
|
||||
|
||||
|
@ -1159,7 +1159,7 @@ namespace IRaCIS.Application.Services
|
|||
this.FindChildQuestion(x, newPageQusetionList, tableQuestionList, inDto.TableAnswers, inDto.TableAnsweRowInfos, inDto.OrganInfos, baseLineTableAnswer, isFirstChangeTask, lastTaskTableAnswer, inDto.TaskId);
|
||||
});
|
||||
|
||||
page.Childrens = pageGroupList.Where(x => !(x.Type == ReadingQestionType.Group && x.Childrens.Count() == 0)).ToList();
|
||||
page.Childrens = pageGroupList.Where(x => !(x.Type == ReadingQestionType.Group && x.Childrens.Count == 0)).ToList();
|
||||
groupList.Add(page);
|
||||
}
|
||||
|
||||
|
@ -1176,7 +1176,7 @@ namespace IRaCIS.Application.Services
|
|||
this.FindChildQuestion(x, qusetionList, tableQuestionList, inDto.TableAnswers, inDto.TableAnsweRowInfos, inDto.OrganInfos, baseLineTableAnswer, isFirstChangeTask, lastTaskTableAnswer, inDto.TaskId);
|
||||
});
|
||||
|
||||
groupList = groupList.Where(x => !(x.Type == ReadingQestionType.Group && x.Childrens.Count() == 0)).ToList();
|
||||
groupList = groupList.Where(x => !(x.Type == ReadingQestionType.Group && x.Childrens.Count == 0)).ToList();
|
||||
|
||||
result.SinglePage = groupList;
|
||||
|
||||
|
@ -1436,7 +1436,7 @@ namespace IRaCIS.Application.Services
|
|||
|
||||
var rowsInfo = await _readingTableAnswerRowInfoRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId && (x.Id == inDto.MainRowId || x.Id == inDto.MergeRowId)).ToListAsync();
|
||||
|
||||
if (rowsInfo.Count() != 2)
|
||||
if (rowsInfo.Count != 2)
|
||||
{
|
||||
throw new BusinessValidationFailedException(_localizer["ReadingImage_NotaTask"]);
|
||||
}
|
||||
|
@ -2071,7 +2071,7 @@ namespace IRaCIS.Application.Services
|
|||
}
|
||||
var isCurrentTaskAddList = await _readingTableAnswerRowInfoRepository.Where(x => x.Id == (inDto.RowId ?? default(Guid))).Select(x => x.IsCurrentTaskAdd).ToListAsync();
|
||||
bool isCurrentTaskAdd = true;
|
||||
if (isCurrentTaskAddList.Count() > 0)
|
||||
if (isCurrentTaskAddList.Count > 0)
|
||||
{
|
||||
isCurrentTaskAdd = isCurrentTaskAddList[0];
|
||||
}
|
||||
|
@ -2274,7 +2274,7 @@ namespace IRaCIS.Application.Services
|
|||
|
||||
readingQuestionList = readingQuestionList.Where(x => !answerQuestionIds.Contains(x.Id)).ToList();
|
||||
|
||||
if (readingQuestionList.Count() > 0)
|
||||
if (readingQuestionList.Count > 0)
|
||||
{
|
||||
throw new BusinessValidationFailedException(_localizer["ReadingImage_RequiredQuestion", string.Join(',', readingQuestionList.Select(x => x.QuestionName.LanguageName(x.QuestionEnName, _userInfo.IsEn_Us)))]);
|
||||
}
|
||||
|
@ -2320,7 +2320,7 @@ namespace IRaCIS.Application.Services
|
|||
|
||||
readingQuestionList = readingQuestionList.Where(x => !answerQuestionIds.Contains(x.Id)).ToList();
|
||||
|
||||
if (readingQuestionList.Count() > 0)
|
||||
if (readingQuestionList.Count > 0)
|
||||
{
|
||||
throw new BusinessValidationFailedException(_localizer["ReadingImage_RequiredQuestion", string.Join(',', readingQuestionList.Select(x => x.QuestionName.LanguageName(x.QuestionEnName, _userInfo.IsEn_Us)))]);
|
||||
}
|
||||
|
@ -2346,7 +2346,7 @@ namespace IRaCIS.Application.Services
|
|||
|
||||
if (isBaseLine)
|
||||
{
|
||||
isNeedReadClinicalData = clinicalDataList.Count() > 0;
|
||||
isNeedReadClinicalData = clinicalDataList.Count > 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -2532,12 +2532,12 @@ namespace IRaCIS.Application.Services
|
|||
VisitTaskId = task.VisitTaskId,
|
||||
});
|
||||
|
||||
task.IsExistsClinicalData = clinicalDataList.Count() > 0;
|
||||
task.IsExistsClinicalData = clinicalDataList.Count > 0;
|
||||
task.IsReadClinicalData = visitTaskInfo.IsReadClinicalData;
|
||||
|
||||
if (isBaseLine)
|
||||
{
|
||||
task.IsNeedReadClinicalData = clinicalDataList.Count() > 0;
|
||||
task.IsNeedReadClinicalData = clinicalDataList.Count > 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -2553,7 +2553,7 @@ namespace IRaCIS.Application.Services
|
|||
task.IsConvertedTask = visitTaskInfo.IsConvertedTask;
|
||||
var blindSubjectCode = await _visitTaskRepository.Where(x => x.Id == task.VisitTaskId).Select(x => x.BlindSubjectCode).FirstNotNullAsync();
|
||||
task.SubjectCode = blindSubjectCode.IsNullOrEmpty() ? task.SubjectCode : blindSubjectCode;
|
||||
task.ExistsManual = (await GetManualList(new GetManualListInDto() { TrialId = visitTaskInfo.TrialId })).Count() > 0;
|
||||
task.ExistsManual = (await GetManualList(new GetManualListInDto() { TrialId = visitTaskInfo.TrialId })).Count > 0;
|
||||
task.ReadingTaskState = visitTaskInfo.ReadingTaskState;
|
||||
return task;
|
||||
}
|
||||
|
|
|
@ -182,7 +182,6 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
/// <summary>
|
||||
/// 获取阅片报告
|
||||
/// </summary>
|
||||
/// <param name="indto"></param>
|
||||
/// <returns></returns>
|
||||
public async Task<GetReadingReportEvaluationOutDto> GetReadingReportEvaluation(GetReadingReportEvaluationInDto inDto)
|
||||
{
|
||||
|
|
|
@ -49,11 +49,11 @@ namespace IRaCIS.Core.Application
|
|||
//正参与的数量
|
||||
TrialCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
|
||||
? await _trialRepository.CountAsync()
|
||||
: await _trialUserRepository.Where(t => t.UserId == _userInfo.Id).CountAsync(),
|
||||
: await _trialUserRepository.Where(t => t.UserId == _userInfo.Id && t.Trial.IsDeleted==false).CountAsync(),
|
||||
|
||||
DeletedCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
|
||||
? await _trialRepository.AsQueryable(true).CountAsync(t => t.IsDeleted)
|
||||
: await _trialUserRepository.AsQueryable(true).Where(t => t.UserId == _userInfo.Id && t.IsDeleted)
|
||||
: await _trialUserRepository.AsQueryable(true).Where(t => t.UserId == _userInfo.Id && t.Trial.IsDeleted)
|
||||
.CountAsync(),
|
||||
|
||||
|
||||
|
@ -744,7 +744,7 @@ namespace IRaCIS.Core.Application
|
|||
|
||||
|
||||
//待领取量
|
||||
ToBeClaimedCount = t.SubjectVisitList.Where(u => u.CurrentActionUserId == null && (u.PreliminaryAuditUserId == null || (u.PreliminaryAuditUserId != _userInfo.Id && u.ReviewAuditUserId == null))).Count(),
|
||||
ToBeClaimedCount = t.SubjectVisitList.Where(t=>t.SubmitState==SubmitStateEnum.Submitted).Where(u => u.CurrentActionUserId == null && (u.PreliminaryAuditUserId == null || (u.PreliminaryAuditUserId != _userInfo.Id && u.ReviewAuditUserId == null))).Count(),
|
||||
|
||||
//待审核通过,统计从已领取到QC提交之间的 已领取 待审核 审核中 (审核完成 领取人就会清理 所以只用查询当前领取人是自己的就好了)
|
||||
ToBeReviewedCount = t.SubjectVisitList.Where(u => u.CurrentActionUserId == _userInfo.Id).Count()
|
||||
|
|
|
@ -109,7 +109,7 @@ namespace IRaCIS.Core.Application
|
|||
[HttpPost]
|
||||
public async Task<IResponseOutput> TrialReadingInfoSignVerify(TrialReadingInfoSignInDto inDto)
|
||||
{
|
||||
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstOrDefaultAsync();
|
||||
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstNotNullAsync();
|
||||
var existsJudge = await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrialId == trialCriterion.Id && x.IsJudgeQuestion && x.JudgeType == JudgeTypeEnum.None)
|
||||
.WhereIf(trialCriterion.FormType == FormType.SinglePage, x => x.ReadingCriterionPageId == null)
|
||||
.WhereIf(trialCriterion.FormType == FormType.MultiplePage, x => x.ReadingCriterionPageId != null)
|
||||
|
@ -149,7 +149,7 @@ namespace IRaCIS.Core.Application
|
|||
[NonDynamicMethod]
|
||||
public async Task<IResponseOutput> TrialReadingInfoSign(TrialReadingInfoSignInDto inDto)
|
||||
{
|
||||
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstOrDefaultAsync();
|
||||
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstNotNullAsync();
|
||||
|
||||
var existsJudge = await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrialId == trialCriterion.Id && x.IsJudgeQuestion && x.JudgeType == JudgeTypeEnum.None)
|
||||
.WhereIf(trialCriterion.FormType == FormType.SinglePage, x => x.ReadingCriterionPageId == null)
|
||||
|
@ -458,7 +458,7 @@ namespace IRaCIS.Core.Application
|
|||
[HttpPost]
|
||||
public async Task<(List<TrialJudgeQuestion>, object)> GetTrialReadingJudgeList(GetTrialReadingInfoInDto inDto)
|
||||
{
|
||||
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstOrDefaultAsync();
|
||||
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstNotNullAsync();
|
||||
|
||||
var judgeQuestionList = await _readingQuestionTrialRepository
|
||||
.WhereIf(trialCriterion.FormType == FormType.SinglePage, x => x.ReadingCriterionPageId == null)
|
||||
|
@ -506,7 +506,7 @@ namespace IRaCIS.Core.Application
|
|||
{
|
||||
GetTrialReadingCriterionInfoOutDto result = new GetTrialReadingCriterionInfoOutDto();
|
||||
result.ReadingCriterionPageList = await _readingCriterionPageRepository.Where(x => x.TrialId == inDto.TrialId).ProjectTo<ReadingCriterionPageDto>(_mapper.ConfigurationProvider).OrderBy(x => x.ShowOrder).ToListAsync();
|
||||
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstOrDefaultAsync();
|
||||
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstNotNullAsync();
|
||||
result.ReadingInfoSignTime = trialCriterion.ReadingInfoSignTime;
|
||||
|
||||
result.DigitPlaces = trialCriterion.DigitPlaces;
|
||||
|
@ -804,7 +804,7 @@ namespace IRaCIS.Core.Application
|
|||
}
|
||||
}
|
||||
|
||||
if (showOrderList.Count() != showOrderList.Select(t => t.ShowOrder).Distinct().Count())
|
||||
if (showOrderList.Count != showOrderList.Select(t => t.ShowOrder).Distinct().Count())
|
||||
{
|
||||
//---影像质控审核问题显示序号不能重复。
|
||||
throw new BusinessValidationFailedException(_localizer["TrialConfig_DuplicateAuditQuestionId"]);
|
||||
|
@ -874,7 +874,7 @@ namespace IRaCIS.Core.Application
|
|||
}
|
||||
}
|
||||
|
||||
if (showOrderList.Count() != showOrderList.Select(t => t.ShowOrder).Distinct().Count())
|
||||
if (showOrderList.Count != showOrderList.Select(t => t.ShowOrder).Distinct().Count())
|
||||
{
|
||||
//---影像质控审核问题显示序号不能重复。
|
||||
throw new BusinessValidationFailedException(_localizer["TrialConfig_DuplicateAuditQuestionId"]);
|
||||
|
|
|
@ -563,41 +563,7 @@ namespace IRaCIS.Application.Services
|
|||
|
||||
}
|
||||
|
||||
[AllowAnonymous]
|
||||
[HttpDelete, Route("{trialId:guid}")]
|
||||
public async Task<IResponseOutput> DeleteTrialTaskData(Guid trialId)
|
||||
{
|
||||
|
||||
//await _repository.BatchDeleteAsync<ReadingMedicineTrialQuestion>(t => t.TrialId == trialId) ||
|
||||
// await _repository.BatchDeleteAsync<ReadingQuestionTrial>(t => t.TrialId == trialId) ||
|
||||
// await _repository.BatchDeleteAsync<ReadingTableQuestionTrial>(t => t.TrialId == trialId) ||
|
||||
|
||||
|
||||
|
||||
|
||||
//await _repository.BatchDeleteAsync<ReadingGlobalTaskInfo>(t => t.TrialId == trialId);
|
||||
// await _repository.BatchDeleteAsync<ReadingJudgeInfo>(t => t.TrialId == trialId);
|
||||
|
||||
|
||||
// await _repository.BatchDeleteAsync<ReadingMedicalReviewDialog>(t => t.TaskMedicalReview.TrialId == trialId);
|
||||
// await _repository.BatchDeleteAsync<ReadingMedicineQuestionAnswer>(t => t.TaskMedicalReview.TrialId == trialId);
|
||||
|
||||
|
||||
// await _repository.BatchDeleteAsync<ReadingOncologyTaskInfo>(t => t.VisitTask.TrialId == trialId);
|
||||
|
||||
// await _repository.BatchDeleteAsync<ReadingTableAnswerRowInfo>(t => t.TrialId == trialId);
|
||||
|
||||
// await _repository.BatchDeleteAsync<ReadingTableQuestionAnswer>(t => t.TrialId == trialId);
|
||||
// await _repository.BatchDeleteAsync<ReadingTaskQuestionAnswer>(t => t.TrialId == trialId) ;
|
||||
|
||||
// await _repository.BatchDeleteAsync<ReadingTaskRelation>(t => t.VisitTask.TrialId == trialId);
|
||||
// await _repository.BatchDeleteAsync<ReadingTaskQuestionAnswer>(t => t.TrialId == trialId);
|
||||
|
||||
// await _repository.BatchDeleteAsync<VisitTaskReReading>(t => t.OriginalReReadingTask.TrialId == trialId);
|
||||
// await _repository.BatchDeleteAsync<VisitTask>(t => t.TrialId == trialId);
|
||||
|
||||
return ResponseOutput.Ok();
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public async Task<PageOutput<TrialDetailDTO>> GetReviewerTrialListByEnrollmentStatus(TrialByStatusQueryDTO param)
|
||||
|
|
|
@ -307,7 +307,7 @@ namespace IRaCIS.Core.Application.Services
|
|||
);
|
||||
|
||||
//设置为阅片与否 不更改数据库检查 的instance数量 和 SeriesCount 所以这里要实时统计
|
||||
t.SeriesCount = t.SeriesList.Count();
|
||||
t.SeriesCount = t.SeriesList.Count;
|
||||
t.InstanceCount = t.SeriesList.SelectMany(t => t.InstanceList).Count();
|
||||
}
|
||||
|
||||
|
@ -418,7 +418,7 @@ namespace IRaCIS.Core.Application.Services
|
|||
})
|
||||
.ToList();
|
||||
|
||||
item.InstanceCount = item.InstanceList.Count();
|
||||
item.InstanceCount = item.InstanceList.Count;
|
||||
|
||||
item.Description = "Key Series";
|
||||
|
||||
|
@ -426,7 +426,7 @@ namespace IRaCIS.Core.Application.Services
|
|||
ThenBy(s => s.SeriesTime).Select(x => x.Modality).Distinct().ToListAsync(); ;
|
||||
item.Modality = string.Join(",", modalityList);
|
||||
thisVisitTaskStudy.SeriesList.Add(item);
|
||||
thisVisitTaskStudy.SeriesCount = thisVisitTaskStudy.SeriesList.Count();
|
||||
thisVisitTaskStudy.SeriesCount = thisVisitTaskStudy.SeriesList.Count;
|
||||
|
||||
|
||||
|
||||
|
@ -510,7 +510,7 @@ namespace IRaCIS.Core.Application.Services
|
|||
});
|
||||
|
||||
//设置为阅片与否 不更改数据库检查 的instance数量 和 SeriesCount 所以这里要实时统计
|
||||
t.SeriesCount = t.SeriesList.Count();
|
||||
t.SeriesCount = t.SeriesList.Count;
|
||||
t.InstanceCount = t.SeriesList.SelectMany(t => t.InstanceList).Count();
|
||||
}
|
||||
|
||||
|
@ -533,7 +533,7 @@ namespace IRaCIS.Core.Application.Services
|
|||
|
||||
foreach (var item in noDicomStudyList)
|
||||
{
|
||||
var nodicom = noDicomList.Where(x => x.Id == item.StudyId).FirstOrDefault();
|
||||
var nodicom = noDicomList.Where(x => x.Id == item.StudyId).First();
|
||||
item.SeriesList = new List<DicomSeriesDTO>()
|
||||
{
|
||||
new DicomSeriesDTO (){
|
||||
|
|
|
@ -139,7 +139,7 @@ namespace IRaCIS.Core.Application.MediatR.Handlers
|
|||
});
|
||||
}
|
||||
|
||||
var subjectVisitId = dbVisitStudyList.FirstOrDefault().SubjectVisitId;
|
||||
var subjectVisitId = dbVisitStudyList.First().SubjectVisitId;
|
||||
var dbSV = (await _subjectVisitRepository.FirstOrDefaultAsync(t => t.Id == subjectVisitId)).IfNullThrowException();
|
||||
|
||||
#region 更换核对的顺序 以Excel 数据为准 注释
|
||||
|
|
Loading…
Reference in New Issue