修改
This commit is contained in:
@@ -19,6 +19,14 @@ namespace IRaCIS.Core.Application.ViewModel
|
||||
public Guid CreateUserId { get; set; }
|
||||
}
|
||||
|
||||
|
||||
public class GetCriterionLesionTypeInDto
|
||||
{
|
||||
public Guid CriterionId { get; set; }
|
||||
|
||||
public bool IsSystem { get; set; }
|
||||
}
|
||||
|
||||
///<summary>CriterionNidusQuery 列表查询参数模型</summary>
|
||||
public class CriterionNidusQuery
|
||||
{
|
||||
|
||||
@@ -443,6 +443,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||
/// 最大问题数
|
||||
/// </summary>
|
||||
public int? MaxQuestionCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 病灶类型
|
||||
/// </summary>
|
||||
public LesionType? LesionType { get; set; }
|
||||
}
|
||||
|
||||
public class ReadingQuestionSystemView
|
||||
@@ -542,6 +547,12 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||
/// 最大问题数
|
||||
/// </summary>
|
||||
public int? MaxQuestionCount { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 病灶类型
|
||||
/// </summary>
|
||||
public LesionType? LesionType { get; set; }
|
||||
}
|
||||
|
||||
|
||||
@@ -819,6 +830,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||
/// 最大问题数
|
||||
/// </summary>
|
||||
public int? MaxQuestionCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 病灶类型
|
||||
/// </summary>
|
||||
public LesionType? LesionType { get; set; }
|
||||
}
|
||||
|
||||
|
||||
@@ -928,6 +944,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||
/// 最大问题数
|
||||
/// </summary>
|
||||
public int? MaxQuestionCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 病灶类型
|
||||
/// </summary>
|
||||
public LesionType? LesionType { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -21,23 +21,51 @@ namespace IRaCIS.Core.Application.Service
|
||||
{
|
||||
|
||||
private readonly IRepository<OrganInfo> _organInfoRepository;
|
||||
private readonly IRepository<Dictionary> _dictionaryRepository;
|
||||
private readonly IRepository<OrganTrialInfo> _organTrialInfoRepository;
|
||||
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrial;
|
||||
private readonly IRepository<CriterionNidus> _criterionNidusRepository;
|
||||
|
||||
public OrganInfoService(
|
||||
IRepository<OrganInfo> organInfoRepository,
|
||||
IRepository<Dictionary> dictionaryRepository,
|
||||
IRepository<OrganTrialInfo> organTrialInfoRepository,
|
||||
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrial,
|
||||
IRepository<CriterionNidus> criterionNidusRepository
|
||||
)
|
||||
{
|
||||
_organInfoRepository = organInfoRepository;
|
||||
this._dictionaryRepository = dictionaryRepository;
|
||||
this._organTrialInfoRepository = organTrialInfoRepository;
|
||||
this._readingQuestionCriterionTrial = readingQuestionCriterionTrial;
|
||||
this._criterionNidusRepository = criterionNidusRepository;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取标准病灶类型
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<List<Dictionary>> GetCriterionLesionType(GetCriterionLesionTypeInDto inDto)
|
||||
{
|
||||
var dicNums = new List<int>();
|
||||
if (inDto.IsSystem)
|
||||
{
|
||||
dicNums = await _organInfoRepository.Where(x => x.SystemCriterionId == inDto.CriterionId).Select(x => (int)x.LesionType).Distinct().ToListAsync();
|
||||
}
|
||||
else
|
||||
{
|
||||
dicNums = await _organTrialInfoRepository.Where(x => x.TrialCriterionId == inDto.CriterionId).Select(x => (int)x.LesionType).Distinct().ToListAsync();
|
||||
}
|
||||
|
||||
var dictionaryId = await _dictionaryRepository.Where(x => x.Code == "LesionType").Select(x => x.Id).FirstOrDefaultAsync();
|
||||
|
||||
var result = await _dictionaryRepository.Where(x => x.ParentId == dictionaryId && dicNums.Contains(int.Parse(x.Code))).ToListAsync();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取标准病灶列表
|
||||
/// </summary>
|
||||
@@ -137,6 +165,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
{
|
||||
OrganInfoId=x,
|
||||
TrialId=inDto.TrialId,
|
||||
|
||||
//OrganType=inDto.OrganType,
|
||||
}).ToList();
|
||||
|
||||
@@ -252,6 +281,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
CriterionId = trialCriterionId,
|
||||
LesionType = x.LesionType,
|
||||
OriginalId = x.Id,
|
||||
|
||||
}).ToListAsync();
|
||||
|
||||
criterionNidusList.ForEach(x => x.Id = NewId.NextGuid());
|
||||
@@ -264,16 +294,12 @@ namespace IRaCIS.Core.Application.Service
|
||||
LesionType=x.LesionType,
|
||||
Id = x.Id,
|
||||
IsEnable = true,
|
||||
TrialCriterionId= readingQuestionCriterionTrial.Id,
|
||||
OrganInfoId = x.Id,
|
||||
TrialId = inDto.TrialId,
|
||||
}).ToListAsync();
|
||||
|
||||
criterionNidusList.ForEach(x => x.Id = NewId.NextGuid());
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
await _organTrialInfoRepository.AddRangeAsync(organTrialInfoList);
|
||||
await _readingQuestionCriterionTrial.UpdatePartialFromQueryAsync(trialCriterionId,x=> new ReadingQuestionCriterionTrial() {
|
||||
SynchronizeOriginalTime=DateTime.Now
|
||||
|
||||
@@ -51,7 +51,7 @@ namespace IRaCIS.Application.Services
|
||||
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
|
||||
IRepository<ReadingCriterionPage> readingCriterionPageRepository,
|
||||
IRepository<Trial> trialRepository,
|
||||
IRepository<OrganInfo> organInfoRepository,
|
||||
IRepository<OrganInfo> organInfoRepository,
|
||||
IRepository<ReadingTableQuestionSystem> readingTableQuestionSystemRepository,
|
||||
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswer,
|
||||
IRepository<PreviousPDF> previousPDFRepository
|
||||
@@ -74,8 +74,11 @@ namespace IRaCIS.Application.Services
|
||||
this._previousPDFRepository = previousPDFRepository;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 赋值一个系统标准到另一系统标准
|
||||
/// 复制一个系统标准到另一系统标准
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
/// <returns></returns>
|
||||
|
||||
Reference in New Issue
Block a user