diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 23369e100..94b1878ba 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -1035,6 +1035,21 @@
计划条数
+
+
+ 项目ID
+
+
+
+
+ 配置ID
+
+
+
+
+ 阅片配置的类型
+
+
项目ID
@@ -3294,6 +3309,13 @@
+
+
+ 获取阅片期配置的截至访视的下拉框
+
+
+
+
设置阅片期配置是否生效
diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs
index 9733582e6..c918ae5e8 100644
--- a/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs
@@ -26,8 +26,8 @@ namespace IRaCIS.Application.Services
public ClinicalDataSetService(IRepository subjectVisitRepository,
IRepository clinicalDataRepository,
- IRepository ClinicalDataSetRepository,
- IRepository previousPDFRepository
+ IRepository ClinicalDataSetRepository,
+ IRepository previousPDFRepository
)
{
_subjectVisitRepository = subjectVisitRepository;
@@ -68,16 +68,23 @@ namespace IRaCIS.Application.Services
}
+ //public List GetClinicalDataSetList()
+ //{
+
+ //}
+
+
///
/// 将系统配置添加到项目配置
///
///
///
- [HttpPost]
- public async Task AddTrialClinicalDataSet(AddTrialClinicalDataSetInDto inDto)
+
+ private async Task AddTrialClinicalDataSet(AddTrialClinicalDataSetInDto inDto)
{
+ var systemIds = await _clinicalDataSetRepository.Where(x => x.TrialId == null).Select(x => x.Id).ToListAsync();
var trialSystemIds =await _clinicalDataSetRepository.Where(x => x.TrialId == inDto.TrialId && x.SystemClinicalDataSetId != null).Select(x => x.SystemClinicalDataSetId.Value).ToListAsync();
- var needAddids = inDto.Ids.Except(trialSystemIds).ToList();
+ var needAddids = systemIds.Except(trialSystemIds).ToList();
var systemDataList =await _clinicalDataSetRepository.Where(x => needAddids.Contains(x.Id)).ToListAsync();
List dataSets = systemDataList.Select(x => new ClinicalDataSet()
{
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs
index bf88343ae..f3e4367d0 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs
@@ -122,8 +122,6 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public class AddTrialClinicalDataSetInDto
{
- public List Ids { get; set; } = new List();
-
public Guid TrialId { get; set; }
}
}
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingPeriodSetViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingPeriodSetViewModel.cs
index 1c628bff3..aff3c087a 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingPeriodSetViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingPeriodSetViewModel.cs
@@ -264,6 +264,33 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
}
+ public class GetReadingVisitListOutDto
+ {
+ public Guid VisitStageId { get; set; }
+ public decimal VisitNum { get; set; }
+ public string VisitName { get; set; } = string.Empty;
+ }
+
+ public class GetReadingVisitListInDto
+ {
+ ///
+ /// 项目ID
+ ///
+ public Guid TrialId { get; set; }
+
+ ///
+ /// 配置ID
+ ///
+ public Guid? ReadingPeriodSetId { get; set; }
+
+
+ ///
+ /// 阅片配置的类型
+ ///
+ public ReadingSetType ReadingSetType { get; set; }
+ }
+
+
public class SetReadingPeriodSetEffect
{
///
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingPeriodSetService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingPeriodSetService.cs
index bde0e12d9..d46269905 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingPeriodSetService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingPeriodSetService.cs
@@ -23,19 +23,22 @@ namespace IRaCIS.Application.Services
public IRepository _subjectVisitRepository;
private readonly IRepository _readingPeriodSetRepository;
private readonly IRepository _readModuleRepository;
+ private readonly IRepository _visitStageRepository;
private readonly IRepository _readingPeriodPlanRepository;
private readonly IRepository _siteSetRepository;
public ReadingPeriodSetService(IRepository subjectVisitRepository,
- IRepository ReadingPeriodSetRepository,
+ IRepository ReadingPeriodSetRepository,
IRepository readModuleRepository,
- IRepository readingPeriodPlanRepository,
- IRepository SiteSetRepository
+ IRepository visitStageRepository,
+ IRepository readingPeriodPlanRepository,
+ IRepository SiteSetRepository
)
{
_subjectVisitRepository = subjectVisitRepository;
_readingPeriodSetRepository = ReadingPeriodSetRepository;
this._readModuleRepository = readModuleRepository;
+ this._visitStageRepository = visitStageRepository;
this._readingPeriodPlanRepository = readingPeriodPlanRepository;
_siteSetRepository = SiteSetRepository;
}
@@ -126,7 +129,7 @@ namespace IRaCIS.Application.Services
//var
var existsBubjectVisits = await _readModuleRepository.Where(y => y.ReadingSetType == inDto.ReadingSetType && y.TrialId == inDto.TrialId).Select(x => x.SubjectVisitId).ToListAsync();
- visitQuery = visitQuery.Where(x => existsBubjectVisits.Where(y =>x.Id == y).Count() == 0)
+ visitQuery = visitQuery.Where(x => !existsBubjectVisits.Contains(x.Id))
.WhereIf(inDto.ExpirationDate != null, x => x.LatestScanDate <= inDto.ExpirationDate.Value)
.WhereIf(inDto.ExpirationVisitNum != null, x => x.VisitNum == inDto.ExpirationVisitNum);
@@ -277,6 +280,25 @@ namespace IRaCIS.Application.Services
}
+ ///
+ /// 获取阅片期配置的截至访视的下拉框
+ ///
+ ///
+ ///
+ [HttpPost]
+ public async Task> GetReadingVisitList(GetReadingVisitListInDto inDto)
+ {
+ var visitStageIdList = await _readingPeriodSetRepository.Where(x => x.TrialId == inDto.TrialId && x.Id != inDto.ReadingPeriodSetId&&x.VisitStageId!=null&&x.ReadingSetType==inDto.ReadingSetType).Select(x => x.VisitStageId).ToListAsync();
+ List result = await _visitStageRepository.Where(x => x.TrialId == inDto.TrialId && !visitStageIdList.Contains(x.Id)).Select(x => new GetReadingVisitListOutDto()
+ {
+
+ VisitName = x.VisitName,
+ VisitNum = x.VisitNum,
+ VisitStageId = x.Id,
+ }).ToListAsync();
+
+ return result;
+ }
///
/// 设置阅片期配置是否生效
diff --git a/IRaCIS.Core.Domain/Reading/ClinicalDataSet.cs b/IRaCIS.Core.Domain/Reading/ClinicalDataSet.cs
index 68e7b259c..5286a422f 100644
--- a/IRaCIS.Core.Domain/Reading/ClinicalDataSet.cs
+++ b/IRaCIS.Core.Domain/Reading/ClinicalDataSet.cs
@@ -53,6 +53,16 @@ namespace IRaCIS.Core.Domain.Models
///
public Guid CreateUserId { get; set; }
+ ///
+ /// 是否启用
+ ///
+ public bool IsEnable { get; set; }
+
+ ///
+ /// 是否勾选
+ ///
+ public bool IsCheck { get; set; }
+
}