diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 49115bdc5..e8b2824f3 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -445,76 +445,86 @@
-
+
项目ID
-
+
名称
-
+
临床级别
-
+
上传方式
-
-
- 项目ID
-
-
-
-
- 名称
-
-
-
-
- 临床级别
-
-
-
-
- 上传方式
-
-
-
-
- 系统的ClinicalDataSetId
-
-
-
-
- 创建时间
-
-
-
-
- 创建人
-
-
-
+
是否启用
-
+
是否勾选
-
+
+
+ 项目ID
+
+
+
+
+ 系统的ClinicalDataSetId
+
+
+
是否来自于系统数据
+
+
+ 名称
+
+
+
+
+ 临床级别
+
+
+
+
+ 上传方式
+
+
+
+
+ 创建时间
+
+
+
+
+ 创建人
+
+
+
+
+ 是否启用
+
+
+
+
+ 是否勾选
+
+
项目Id
@@ -3224,38 +3234,52 @@
临床数据配置
-
+
- 新增或者修改
+ 新增或者修改(项目)
-
+
- 分页获取
+ 新增或者修改(系统)
-
+
-
+
- 获取系统临床数据
+ 获取系统临床数据(系统)
-
+
+
+ 获取项目的临床数据
+
+
+
+
+
将系统配置添加到项目配置
-
+
- 删除
+ 删除(项目)
-
+
+
+
+
+
+ 删除(系统)
+
+
diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs
index 062536121..052fc97be 100644
--- a/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs
@@ -21,71 +21,59 @@ namespace IRaCIS.Application.Services
public IRepository _subjectVisitRepository;
private readonly IRepository _clinicalDataRepository;
- private readonly IRepository _clinicalDataSetRepository;
+ private readonly IRepository _clinicalDataTrialSetRepository;
+ private readonly IRepository _clinicalDataSystemSetRepository;
private readonly IRepository _previousPDFRepository;
public ClinicalDataSetService(IRepository subjectVisitRepository,
IRepository clinicalDataRepository,
- IRepository ClinicalDataSetRepository,
+ IRepository ClinicalDataTrialSetRepository,
+ IRepository ClinicalDataSystemSetRepository,
IRepository previousPDFRepository
)
{
_subjectVisitRepository = subjectVisitRepository;
_clinicalDataRepository = clinicalDataRepository;
- _clinicalDataSetRepository = ClinicalDataSetRepository;
+ _clinicalDataTrialSetRepository = ClinicalDataTrialSetRepository;
+ _clinicalDataSystemSetRepository = ClinicalDataSystemSetRepository;
this._previousPDFRepository = previousPDFRepository;
}
///
- /// 新增或者修改
+ /// 新增或者修改(项目)
///
///
///
[HttpPost]
- public async Task AddOrUpdateClinicalDataSet(ClinicalDataSetAddOrEdit indto)
+ public async Task AddOrUpdateClinicalDataTrialSet(ClinicalDataTrialSetAddOrEdit indto)
{
- var entity = await _clinicalDataSetRepository.InsertOrUpdateAsync(indto,true);
+ var entity = await _clinicalDataTrialSetRepository.InsertOrUpdateAsync(indto,true);
return ResponseOutput.Ok(entity.Id.ToString());
}
- /////
- ///// 分页获取
- /////
- /////
- /////
- //[HttpPost]
- //public async Task> GetClinicalDataSetList(ClinicalDataQuery query)
- //{
- // var readquery = _clinicalDataSetRepository.AsQueryable()
- // .Where( x => x.TrialId == query.TrialId)
- // .WhereIf(query.ClinicalDataSetName!=string.Empty,x=>x.ClinicalDataSetName.Contains(query.ClinicalDataSetName))
- // .ProjectTo(_mapper.ConfigurationProvider);
- // var pageList = await readquery.ToPagedListAsync(query.PageIndex, query.PageSize, query.SortField == null ? "CreateTime" : query.SortField,
- // query.Asc);
-
- // return pageList;
- //}
-
- /////
- ///// 设置项目
- /////
- /////
- //public async Task SetClinicalDataCheck()
- //{
- // _clinicalDataSetRepository.UpdateAsync()
- //}
+ ///
+ /// 新增或者修改(系统)
+ ///
+ ///
+ ///
+ [HttpPost]
+ public async Task AddOrUpdateClinicalDataSystemSet(ClinicalDataSystemSetAddOrEdit indto)
+ {
+ var entity = await _clinicalDataSystemSetRepository.InsertOrUpdateAsync(indto, true);
+ return ResponseOutput.Ok(entity.Id.ToString());
+ }
///
- /// 获取系统临床数据
+ /// 获取系统临床数据(系统)
///
///
[HttpGet]
- public async Task> GetSystemClinicalDataSetList()
+ public async Task> GetSystemClinicalDataSystemSetList()
{
- return await _clinicalDataSetRepository.AsQueryable()
- .Where(x => x.TrialId == null)
- .ProjectTo(_mapper.ConfigurationProvider).ToListAsync();
+ return await _clinicalDataSystemSetRepository.AsQueryable()
+
+ .ProjectTo(_mapper.ConfigurationProvider).ToListAsync();
}
///
@@ -93,32 +81,29 @@ namespace IRaCIS.Application.Services
///
///
///
-
[HttpGet]
- public async Task> GetTrialClinicalDataSetList(AddTrialClinicalDataSetInDto inDto)
+ public async Task> GetTrialClinicalDataTrialSetList(AddTrialClinicalDataSetInDto inDto)
{
- await this.AddTrialClinicalDataSet(inDto);
-
- return await _clinicalDataSetRepository.AsQueryable()
+ await this.AddTrialClinicalDataTrialSet(inDto);
+ return await _clinicalDataTrialSetRepository.AsQueryable()
.Where(x => x.TrialId == inDto.TrialId)
- .ProjectTo(_mapper.ConfigurationProvider).ToListAsync();
+ .ProjectTo(_mapper.ConfigurationProvider).ToListAsync();
}
-
///
/// 将系统配置添加到项目配置
///
///
///
- private async Task AddTrialClinicalDataSet(AddTrialClinicalDataSetInDto inDto)
+ private async Task AddTrialClinicalDataTrialSet(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 systemIds = await _clinicalDataSystemSetRepository.Select(x => x.Id).ToListAsync();
+ var trialSystemIds =await _clinicalDataTrialSetRepository.Where(x => x.TrialId == inDto.TrialId && x.SystemClinicalDataSetId != null).Select(x => x.SystemClinicalDataSetId.Value).ToListAsync();
var needAddids = systemIds.Except(trialSystemIds).ToList();
- var systemDataList =await _clinicalDataSetRepository.Where(x => needAddids.Contains(x.Id)).ToListAsync();
- List dataSets = systemDataList.Select(x => new ClinicalDataSet()
+ var systemDataList =await _clinicalDataSystemSetRepository.Where(x => needAddids.Contains(x.Id)).ToListAsync();
+ List dataSets = systemDataList.Select(x => new ClinicalDataTrialSet()
{
Id= NewId.NextGuid(),
SystemClinicalDataSetId=x.Id,
@@ -127,23 +112,32 @@ namespace IRaCIS.Application.Services
ClinicalUploadType=x.ClinicalUploadType,
TrialId=inDto.TrialId,
}).ToList();
- await _clinicalDataSetRepository.AddRangeAsync(dataSets);
- var result= await _clinicalDataSetRepository.SaveChangesAsync();
+ await _clinicalDataTrialSetRepository.AddRangeAsync(dataSets);
+ var result= await _clinicalDataTrialSetRepository.SaveChangesAsync();
return ResponseOutput.Ok(result);
}
-
-
-
///
- /// 删除
+ /// 删除(项目)
///
- ///
+ ///
///
[HttpDelete("{id:guid}")]
- public async Task DeleteClinicalSetData(Guid id)
+ public async Task DeleteClinicalTrialSetData(Guid id)
{
- await _clinicalDataSetRepository.DeleteFromQueryAsync(x=>x.Id== id,true);
+ await _clinicalDataTrialSetRepository.DeleteFromQueryAsync(x=>x.Id== id,true);
+ return ResponseOutput.Result(true);
+ }
+
+ ///
+ /// 删除(系统)
+ ///
+ ///
+ ///
+ [HttpDelete("{id:guid}")]
+ public async Task DeleteClinicalSystemSetData(Guid id)
+ {
+ await _clinicalDataSystemSetRepository.DeleteFromQueryAsync(x => x.Id == id, true);
return ResponseOutput.Result(true);
}
}
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs
index bed681d48..45487b0a3 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs
@@ -13,15 +13,19 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
}
-
- public class ClinicalDataSetAddOrEdit
+ public class ClinicalDataTrialSetAddOrEdit: ClinicalDataSystemSetAddOrEdit
{
- public Guid? Id { get; set; }
-
///
/// 项目ID
///
public Guid? TrialId { get; set; }
+ }
+
+ public class ClinicalDataSystemSetAddOrEdit
+ {
+ public Guid? Id { get; set; }
+
+
///
@@ -56,15 +60,37 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
}
- public class ClinicalDataSetView
+ public class ClinicalDataTrialSetView : ClinicalDataSystemSetView
{
- public Guid Id { get; set; }
-
///
/// 项目ID
///
public Guid? TrialId { get; set; }
+ ///
+ /// 系统的ClinicalDataSetId
+ ///
+ public Guid? SystemClinicalDataSetId { get; set; }
+
+ ///
+ /// 是否来自于系统数据
+ ///
+ public bool IsFromSystemData
+ {
+ get
+ {
+ return this.SystemClinicalDataSetId == null ? false : true;
+ }
+ }
+ }
+
+
+ public class ClinicalDataSystemSetView
+ {
+ public Guid Id { get; set; }
+
+
+
///
/// 名称
@@ -83,10 +109,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public ClinicalUploadType ClinicalUploadType { get; set; }
- ///
- /// 系统的ClinicalDataSetId
- ///
- public Guid? SystemClinicalDataSetId { get; set; }
+
///
/// 创建时间
@@ -108,14 +131,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
public bool IsCheck { get; set; }
- ///
- /// 是否来自于系统数据
- ///
- public bool IsFromSystemData {
- get {
- return this.SystemClinicalDataSetId == null ? false : true;
- }
- }
+
}
public class ClinicalDataInDto
@@ -150,25 +166,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
}
- public class SetClinicalDataCheckIndto
- {
- ///
- /// 项目ID
- ///
- public Guid TrialId { get; set; }
-
- List<>
-
- ///
- /// 勾选的ID
- ///
- public List CheckIds { get; set; }
-
- ///
- /// 启用的ID
- ///
- public List EnableIds { get; set; }
- }
+
public class AddTrialClinicalDataSetInDto
{
public Guid TrialId { get; set; }
diff --git a/IRaCIS.Core.Application/Service/Reading/_MapConfig.cs b/IRaCIS.Core.Application/Service/Reading/_MapConfig.cs
index 3bb9d7538..4bfc87029 100644
--- a/IRaCIS.Core.Application/Service/Reading/_MapConfig.cs
+++ b/IRaCIS.Core.Application/Service/Reading/_MapConfig.cs
@@ -25,11 +25,17 @@ namespace IRaCIS.Core.Application.Service
CreateMap().ReverseMap();
- CreateMap().ReverseMap();
+
CreateMap();
- CreateMap();
+
+ CreateMap().ReverseMap();
+
+ CreateMap().ReverseMap();
+
+ CreateMap();
+ CreateMap();
CreateMap().ReverseMap();
diff --git a/IRaCIS.Core.Domain/Reading/ClinicalDataSystemSet.cs b/IRaCIS.Core.Domain/Reading/ClinicalDataSystemSet.cs
new file mode 100644
index 000000000..500e03cc5
--- /dev/null
+++ b/IRaCIS.Core.Domain/Reading/ClinicalDataSystemSet.cs
@@ -0,0 +1,64 @@
+
+
+using System;
+using IRaCIS.Core.Domain.Share;
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+using IRaCIS.Core.Domain.Share.Reading;
+
+namespace IRaCIS.Core.Domain.Models
+{
+ ///
+ /// 临床资料系统配置
+ ///
+ [Table("ClinicalDataSystemSet")]
+ public class ClinicalDataSystemSet : Entity, IAuditAdd
+ {
+
+
+
+
+ ///
+ /// 名称
+ ///
+ public string ClinicalDataSetName { get; set; }
+
+ ///
+ /// 临床级别
+ ///
+ public ClinicalLevel ClinicalDataLevel { get; set; }
+
+
+ ///
+ /// 上传方式
+ ///
+ public ClinicalUploadType ClinicalUploadType { get; set; }
+
+ ///
+ /// 创建时间
+ ///
+ public DateTime CreateTime { get; set; }
+
+ ///
+ /// 创建人
+ ///
+ public Guid CreateUserId { get; set; }
+
+ ///
+ /// 是否启用
+ ///
+ public bool IsEnable { get; set; }
+
+ ///
+ /// 是否勾选
+ ///
+ public bool IsCheck { get; set; }
+
+ }
+
+
+
+
+
+
+}
diff --git a/IRaCIS.Core.Domain/Reading/ClinicalDataSet.cs b/IRaCIS.Core.Domain/Reading/ClinicalDataTrialSet.cs
similarity index 90%
rename from IRaCIS.Core.Domain/Reading/ClinicalDataSet.cs
rename to IRaCIS.Core.Domain/Reading/ClinicalDataTrialSet.cs
index 5286a422f..430b29fce 100644
--- a/IRaCIS.Core.Domain/Reading/ClinicalDataSet.cs
+++ b/IRaCIS.Core.Domain/Reading/ClinicalDataTrialSet.cs
@@ -9,10 +9,10 @@ using IRaCIS.Core.Domain.Share.Reading;
namespace IRaCIS.Core.Domain.Models
{
///
- /// 临床资料配置
+ /// 临床资料项目配置
///
- [Table("ClinicalDataSet")]
- public class ClinicalDataSet : Entity, IAuditAdd
+ [Table("ClinicalDataTrialSet")]
+ public class ClinicalDataTrialSet : Entity, IAuditAdd
{
///
diff --git a/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs b/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs
index 4489563e3..4ad567da3 100644
--- a/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs
+++ b/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContext.cs
@@ -183,7 +183,10 @@ namespace IRaCIS.Core.Infra.EFCore
public virtual DbSet ReadModule { get; set; }
public virtual DbSet ReadModuleView { get; set; }
- public virtual DbSet ClinicalDataSet { get; set; }
+ public virtual DbSet ClinicalDataTrialSet { get; set; }
+
+ public virtual DbSet ClinicalDataSystemSet { get; set; }
+
public virtual DbSet ClinicalData { get; set; }