修改一版

Uat_Study
he 2022-10-21 10:08:06 +08:00
parent 7ac3ef9c2c
commit fc20405e51
10 changed files with 145 additions and 19 deletions

View File

@ -3288,12 +3288,12 @@
整体疗效 整体疗效
</summary> </summary>
</member> </member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetAssessTypeOutDto.IsBaseLineUse"> <member name="P:IRaCIS.Core.Application.Service.Reading.Dto.CriterionDictionaryInfo.IsBaseLineUse">
<summary> <summary>
IsBaseUse IsBaseUse
</summary> </summary>
</member> </member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetAssessTypeOutDto.IsFollowVisitUse"> <member name="P:IRaCIS.Core.Application.Service.Reading.Dto.CriterionDictionaryInfo.IsFollowVisitUse">
<summary> <summary>
IsBaseUse IsBaseUse
</summary> </summary>
@ -4460,6 +4460,20 @@
<param name="inDto"></param> <param name="inDto"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:IRaCIS.Core.Application.Service.RC.ReadingQuestionService.GetSystemOncologyInfo(IRaCIS.Core.Application.Service.Reading.Dto.GetSystemOncologyInfoInDto)">
<summary>
获取系统肿瘤信息
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.RC.ReadingQuestionService.SetSystemOncologyInfo(IRaCIS.Core.Application.Service.Reading.Dto.SetSystemOncologyInfoInDto)">
<summary>
设置系统肿瘤学阅片信息
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.RC.ReadingQuestionService.GetSystemCriterionList"> <member name="M:IRaCIS.Core.Application.Service.RC.ReadingQuestionService.GetSystemCriterionList">
<summary> <summary>
获取获取系统阅片标准下拉 获取获取系统阅片标准下拉
@ -6349,6 +6363,21 @@
全局阅片 全局阅片
</summary> </summary>
</member> </member>
<member name="P:IRaCIS.Core.Application.Contracts.SetGlobalReading.DictionaryId">
<summary>
DictionaryId
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Contracts.SetGlobalReading.IsBaseLineUse">
<summary>
IsBaseLineUse
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Contracts.SetGlobalReading.IsFollowVisitUse">
<summary>
IsBaseUse
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Contracts.SetTrialReadingCriterionInDto.FormType"> <member name="P:IRaCIS.Core.Application.Contracts.SetTrialReadingCriterionInDto.FormType">
<summary> <summary>
表单类型 表单类型
@ -7023,6 +7052,13 @@
<param name="inDto"></param> <param name="inDto"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:IRaCIS.Core.Application.TrialConfigService.AsyncTrialCriterionDictionary(IRaCIS.Core.Application.Contracts.AsyncTrialCriterionDictionaryInDto)">
<summary>
同步项目标准字典信息
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.TrialConfigService.SetGlobalReadingInfo(IRaCIS.Core.Application.Contracts.SetGlobalReadingInfoInDto)"> <member name="M:IRaCIS.Core.Application.TrialConfigService.SetGlobalReadingInfo(IRaCIS.Core.Application.Contracts.SetGlobalReadingInfoInDto)">
<summary> <summary>
修改全局阅片配置信息 修改全局阅片配置信息

View File

@ -618,7 +618,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public Guid SubjectId { get; set; } public Guid SubjectId { get; set; }
public List<GetAssessTypeOutDto> AssessTypeList { get; set; } public List<CriterionDictionaryInfo> AssessTypeList { get; set; }
public List<OncologyVisitTaskInfo> OncologyVisits { get; set; } = new List<OncologyVisitTaskInfo>(); public List<OncologyVisitTaskInfo> OncologyVisits { get; set; } = new List<OncologyVisitTaskInfo>();
} }
@ -686,7 +686,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public string GlobalUpdateType { get; set; } public string GlobalUpdateType { get; set; }
public List<GetAssessTypeOutDto> AssessTypeList { get; set; } public List<CriterionDictionaryInfo> AssessTypeList { get; set; }
public List<GlobalVisitInfo> TaskList { get; set; } public List<GlobalVisitInfo> TaskList { get; set; }
} }

View File

@ -117,7 +117,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
} }
public class GetAssessTypeOutDto public class CriterionDictionaryInfo
{ {
public Guid Id { get; set; } public Guid Id { get; set; }
@ -150,6 +150,30 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
} }
public class GetSystemOncologyInfoOutDto
{
public bool IsOncologyReading { get; set; }
public List<CriterionDictionaryInfo> DictionaryList { get; set; }
}
public class SetSystemOncologyInfoInDto
{
[NotDefault]
public Guid SystemCriterionId { get; set; }
public bool IsOncologyReading { get; set; }
public List<Guid> DictionaryIds { get; set; }
}
public class GetSystemOncologyInfoInDto
{
[NotDefault]
public Guid SystemCriterionId { get; set; }
}
public class GetSystemCriterionListOutDto public class GetSystemCriterionListOutDto
{ {
public Guid CriterionId { get; set; } public Guid CriterionId { get; set; }

View File

@ -43,6 +43,55 @@ namespace IRaCIS.Core.Application.Service.RC
} }
/// <summary>
/// 获取系统肿瘤信息
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
public async Task<GetSystemOncologyInfoOutDto> GetSystemOncologyInfo(GetSystemOncologyInfoInDto inDto)
{
GetSystemOncologyInfoOutDto result = new GetSystemOncologyInfoOutDto() {
IsOncologyReading = await _readingQuestionCriterionSystemRepository.Where(x => x.Id == inDto.SystemCriterionId).Select(x => x.IsOncologyReading).FirstOrDefaultAsync(),
DictionaryList = await _readingCriterionDictionaryRepository.AsQueryable().Where(x => x.CriterionId == inDto.SystemCriterionId && x.ParentCode == ReadingCommon.OncologyAssess)
.ProjectTo<CriterionDictionaryInfo>(_mapper.ConfigurationProvider).OrderBy(x => x.ShowOrder).ToListAsync()
};
return result;
}
/// <summary>
/// 设置系统肿瘤学阅片信息
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
[HttpPost]
public async Task<IResponseOutput> SetSystemOncologyInfo(SetSystemOncologyInfoInDto inDto)
{
await _readingCriterionDictionaryRepository.BatchDeleteNoTrackingAsync(x => x.CriterionId == inDto.SystemCriterionId && x.ParentCode == ReadingCommon.OncologyAssess);
await _readingCriterionDictionaryRepository.AddRangeAsync(inDto.DictionaryIds.Select(x => new ReadingCriterionDictionary
{
CriterionId = inDto.SystemCriterionId,
DictionaryId = x,
IsSystemCriterion = true,
ParentCode = ReadingCommon.OncologyAssess
}));
await _readingQuestionCriterionSystemRepository.UpdatePartialFromQueryAsync(inDto.SystemCriterionId, x => new ReadingQuestionCriterionSystem()
{
IsOncologyReading = inDto.IsOncologyReading
});
var result = await _readingQuestionCriterionTrialRepository.SaveChangesAsync();
return ResponseOutput.Ok(result);
}
#region 系统标准 #region 系统标准
/// <summary> /// <summary>
/// 获取获取系统阅片标准下拉 /// 获取获取系统阅片标准下拉
@ -386,12 +435,12 @@ namespace IRaCIS.Core.Application.Service.RC
/// <param name="inDto"></param> /// <param name="inDto"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task<List<GetAssessTypeOutDto>> GetAssessType(GetAssessTypeInDto inDto) public async Task<List<CriterionDictionaryInfo>> GetAssessType(GetAssessTypeInDto inDto)
{ {
List<GetAssessTypeOutDto> result = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == inDto.CriterionId List<CriterionDictionaryInfo> result = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == inDto.CriterionId
&& x.ParentCode == inDto.ParentCode && x.ParentCode == inDto.ParentCode
) )
.Select(x => new GetAssessTypeOutDto() .Select(x => new CriterionDictionaryInfo()
{ {
Id = x.Id, Id = x.Id,
DictionaryId = x.DictionaryId, DictionaryId = x.DictionaryId,

View File

@ -202,12 +202,12 @@ namespace IRaCIS.Application.Services
var subjectVisitId = await _readModuleRepository.Where(x => x.Id == taskInfo.SouceReadModuleId).Select(x => x.SubjectVisitId).FirstOrDefaultAsync(); var subjectVisitId = await _readModuleRepository.Where(x => x.Id == taskInfo.SouceReadModuleId).Select(x => x.SubjectVisitId).FirstOrDefaultAsync();
var isBaseLine = await _subjectVisitRepository.Where(x => x.Id == subjectVisitId).Select(x => x.IsBaseLine).FirstOrDefaultAsync(); var isBaseLine = await _subjectVisitRepository.Where(x => x.Id == subjectVisitId).Select(x => x.IsBaseLine).FirstOrDefaultAsync();
List<GetAssessTypeOutDto> assessTypeList = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == taskInfo.TrialReadingCriterionId List<CriterionDictionaryInfo> assessTypeList = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == taskInfo.TrialReadingCriterionId
&& x.ParentCode == ReadingCommon.GlobalAssess && x.ParentCode == ReadingCommon.GlobalAssess
) )
.WhereIf(isBaseLine,x=>x.IsBaseLineUse) .WhereIf(isBaseLine,x=>x.IsBaseLineUse)
.WhereIf(!isBaseLine,x=>x.IsFollowVisitUse) .WhereIf(!isBaseLine,x=>x.IsFollowVisitUse)
.Select(x => new GetAssessTypeOutDto() .Select(x => new CriterionDictionaryInfo()
{ {
Id = x.Id, Id = x.Id,
DictionaryId = x.DictionaryId, DictionaryId = x.DictionaryId,

View File

@ -136,10 +136,10 @@ namespace IRaCIS.Application.Services
result.OncologyVisits = oncologyVisits; result.OncologyVisits = oncologyVisits;
List<GetAssessTypeOutDto> assessTypeList = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == taskInfo.TrialReadingCriterionId List<CriterionDictionaryInfo> assessTypeList = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == taskInfo.TrialReadingCriterionId
&& x.ParentCode == ReadingCommon.OncologyAssess && x.ParentCode == ReadingCommon.OncologyAssess
) )
.Select(x => new GetAssessTypeOutDto() .Select(x => new CriterionDictionaryInfo()
{ {
Id = x.Id, Id = x.Id,
DictionaryId = x.DictionaryId, DictionaryId = x.DictionaryId,

View File

@ -21,6 +21,17 @@ namespace IRaCIS.Core.Application.Service
.ForMember(d => d.SiteCodes, u => u.MapFrom(s => s.ReadingPeriodSites.Select(x => x.TrialSite.TrialSiteCode))) .ForMember(d => d.SiteCodes, u => u.MapFrom(s => s.ReadingPeriodSites.Select(x => x.TrialSite.TrialSiteCode)))
.ForMember(d => d.PlanCount, u => u.MapFrom(s => s.ReadingPeriodPlanList.Count)); .ForMember(d => d.PlanCount, u => u.MapFrom(s => s.ReadingPeriodPlanList.Count));
CreateMap<ReadingCriterionDictionary, CriterionDictionaryInfo>()
.ForMember(d => d.ChildGroup, u => u.MapFrom(s => s.Dictionary.ChildGroup))
.ForMember(d => d.Code, u => u.MapFrom(s => s.Dictionary.Code))
.ForMember(d => d.Description, u => u.MapFrom(s => s.Dictionary.Description))
.ForMember(d => d.ShowOrder, u => u.MapFrom(s => s.Dictionary.ShowOrder))
.ForMember(d => d.ParentCode, u => u.MapFrom(s => s.Dictionary.Parent.Code))
.ForMember(d => d.Value, u => u.MapFrom(s => s.Dictionary.Value))
.ForMember(d => d.ValueCN, u => u.MapFrom(s => s.Dictionary.ValueCN));
//CreateMap<ReadingClinicalDataView, GetReadingClinicalDataListOutDto>(); //CreateMap<ReadingClinicalDataView, GetReadingClinicalDataListOutDto>();
// CreateMap<ReadingClinicalData, GetReadingClinicalDataListOutDto>() // CreateMap<ReadingClinicalData, GetReadingClinicalDataListOutDto>()
//.ForMember(d => d.ClinicalDataLevel, u => u.MapFrom(s => s.ClinicalDataTrialSet.ClinicalDataLevel)) //.ForMember(d => d.ClinicalDataLevel, u => u.MapFrom(s => s.ClinicalDataTrialSet.ClinicalDataLevel))

View File

@ -769,7 +769,7 @@ namespace IRaCIS.Core.Application.Contracts
public class GetGlobalReadingOutDto public class GetGlobalReadingOutDto
{ {
public List<GetAssessTypeOutDto> GlobalAssessTypes { get; set; } public List<CriterionDictionaryInfo> GlobalAssessTypes { get; set; }
/// <summary> /// <summary>

View File

@ -226,7 +226,7 @@ namespace IRaCIS.Core.Application
GlobalAssessTypes = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == inDto.TrialReadingCriterionId GlobalAssessTypes = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == inDto.TrialReadingCriterionId
&& x.ParentCode == ReadingCommon.GlobalAssess && x.ParentCode == ReadingCommon.GlobalAssess
) )
.Select(x => new GetAssessTypeOutDto() .Select(x => new CriterionDictionaryInfo()
{ {
Id = x.Id, Id = x.Id,
DictionaryId = x.DictionaryId, DictionaryId = x.DictionaryId,

View File

@ -59,6 +59,12 @@ namespace IRaCIS.Core.Domain.Models
/// </summary> /// </summary>
public CriterionType CriterionType { get; set; } public CriterionType CriterionType { get; set; }
/// <summary>
/// 肿瘤学阅片
/// </summary>
public bool IsOncologyReading { get; set; } = false;
[JsonIgnore] [JsonIgnore]
public List<ReadingQuestionSystem> ReadingQuestionSystemList { get; set; } = new List<ReadingQuestionSystem>(); public List<ReadingQuestionSystem> ReadingQuestionSystemList { get; set; } = new List<ReadingQuestionSystem>();