Merge branch 'Test_IRC_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing Details

Test_IRC_Net8
he 2025-08-04 11:30:40 +08:00
commit e60f9eb689
2 changed files with 26 additions and 27 deletions

View File

@ -407,7 +407,7 @@ namespace IRaCIS.Core.Application.Service.Common
/// <param name="_dictionaryService"></param>
/// <returns></returns>
[HttpPost]
public async Task<IActionResult> GetImageBackList_Export(ImageBackQueryDto inQuery,
public async Task<IActionResult> GetImageBackList_Export(ImageBackQueryDto inQuery,
[FromServices] IRepository<SubjectVisitImageBackRecord> _subjectVisitImageBackRecordReposiotry, [FromServices] IDictionaryService _dictionaryService)
{
var svExpression = QCCommon.GetSubjectVisitImageBackRecordFilter(inQuery.VisitPlanArray);
@ -428,7 +428,7 @@ namespace IRaCIS.Core.Application.Service.Common
var defalutSortArray = new string[] { nameof(ImageBackViewModel.IsUrgent) + " desc", nameof(ImageBackViewModel.SubjectCode), nameof(ImageBackViewModel.VisitNum) };
var list = await query.OrderByDescending(t=>t.IsUrgent).ThenBy(t=>t.SubjectCode).ThenBy(t=>t.VisitNum).ToListAsync();
var list = await query.OrderByDescending(t => t.IsUrgent).ThenBy(t => t.SubjectCode).ThenBy(t => t.VisitNum).ToListAsync();
var exportInfo = (await _trialRepository.Where(t => t.Id == inQuery.TrialId).IgnoreQueryFilters().ProjectTo<ExcelExportInfo>(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
@ -1292,7 +1292,7 @@ namespace IRaCIS.Core.Application.Service.Common
//Uploader = t.Uploader.UserName,
//UploadTime = t.CreateTime
SubjectStatus=t.Subject.Status
SubjectStatus = t.Subject.Status
});
@ -2619,33 +2619,21 @@ namespace IRaCIS.Core.Application.Service.Common
// 配置在外层问题 或者表格问题上
taskList = await query.ProjectTo<CommonLessionExport>(_mapper.ConfigurationProvider,
new
{
readingExportType = inQuery.ReadingExportType,
criterionType = criterion.CriterionType,
arbitrationRule = criterion.ArbitrationRule,
trialReadingCriterionId = inQuery.TrialReadingCriterionId,
isEn_Us = _userInfo.IsEn_Us
}).ToListAsync();
new
{
readingExportType = inQuery.ReadingExportType,
criterionType = criterion.CriterionType,
arbitrationRule = criterion.ArbitrationRule,
trialReadingCriterionId = inQuery.TrialReadingCriterionId,
isEn_Us = _userInfo.IsEn_Us
}).ToListAsync();
}
// CDISC 导出 只管到 外层问题层级 和阅片结果表是保持一致
else if (inQuery.ReadingExportType == ExportResult.CDISC)
{
if (criterion.CriterionType == CriterionType.SelfDefine)
{
taskList = await query.ProjectTo<CommonLessionExport>(_mapper.ConfigurationProvider,
new
{
readingExportType = inQuery.ReadingExportType,
criterionType = criterion.CriterionType,
arbitrationRule = criterion.ArbitrationRule,
trialReadingCriterionId = inQuery.TrialReadingCriterionId,
isEn_Us = _userInfo.IsEn_Us
}).ToListAsync();
}
else
if (criterion.CriterionGroup == CriterionGroup.Tumor)
{
list = await query.ProjectTo<CommonEvaluationExport>(_mapper.ConfigurationProvider,
@ -2658,8 +2646,18 @@ namespace IRaCIS.Core.Application.Service.Common
isEn_Us = _userInfo.IsEn_Us
}).ToListAsync();
}
else
{
taskList = await query.ProjectTo<CommonLessionExport>(_mapper.ConfigurationProvider,
new
{
readingExportType = inQuery.ReadingExportType,
criterionType = criterion.CriterionType,
arbitrationRule = criterion.ArbitrationRule,
trialReadingCriterionId = inQuery.TrialReadingCriterionId,
isEn_Us = _userInfo.IsEn_Us
}).ToListAsync();
}
}
@ -3150,7 +3148,7 @@ namespace IRaCIS.Core.Application.Service.Common
{
//遍历病灶的每个问题
foreach (var lessionItem in lession.LessionAnswerList.OrderBy(t=>t.ShowOrder))
foreach (var lessionItem in lession.LessionAnswerList.OrderBy(t => t.ShowOrder))
{
var cloneItem = item.Clone();

View File

@ -83,6 +83,7 @@ namespace IRaCIS.Core.Application.Image.QA
var svExpression = QCCommon.GetSubjectVisitFilter(inQuery.VisitPlanArray);
var query = _subjectVisitRepository.Where(x => x.TrialId == inQuery.TrialId)
.Where(t => !(t.Subject.Status == SubjectStatus.EndOfVisit && t.SubmitState == SubmitStateEnum.None && !t.Subject.SubjectVisitList.Any(c => c.VisitNum > t.VisitNum && c.SubmitState > SubmitStateEnum.None)))
.Where(t => t.Subject.FinalSubjectVisitId != null ? t.VisitNum <= t.Subject.FinalSubjectVisit.VisitNum : true)
.WhereIf(inQuery.TrialSiteId != null, t => t.TrialSiteId == inQuery.TrialSiteId)
.WhereIf(inQuery.SubjectId != null, t => t.Subject.Id == inQuery.SubjectId)