修改附加评估预提交

Uat_Study
hang 2023-03-17 15:57:04 +08:00
parent 51aebaab21
commit 5b87b9719d
12 changed files with 229 additions and 268 deletions

View File

@ -1974,15 +1974,17 @@
<param name="addOrEditSubjectCriteriaEvaluationVisitFilter"></param> <param name="addOrEditSubjectCriteriaEvaluationVisitFilter"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="T:IRaCIS.Core.Application.Service.SubjectCriteriaEvaluationVisitFilterService"> <member name="M:IRaCIS.Core.Application.Service.SubjectCriteriaEvaluationService.GetVisitStudyAndSeriesList(IRaCIS.Core.Application.ViewModel.VisitStudyAndSeriesQuery)">
<summary> <summary>
SubjectCriteriaEvaluationVisitFilterService 获取dicom 访视检查列表 (序列的 CreateTime 是否为空 代表了记录是否创建、IsConfirmed 代表 保存 确认)
</summary> </summary>
<returns></returns>
</member> </member>
<member name="T:IRaCIS.Core.Application.Service.SubjectCriteriaEvaluationVisitStudyFilterService"> <member name="M:IRaCIS.Core.Application.Service.SubjectCriteriaEvaluationService.BatchAddSubjectCriteriaEvaluationVisitStudyFilter(System.Collections.Generic.List{IRaCIS.Core.Application.ViewModel.SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit})">
<summary> <summary>
SubjectCriteriaEvaluationVisitStudyFilterService 批量保存或者确认 选择的序列
</summary> </summary>
<returns></returns>
</member> </member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ClinicalDataTrialSetAddOrEdit.ClinicalDataSetName"> <member name="P:IRaCIS.Core.Application.Service.Reading.Dto.ClinicalDataTrialSetAddOrEdit.ClinicalDataSetName">
<summary> <summary>
@ -6684,9 +6686,6 @@
<member name="T:IRaCIS.Core.Application.ViewModel.SubjectCriteriaEvaluationVisitStudyFilterView"> <member name="T:IRaCIS.Core.Application.ViewModel.SubjectCriteriaEvaluationVisitStudyFilterView">
<summary> SubjectCriteriaEvaluationVisitStudyFilterView 列表视图模型 </summary> <summary> SubjectCriteriaEvaluationVisitStudyFilterView 列表视图模型 </summary>
</member> </member>
<member name="T:IRaCIS.Core.Application.ViewModel.SubjectCriteriaEvaluationVisitStudyFilterQuery">
<summary>SubjectCriteriaEvaluationVisitStudyFilterQuery 列表查询参数模型</summary>
</member>
<member name="T:IRaCIS.Core.Application.ViewModel.SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit"> <member name="T:IRaCIS.Core.Application.ViewModel.SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit">
<summary> SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit 列表查询参数模型</summary> <summary> SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit 列表查询参数模型</summary>
</member> </member>
@ -7179,16 +7178,6 @@
ISubjectCriteriaEvaluationService ISubjectCriteriaEvaluationService
</summary> </summary>
</member> </member>
<member name="T:IRaCIS.Core.Application.Interfaces.ISubjectCriteriaEvaluationVisitFilterService">
<summary>
ISubjectCriteriaEvaluationVisitFilterService
</summary>
</member>
<member name="T:IRaCIS.Core.Application.Interfaces.ISubjectCriteriaEvaluationVisitStudyFilterService">
<summary>
ISubjectCriteriaEvaluationVisitStudyFilterService
</summary>
</member>
<member name="T:IRaCIS.Core.Application.Interfaces.IOrganInfoService"> <member name="T:IRaCIS.Core.Application.Interfaces.IOrganInfoService">
<summary> <summary>
IOrganInfoService IOrganInfoService

View File

@ -386,17 +386,6 @@ namespace IRaCIS.Core.Application.Contracts.DTO
public string ModalityForEdit { get; set; } = string.Empty; public string ModalityForEdit { get; set; } = string.Empty;
//public string PatientName { get; set; } = string.Empty;
//public string PatientAge { get; set; } = string.Empty;
//public string PatientSex { get; set; } = string.Empty;
//public string Comment { get; set; }
//public string QAComment { get; set; }
//public string UploaderFirstName { get; set; }
//public string UploaderLastName { get; set; }
} }
@ -425,7 +414,6 @@ namespace IRaCIS.Core.Application.Contracts.DTO
public bool IsDeleted { get; set; } public bool IsDeleted { get; set; }
//public bool IsDicomData { get; set; } = true;
public Guid[] InstanceList = new Guid[0]; public Guid[] InstanceList = new Guid[0];

View File

@ -18,10 +18,11 @@ namespace IRaCIS.Core.Application.ViewModel
public Guid? CreateUserId { get; set; } public Guid? CreateUserId { get; set; }
public Guid? UpdateUserId { get; set; } public Guid? UpdateUserId { get; set; }
public DateTime? UpdateTime { get; set; } public DateTime? UpdateTime { get; set; }
public bool IsImageFiltering { get; set; }
//public string AdditionalResult { get; set; } public bool? IsImageFiltering { get; set; }
public new bool? IsJoinEvaluation { get; set; }
public string SubjectCode { get; set; } public string SubjectCode { get; set; }

View File

@ -17,7 +17,10 @@ namespace IRaCIS.Core.Application.ViewModel
public Guid? CreateUserId { get; set; } public Guid? CreateUserId { get; set; }
public Guid? UpdateUserId { get; set; } public Guid? UpdateUserId { get; set; }
public DateTime? UpdateTime { get; set; } public DateTime? UpdateTime { get; set; }
public bool IsGeneratedTask { get; set; }
public new int? ImageFilterState { get; set; }
public new int? ImageDeterminationResultState { get; set; }
public bool? IsGeneratedTask { get; set; }
public string VisitName { get; set; } public string VisitName { get; set; }
@ -36,6 +39,20 @@ namespace IRaCIS.Core.Application.ViewModel
public Guid SubjectId { get; set; } public Guid SubjectId { get; set; }
} }
public class VisitStudyAndSeriesQuery
{
[NotDefault]
public Guid TrialReadingCriterionId { get; set; }
[NotDefault]
public Guid SubjectId { get; set; }
[NotDefault]
public Guid SubjectVisitId { get; set; }
}
///<summary> SubjectCriteriaEvaluationVisitFilterAddOrEdit 列表查询参数模型</summary> ///<summary> SubjectCriteriaEvaluationVisitFilterAddOrEdit 列表查询参数模型</summary>
public class SubjectCriteriaEvaluationVisitFilterAddOrEdit public class SubjectCriteriaEvaluationVisitFilterAddOrEdit
{ {
@ -49,6 +66,86 @@ namespace IRaCIS.Core.Application.ViewModel
} }
public class SelctStudySeriesView
{
public List<SelectStudyView> StudyList { get; set; }=new List<SelectStudyView>();
public List<SelectSeriesView> SeriesList { get; set; }=new List<SelectSeriesView>();
}
public class SelectStudyView
{
public string StudyInstanceUid { get; set; } = string.Empty;
public Guid TrialId { get; set; }
public Guid StudyId { get; set; }
public int StudyStatus { get; set; }
public string StudyCode { get; set; } = string.Empty;
public string Modalities { get; set; } = String.Empty;
public int SeriesCount { get; set; }
public int InstanceCount { get; set; }
public string Uploader { get; set; } = string.Empty;
public DateTime? StudyTime { get; set; }
public DateTime? UploadedTime { get; set; }
public string BodyPartExamined { get; set; } = String.Empty;
public string BodyPartForEdit { get; set; } = String.Empty;
public string ModalityForEdit { get; set; } = string.Empty;
}
public class SelectSeriesView
{
public DateTime? StudyTime { get; set; }
public string StudyCode { get; set; } = string.Empty;
public Guid SeriesId { get; set; }
public Guid StudyId { get; set; }
public string BodyPartForEdit { get; set; } = String.Empty;
public string SeriesInstanceUid { get; set; } = String.Empty;
public int SeriesNumber { get; set; }
public DateTime? SeriesTime { get; set; }
public string Modality { get; set; } = String.Empty;
public string Description { get; set; } = String.Empty;
public int InstanceCount { get; set; }
public string BodyPartExamined { get; set; } = String.Empty;
public Guid[] InstanceList = new Guid[0];
public List<string> InstancePathList = new List<string>();
public DateTime? CreateTime { get; set; }
public Guid? TrialReadingCriterionId { get; set; }
public Guid? SubjectVisitId { get; set; }
public bool? IsConfirmed { get; set; }
}
} }

View File

@ -24,25 +24,15 @@ namespace IRaCIS.Core.Application.ViewModel
public bool IsConfirmed { get; set; } public bool IsConfirmed { get; set; }
} }
///<summary>SubjectCriteriaEvaluationVisitStudyFilterQuery 列表查询参数模型</summary>
public class SubjectCriteriaEvaluationVisitStudyFilterQuery
{
}
///<summary> SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit 列表查询参数模型</summary> ///<summary> SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit 列表查询参数模型</summary>
public class SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit public class SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit
{ {
public Guid Id { get; set; }
public Guid SubjectId { get; set; }
public Guid TrialReadingCriterionId { get; set; } public Guid TrialReadingCriterionId { get; set; }
public DateTime CreateTime { get; set; }
public Guid CreateUserId { get; set; }
public Guid UpdateUserId { get; set; }
public DateTime UpdateTime { get; set; }
public Guid SubjectVisitId { get; set; } public Guid SubjectVisitId { get; set; }
public Guid StudyId { get; set; } public Guid StudyId { get; set; }
public Guid SeriesId { get; set; } public Guid SeriesId { get; set; }
public bool IsConfirmed { get; set; }
} }

View File

@ -1,25 +0,0 @@
//--------------------------------------------------------------------
// 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2023-03-17 11:57:18
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------
using IRaCIS.Core.Application.ViewModel;
namespace IRaCIS.Core.Application.Interfaces
{
/// <summary>
/// ISubjectCriteriaEvaluationVisitFilterService
/// </summary>
public interface ISubjectCriteriaEvaluationVisitFilterService
{
Task<List<SubjectCriteriaEvaluationVisitFilterView>> GetSubjectCriteriaEvaluationVisitFilterList(SubjectCriteriaEvaluationVisitFilterQuery inQuery);
Task<IResponseOutput> AddOrUpdateSubjectCriteriaEvaluationVisitFilter(SubjectCriteriaEvaluationVisitFilterAddOrEdit addOrEditSubjectCriteriaEvaluationVisitFilter);
Task<IResponseOutput> DeleteSubjectCriteriaEvaluationVisitFilter(Guid subjectCriteriaEvaluationVisitFilterId);
}
}

View File

@ -1,25 +0,0 @@
//--------------------------------------------------------------------
// 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2023-03-17 11:57:18
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------
using IRaCIS.Core.Application.ViewModel;
namespace IRaCIS.Core.Application.Interfaces
{
/// <summary>
/// ISubjectCriteriaEvaluationVisitStudyFilterService
/// </summary>
public interface ISubjectCriteriaEvaluationVisitStudyFilterService
{
Task<List<SubjectCriteriaEvaluationVisitStudyFilterView>> GetSubjectCriteriaEvaluationVisitStudyFilterList(SubjectCriteriaEvaluationVisitStudyFilterQuery inQuery);
Task<IResponseOutput> AddOrUpdateSubjectCriteriaEvaluationVisitStudyFilter(SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit addOrEditSubjectCriteriaEvaluationVisitStudyFilter);
Task<IResponseOutput> DeleteSubjectCriteriaEvaluationVisitStudyFilter(Guid subjectCriteriaEvaluationVisitStudyFilterId);
}
}

View File

@ -8,6 +8,10 @@ using IRaCIS.Core.Domain.Models;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using IRaCIS.Core.Application.Interfaces; using IRaCIS.Core.Application.Interfaces;
using IRaCIS.Core.Application.ViewModel; using IRaCIS.Core.Application.ViewModel;
using IRaCIS.Core.Application.Contracts.DTO;
using System.Linq;
using System.Linq.Dynamic.Core;
namespace IRaCIS.Core.Application.Service namespace IRaCIS.Core.Application.Service
{ {
/// <summary> /// <summary>
@ -21,15 +25,20 @@ namespace IRaCIS.Core.Application.Service
private readonly IRepository<Subject> _subjectRepository; private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository; private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<SubjectCriteriaEvaluationVisitFilter> _subjectCriteriaEvaluationVisitFilterRepository; private readonly IRepository<SubjectCriteriaEvaluationVisitFilter> _subjectCriteriaEvaluationVisitFilterRepository;
private readonly IRepository<SubjectCriteriaEvaluationVisitStudyFilter> _subjectCriteriaEvaluationVisitStudyFilterRepository;
public SubjectCriteriaEvaluationService(IRepository<SubjectCriteriaEvaluation> subjectCriteriaEvaluationRepository, IRepository<Subject> subjectRepository, public SubjectCriteriaEvaluationService(IRepository<SubjectCriteriaEvaluation> subjectCriteriaEvaluationRepository, IRepository<Subject> subjectRepository,
IRepository<SubjectCriteriaEvaluationVisitFilter> subjectCriteriaEvaluationVisitFilterRepository, IRepository<SubjectVisit> subjectVisitRepository) IRepository<SubjectCriteriaEvaluationVisitFilter> subjectCriteriaEvaluationVisitFilterRepository, IRepository<SubjectVisit> subjectVisitRepository,
IRepository<SubjectCriteriaEvaluationVisitStudyFilter> subjectCriteriaEvaluationVisitStudyFilterRepository)
{ {
_subjectCriteriaEvaluationRepository = subjectCriteriaEvaluationRepository; _subjectCriteriaEvaluationRepository = subjectCriteriaEvaluationRepository;
_subjectRepository = subjectRepository; _subjectRepository = subjectRepository;
_subjectCriteriaEvaluationVisitFilterRepository = subjectCriteriaEvaluationVisitFilterRepository; _subjectCriteriaEvaluationVisitFilterRepository = subjectCriteriaEvaluationVisitFilterRepository;
_subjectVisitRepository = subjectVisitRepository; _subjectVisitRepository = subjectVisitRepository;
_subjectCriteriaEvaluationVisitStudyFilterRepository = subjectCriteriaEvaluationVisitStudyFilterRepository;
} }
@ -138,12 +147,6 @@ namespace IRaCIS.Core.Application.Service
/// <returns></returns> /// <returns></returns>
public async Task<IResponseOutput> AddOrUpdateSubjectCriteriaEvaluationVisitFilter(SubjectCriteriaEvaluationVisitFilterAddOrEdit addOrEditSubjectCriteriaEvaluationVisitFilter) public async Task<IResponseOutput> AddOrUpdateSubjectCriteriaEvaluationVisitFilter(SubjectCriteriaEvaluationVisitFilterAddOrEdit addOrEditSubjectCriteriaEvaluationVisitFilter)
{ {
// 在此处拷贝automapper 映射
//CreateMap<SubjectCriteriaEvaluationVisitFilter, SubjectCriteriaEvaluationVisitFilterView>();
// CreateMap< SubjectCriteriaEvaluationVisitFilter,SubjectCriteriaEvaluationVisitFilterAddOrEdit>().ReverseMap();
var entity = await _subjectCriteriaEvaluationVisitFilterRepository.InsertOrUpdateAsync(addOrEditSubjectCriteriaEvaluationVisitFilter, true); var entity = await _subjectCriteriaEvaluationVisitFilterRepository.InsertOrUpdateAsync(addOrEditSubjectCriteriaEvaluationVisitFilter, true);
@ -152,6 +155,70 @@ namespace IRaCIS.Core.Application.Service
} }
/// <summary>
/// 获取dicom 访视检查列表 (序列的 CreateTime 是否为空 代表了记录是否创建、IsConfirmed 代表 保存 确认)
/// </summary>
/// <returns></returns>
public async Task<SelctStudySeriesView> GetVisitStudyAndSeriesList(VisitStudyAndSeriesQuery inQuery)
{
var studyList = await _repository.Where<DicomStudy>(s => s.SubjectVisitId == inQuery.SubjectVisitId).ProjectTo<SelectStudyView>(_mapper.ConfigurationProvider).ToListAsync();
var studyIds = studyList.Select(t => t.StudyId).ToList();
var query = from series in _repository.Where<DicomSeries>(t => studyIds.Contains(t.StudyId))
join visitStudyFilter in _subjectCriteriaEvaluationVisitStudyFilterRepository.Where(t => t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId && t.SubjectVisitId == inQuery.SubjectVisitId) on series.Id equals visitStudyFilter.SeriesId into d
from visitStudyFilter in d.DefaultIfEmpty()
select new SelectSeriesView()
{
Description=series.Description,
BodyPartExamined=series.BodyPartExamined,
BodyPartForEdit=series.BodyPartForEdit,
Modality=series.Modality,
SeriesInstanceUid=series.SeriesInstanceUid,
StudyCode=series.DicomStudy.StudyCode,
SeriesNumber=series.SeriesNumber,
SeriesTime=series.SeriesTime,
StudyTime = series.DicomStudy.StudyTime,
StudyId = series.StudyId,
SeriesId = series.Id,
SubjectVisitId =series.SubjectVisitId,
TrialReadingCriterionId= inQuery.TrialReadingCriterionId,
CreateTime = visitStudyFilter.CreateTime,
IsConfirmed=visitStudyFilter.IsConfirmed,
};
var seriesList = query.ToList();
return new SelctStudySeriesView { StudyList = studyList, SeriesList = seriesList };
}
/// <summary>
/// 批量保存或者确认 选择的序列
/// </summary>
/// <returns></returns>
public async Task<IResponseOutput> BatchAddSubjectCriteriaEvaluationVisitStudyFilter( List<SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit> batchList)
{
//var entity = await _subjectCriteriaEvaluationVisitStudyFilterRepository.InsertOrUpdateAsync(addOrEditSubjectCriteriaEvaluationVisitStudyFilter, true);
return ResponseOutput.Ok();
}
//[HttpDelete("{subjectCriteriaEvaluationId:guid}")] //[HttpDelete("{subjectCriteriaEvaluationId:guid}")]
// public async Task<IResponseOutput> DeleteSubjectCriteriaEvaluation(Guid subjectCriteriaEvaluationId) // public async Task<IResponseOutput> DeleteSubjectCriteriaEvaluation(Guid subjectCriteriaEvaluationId)
//{ //{

View File

@ -1,40 +0,0 @@
//--------------------------------------------------------------------
// 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2023-03-17 11:57:21
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------
using IRaCIS.Core.Domain.Models;
using Microsoft.AspNetCore.Mvc;
using IRaCIS.Core.Application.Interfaces;
using IRaCIS.Core.Application.ViewModel;
namespace IRaCIS.Core.Application.Service
{
/// <summary>
/// SubjectCriteriaEvaluationVisitFilterService
/// </summary>
[ ApiExplorerSettings(GroupName = "Test")]
public class SubjectCriteriaEvaluationVisitFilterService: BaseService
{
public SubjectCriteriaEvaluationVisitFilterService()
{
}
//[HttpDelete("{subjectCriteriaEvaluationVisitFilterId:guid}")]
// public async Task<IResponseOutput> DeleteSubjectCriteriaEvaluationVisitFilter(Guid subjectCriteriaEvaluationVisitFilterId)
//{
// var success = await _subjectCriteriaEvaluationVisitFilterRepository.DeleteFromQueryAsync(t => t.Id == subjectCriteriaEvaluationVisitFilterId,true);
// return ResponseOutput.Ok();
//}
}
}

View File

@ -1,64 +0,0 @@
//--------------------------------------------------------------------
// 此代码由T4模板自动生成 byzhouhang 20210918
// 生成时间 2023-03-17 11:57:21
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------
using IRaCIS.Core.Domain.Models;
using Microsoft.AspNetCore.Mvc;
using IRaCIS.Core.Application.Interfaces;
using IRaCIS.Core.Application.ViewModel;
namespace IRaCIS.Core.Application.Service
{
/// <summary>
/// SubjectCriteriaEvaluationVisitStudyFilterService
/// </summary>
[ ApiExplorerSettings(GroupName = "Test")]
public class SubjectCriteriaEvaluationVisitStudyFilterService: BaseService, ISubjectCriteriaEvaluationVisitStudyFilterService
{
private readonly IRepository<SubjectCriteriaEvaluationVisitStudyFilter> _subjectCriteriaEvaluationVisitStudyFilterRepository;
public SubjectCriteriaEvaluationVisitStudyFilterService(IRepository<SubjectCriteriaEvaluationVisitStudyFilter> subjectCriteriaEvaluationVisitStudyFilterRepository)
{
_subjectCriteriaEvaluationVisitStudyFilterRepository = subjectCriteriaEvaluationVisitStudyFilterRepository;
}
public async Task<List<SubjectCriteriaEvaluationVisitStudyFilterView>> GetSubjectCriteriaEvaluationVisitStudyFilterList(SubjectCriteriaEvaluationVisitStudyFilterQuery inQuery)
{
var subjectCriteriaEvaluationVisitStudyFilterQueryable = _subjectCriteriaEvaluationVisitStudyFilterRepository
.ProjectTo<SubjectCriteriaEvaluationVisitStudyFilterView>(_mapper.ConfigurationProvider);
return await subjectCriteriaEvaluationVisitStudyFilterQueryable.ToListAsync();
}
public async Task<IResponseOutput> AddOrUpdateSubjectCriteriaEvaluationVisitStudyFilter(SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit addOrEditSubjectCriteriaEvaluationVisitStudyFilter)
{
// 在此处拷贝automapper 映射
//CreateMap<SubjectCriteriaEvaluationVisitStudyFilter, SubjectCriteriaEvaluationVisitStudyFilterView>();
// CreateMap< SubjectCriteriaEvaluationVisitStudyFilter,SubjectCriteriaEvaluationVisitStudyFilterAddOrEdit>().ReverseMap();
var entity = await _subjectCriteriaEvaluationVisitStudyFilterRepository.InsertOrUpdateAsync(addOrEditSubjectCriteriaEvaluationVisitStudyFilter, true);
return ResponseOutput.Ok(entity.Id.ToString());
}
[HttpDelete("{subjectCriteriaEvaluationVisitStudyFilterId:guid}")]
public async Task<IResponseOutput> DeleteSubjectCriteriaEvaluationVisitStudyFilter(Guid subjectCriteriaEvaluationVisitStudyFilterId)
{
var success = await _subjectCriteriaEvaluationVisitStudyFilterRepository.DeleteFromQueryAsync(t => t.Id == subjectCriteriaEvaluationVisitStudyFilterId,true);
return ResponseOutput.Ok();
}
}
}

View File

@ -1,5 +1,6 @@
using AutoMapper; using AutoMapper;
using IRaCIS.Core.Application.Contracts; using IRaCIS.Core.Application.Contracts;
using IRaCIS.Core.Application.Contracts.DTO;
using IRaCIS.Core.Application.Service.Reading.Dto; using IRaCIS.Core.Application.Service.Reading.Dto;
using IRaCIS.Core.Application.ViewModel; using IRaCIS.Core.Application.ViewModel;
using IRaCIS.Core.Domain.Models; using IRaCIS.Core.Domain.Models;
@ -253,9 +254,22 @@ namespace IRaCIS.Core.Application.Service
// .ForMember(d => d.SubjectCode, u => u.MapFrom(s => s.subject.Code)) // .ForMember(d => d.SubjectCode, u => u.MapFrom(s => s.subject.Code))
// .ForMember(d => d.SubjectStatus, u => u.MapFrom(s => s.subject.Status)); // .ForMember(d => d.SubjectStatus, u => u.MapFrom(s => s.subject.Status));
CreateMap<SubjectCriteriaEvaluation, SubjectCriteriaEvaluationView>(); CreateMap<SubjectCriteriaEvaluation, SubjectCriteriaEvaluationView>().ReverseMap();
CreateMap<SubjectCriteriaEvaluationVisitFilter, SubjectCriteriaEvaluationVisitFilterAddOrEdit>().ReverseMap();
CreateMap<DicomStudy, SelectStudyView>()
.ForMember(o => o.UploadedTime, t => t.MapFrom(u => u.CreateTime))
.ForMember(o => o.Uploader, t => t.MapFrom(u => u.Uploader.LastName + " / " + u.Uploader.FirstName))
.ForMember(o => o.StudyId, t => t.MapFrom(u => u.Id));
CreateMap<DicomSeries, SelectSeriesView>()
.ForMember(o => o.StudyTime, t => t.MapFrom(u => u.DicomStudy.StudyTime))
.ForMember(o => o.SeriesId, t => t.MapFrom(u => u.Id))
.ForMember(o => o.StudyCode, t => t.MapFrom(u => u.DicomStudy.StudyCode))
.ForMember(o => o.InstanceList, t => t.MapFrom(u => u.DicomInstanceList.Select(t => t.Id).ToArray()))
.ForMember(o => o.InstancePathList, t => t.MapFrom(u => u.DicomInstanceList.OrderBy(t => t.InstanceNumber).Select(t => t.Path)))
;
#endregion #endregion
} }
} }

View File

@ -17,66 +17,35 @@ namespace IRaCIS.Core.Domain.Models
{ {
/// <summary>
/// SubjectId
/// </summary>
[Required]
public Guid SubjectId { get; set; }
/// <summary>
/// TrialReadingCriterionId
/// </summary>
[Required]
public Guid TrialReadingCriterionId { get; set; } public Guid TrialReadingCriterionId { get; set; }
/// <summary>
/// CreateTime
/// </summary>
[Required]
public DateTime CreateTime { get; set; }
/// <summary>
/// CreateUserId
/// </summary>
[Required]
public Guid CreateUserId { get; set; }
/// <summary>
/// UpdateUserId
/// </summary>
[Required]
public Guid UpdateUserId { get; set; }
/// <summary>
/// UpdateTime
/// </summary>
[Required]
public DateTime UpdateTime { get; set; }
/// <summary>
/// SubjectVisitId
/// </summary>
[Required]
public Guid SubjectVisitId { get; set; } public Guid SubjectVisitId { get; set; }
/// <summary>
/// StudyId
/// </summary>
[Required]
public Guid StudyId { get; set; } public Guid StudyId { get; set; }
/// <summary>
/// SeriesId
/// </summary>
[Required]
public Guid SeriesId { get; set; } public Guid SeriesId { get; set; }
/// <summary>
/// 是否确认
/// </summary>
[Required]
public bool IsConfirmed { get; set; } public bool IsConfirmed { get; set; }
public DateTime CreateTime { get; set; }
public Guid CreateUserId { get; set; }
public Guid UpdateUserId { get; set; }
public DateTime UpdateTime { get; set; }
} }
} }