diff --git a/IRaCIS.Core.API/_PipelineExtensions/IRacisHostFile/MultiDiskStaticFilesMiddleware.cs b/IRaCIS.Core.API/_PipelineExtensions/IRacisHostFile/MultiDiskStaticFilesMiddleware.cs index d45350482..e8137fbd8 100644 --- a/IRaCIS.Core.API/_PipelineExtensions/IRacisHostFile/MultiDiskStaticFilesMiddleware.cs +++ b/IRaCIS.Core.API/_PipelineExtensions/IRacisHostFile/MultiDiskStaticFilesMiddleware.cs @@ -85,8 +85,7 @@ namespace IRaCIS.Core.API if (defaultFileProvider.GetFileInfo(path).Exists) { - var actrualPath = defaultFileProvider.GetFileInfo(path).PhysicalPath; - var actrualPath2 = defaultFileProvider.GetFileInfo(path).PhysicalPath; + var actrualPath = defaultFileProvider.GetFileInfo(path).PhysicalPath; await context.Response.SendFileAsync(new PhysicalFileInfo(new FileInfo(actrualPath))); diff --git a/IRaCIS.Core.Application/Helper/FileStoreHelper.cs b/IRaCIS.Core.Application/Helper/FileStoreHelper.cs index b00f245f4..dbdd13cd4 100644 --- a/IRaCIS.Core.Application/Helper/FileStoreHelper.cs +++ b/IRaCIS.Core.Application/Helper/FileStoreHelper.cs @@ -545,7 +545,7 @@ public static class FileStoreHelper } //默认存储的路径 - var defaultStoreRootFolder = FileStoreHelper.GetIRaCISRootDataFolder(_hostEnvironment); + var defaultStoreRootFolder = FileStoreHelper.GetIRaCISRootPath(_hostEnvironment); DriveInfo defaultDrive = new DriveInfo(Path.GetPathRoot(defaultStoreRootFolder)); diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingCriterionService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingCriterionService.cs index 648b85c16..81ceadef7 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingCriterionService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingCriterionService.cs @@ -682,6 +682,7 @@ namespace IRaCIS.Core.Application.Service.RC x.ReadingQuestionCriterionSystemId = x.Id; x.Id = NewId.NextGuid(); + x.IsAutoCreate=x.CriterionType==CriterionType.RECIST1Pointt1_MB?false:true; // 同步问题暂时注释 //List readingQuestionTrialList = new List(); //SetChildParentQuestion(criterion.Id, trialId, systemQuestionList, readingQuestionTrialList); diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialMaintenanceService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialMaintenanceService.cs index 56595de72..6227a1864 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialMaintenanceService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialMaintenanceService.cs @@ -51,6 +51,8 @@ namespace IRaCIS.Application.Services var no = 1; exportInfo.TrialUserList.ForEach(t => t.No = no++); + exportInfo.IsEn_US = _userInfo.IsEn_Us; + return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialUserList_Export, exportInfo, exportInfo.TrialCode, _commonDocumentRepository, _hostEnvironment); } diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialService.cs index b419bca76..c36157147 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialService.cs @@ -46,14 +46,14 @@ namespace IRaCIS.Application.Services [HttpPost] public async Task> GetTrialList(TrialQueryDTO searchParam) { - - var multiModalityIdSelectCount = searchParam.ModalityIds.Count; + + var multiModalityIdSelectCount = searchParam.ModalityIds.Count; var multiCriteriaSelectCount = searchParam.CriterionIds.Count; var multiReviewTypeSelectCount = searchParam.ReviewTypeIds.Count; Expression> trialDeclarationTypeExpression = x => true; - + foreach (var item in searchParam.DeclarationTypeEnumList) { @@ -78,7 +78,7 @@ namespace IRaCIS.Application.Services .WhereIf(!string.IsNullOrWhiteSpace(searchParam.ExperimentName), o => o.ExperimentName.Contains(searchParam.ExperimentName)) .WhereIf(searchParam.PhaseId != null, o => o.PhaseId == searchParam.PhaseId) - .WhereIf(searchParam.DeclarationTypeEnumList.Count>0 , trialDeclarationTypeExpression) + .WhereIf(searchParam.DeclarationTypeEnumList.Count > 0, trialDeclarationTypeExpression) .WhereIf(searchParam.AttendedReviewerTypeEnumList.Count > 0, trialAttendedReviewerTypeExpression) //.WhereIf(searchParam.AttendedReviewerType != null, o => o.AttendedReviewerType == searchParam.AttendedReviewerType) @@ -87,11 +87,11 @@ namespace IRaCIS.Application.Services .WhereIf(searchParam.CROId != null, o => o.CROId == searchParam.CROId) .WhereIf(searchParam.BeginDate != null, o => o.CreateTime >= searchParam.BeginDate) .WhereIf(searchParam.EndDate != null, o => o.CreateTime <= searchParam.EndDate) - + .WhereIf(multiModalityIdSelectCount > 0, t => t.TrialDicList.Count(t => t.KeyName == StaticData.Modality) == multiModalityIdSelectCount) .WhereIf(multiCriteriaSelectCount > 0, t => t.TrialDicList.Count(t => t.KeyName == StaticData.Criterion) == multiCriteriaSelectCount) .WhereIf(multiReviewTypeSelectCount > 0, t => t.TrialDicList.Count(t => t.KeyName == StaticData.ReviewType) == multiReviewTypeSelectCount) - .WhereIf(_userInfo.UserTypeEnumInt != (int)UserTypeEnum.SuperAdmin, t => t.TrialUserList.Any(t => t.UserId == _userInfo.Id && t.IsDeleted==false) && t.IsDeleted == false) + .WhereIf(_userInfo.UserTypeEnumInt != (int)UserTypeEnum.SuperAdmin, t => t.TrialUserList.Any(t => t.UserId == _userInfo.Id && t.IsDeleted == false) && t.IsDeleted == false) .ProjectTo(_mapper.ConfigurationProvider, new { userTypeEnumInt = _userInfo.UserTypeEnumInt, userId = _userInfo.Id }); return await query.ToPagedListAsync(searchParam.PageIndex, searchParam.PageSize, string.IsNullOrWhiteSpace(searchParam.SortField) ? "CreateTime" : searchParam.SortField, searchParam.Asc); @@ -177,7 +177,7 @@ namespace IRaCIS.Application.Services { if (await _trialRepository.AnyAsync(u => u.TrialCode == trialAddModel.TrialCode)) { - //---已经存在相同的项目编号。 + //---已经存在相同的项目编号。 throw new BusinessValidationFailedException(_localizer["Trial_DuplicateProjectNumber"]); } @@ -236,14 +236,14 @@ namespace IRaCIS.Application.Services if (!await _repository.AnyAsync(u => u.Id == trialAddModel.Id && (u.TrialStatusStr == StaticData.TrialState.TrialInitializing || u.TrialStatusStr == StaticData.TrialState.TrialOngoing))) { - //---项目状态只有处于:初始化或者进行中时,才允许操作。 + //---项目状态只有处于:初始化或者进行中时,才允许操作。 throw new BusinessValidationFailedException(_localizer["Trial_InvalidProjectStatus"]); } // 判断项目Id 是否已经存在 if (await _repository.AnyAsync(u => u.TrialCode == updateModel.TrialCode && u.Id != updateModel.Id)) { - //---已经存在相同的项目编号。 + //---已经存在相同的项目编号。 throw new BusinessValidationFailedException(_localizer["Trial_DuplicateProjectNumber"]); } @@ -382,7 +382,7 @@ namespace IRaCIS.Application.Services /// 真删除项目 方便清理测试数据 /// 临床试验项目Id - + [AllowAnonymous] [HttpDelete, Route("{trialId:guid}")] public async Task DeleteTrial(Guid trialId) { @@ -434,142 +434,129 @@ namespace IRaCIS.Application.Services - var success = await _repository.BatchDeleteAsync(o => o.SubjectVisit.TrialId == trialId) || - await _repository.BatchDeleteAsync(o => o.TrialId == trialId) || - await _repository.BatchDeleteAsync(o => o.TrialId == trialId) || + await _repository.BatchDeleteAsync(o => o.SubjectVisit.TrialId == trialId); + await _repository.BatchDeleteAsync(o => o.TrialId == trialId); + await _repository.BatchDeleteAsync(o => o.TrialId == trialId); + await _repository.BatchDeleteAsync(o => o.TrialReadingCriterion.TrialId == trialId); + await _repository.BatchDeleteAsync(o => o.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.Enroll.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.NoneDicomStudy.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - - await _repository.BatchDeleteAsync(o => o.TrialReadingCriterion.TrialId == trialId) || - + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - - await _repository.BatchDeleteAsync(o => o.TrialId == trialId) || - - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - - await _repository.BatchDeleteAsync(t => t.Enroll.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - - await _repository.BatchDeleteAsync(t => t.NoneDicomStudy.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.SubjectVisit.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.SubjectVisit.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.SubjectVisit.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.SubjectVisit.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.SubjectVisit.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.SubjectVisit.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.QCChallenge.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.QCChallenge.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.ReadingClinicalData.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.ReadingClinicalData.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TaskMedicalReview.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TaskMedicalReview.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TaskMedicalReview.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TaskMedicalReview.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.VisitTask.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.ReadingPeriodSet.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.VisitTask.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.ReadingPeriodSet.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.VisitTask.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.VisitTask.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.Subject.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.Subject.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.InfluenceTask.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.InfluenceTask.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(o => o.Id == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialReadingCriterion.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialReadingCriterion.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialDocument.TrialId == trialId) || + await _repository.BatchDeleteAsync(o => o.Id == trialId); + await _repository.BatchDeleteAsync(t => t.TrialReadingCriterion.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialReadingCriterion.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialDocument.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialDocument.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialDocument.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialEmailNoticeConfig.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialEmailNoticeConfig.TrialId == trialId); - //await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialEmailNoticeConfig.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + //await _repository.BatchDeleteAsync(t => t.TrialId == trialId) ; + await _repository.BatchDeleteAsync(t => t.TrialEmailNoticeConfig.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialSiteSurvey.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialSiteSurvey.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialSiteSurvey.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialSiteSurvey.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); - await _repository.BatchDeleteAsync(t => t.OriginalReReadingTask.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) || - await _repository.BatchDeleteAsync(t => t.TrialId == trialId) + await _repository.BatchDeleteAsync(t => t.OriginalReReadingTask.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId); + await _repository.BatchDeleteAsync(t => t.TrialId == trialId) ; - - - - ; - - return ResponseOutput.Result(success); + return ResponseOutput.Ok(); } diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs index 9b1b6ed71..b476e5629 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs @@ -61,7 +61,7 @@ namespace IRaCIS.Core.Application.Services var no = 1; exportInfo.TrialSiteUserList.ForEach(t => t.No = no++); - + exportInfo.IsEn_US = _userInfo.IsEn_Us; return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialSiteUserList_Export, exportInfo, exportInfo.TrialCode, _commonDocumentRepository, _hostEnvironment); } @@ -114,7 +114,7 @@ namespace IRaCIS.Core.Application.Services //处理翻译 var no = 1; exportInfo.TrialSiteUserList.ForEach(t => t.No = no++); - + exportInfo.IsEn_US = _userInfo.IsEn_Us; return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialSiteUserSummary_Export, exportInfo, exportInfo.TrialCode, _commonDocumentRepository, _hostEnvironment); }