diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskHelpeService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskHelpeService.cs index 968014da7..4ad636bbe 100644 --- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskHelpeService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskHelpeService.cs @@ -105,7 +105,7 @@ namespace IRaCIS.Core.Application.Service - var visitNumList = _subjectVisitRepository.Where(t => t.SubjectId == subjectGroup.SubjectId && t.IsLostVisit == false ).Select(t=>t.VisitNum).ToList(); + var visitNumList = _subjectVisitRepository.Where(t => t.SubjectId == subjectGroup.SubjectId && t.IsLostVisit == false ).OrderBy(t=>t.VisitNum).Select(t=>t.VisitNum).ToList(); foreach (var subjectVisit in subjectGroup.SubjectVisitList) { @@ -264,7 +264,7 @@ namespace IRaCIS.Core.Application.Service var dbMaxCode = _visitTaskRepository.Where(t => t.TrialId == trialId).Select(t => t.Code).DefaultIfEmpty().Max(); - var cacheMaxCodeInt = _provider.Get($"{trialId}_{StaticData.CacheKey.TaskMaxCode}").Value; + var cacheMaxCodeInt = _provider.Get($"{trialId}_{StaticData.CacheKey.TaskMaxCode}").V int currentMaxCodeInt = cacheMaxCodeInt > dbMaxCode ? cacheMaxCodeInt : dbMaxCode; @@ -281,7 +281,7 @@ namespace IRaCIS.Core.Application.Service foreach (var subjectVisit in subjectGroup.SubjectVisitList) { - var visitNumList = _subjectVisitRepository.Where(t => t.SubjectId == subjectGroup.SubjectId && t.IsLostVisit==false).Select(t => t.VisitNum).ToList(); + var visitNumList = _subjectVisitRepository.Where(t => t.SubjectId == subjectGroup.SubjectId && t.IsLostVisit==false).OrderBy(t => t.VisitNum).Select(t => t.VisitNum).ToList(); foreach (var trialReadingCriterionConfig in trialReadingCriterionConfigList) diff --git a/IRaCIS.Core.Domain/SQLFile/Test.sql b/IRaCIS.Core.Domain/SQLFile/Test.sql index e6a129b98..dd25562bd 100644 --- a/IRaCIS.Core.Domain/SQLFile/Test.sql +++ b/IRaCIS.Core.Domain/SQLFile/Test.sql @@ -59,7 +59,7 @@ select * from VisitTask where TrialReadingCriterionId is null --无序维护sql -update VisitTask set TaskBlindName='Follow Up ' +update VisitTask set TaskBlindName='Follow-up' from VisitTask INNER join ReadingQuestionCriterionTrial on VisitTask.TrialReadingCriterionId=ReadingQuestionCriterionTrial.Id INNER join SubjectVisit on VisitTask.SourceSubjectVisitId=SubjectVisit.Id @@ -67,11 +67,11 @@ INNER join SubjectVisit on VisitTask.SourceSubjectVisitId=SubjectVisit.Id -- 有序维护sql -update VisitTask set TaskBlindName='Follow Up '+ cast(sv.rn as varchar) +update VisitTask set TaskBlindName='Follow-up '+ cast(sv.rn as varchar) from VisitTask join ReadingQuestionCriterionTrial on VisitTask.TrialReadingCriterionId=ReadingQuestionCriterionTrial.Id --join SubjectVisit on VisitTask.SourceSubjectVisitId=SubjectVisit.Id -join ( select Id SubjectVisitId, IsBaseLine, ROW_NUMBER() over( partition by SubjectId order by VisitNum asc )-1 rn,VisitNum from SubjectVisit) sv on VisitTask.SourceSubjectVisitId=sv.SubjectVisitId +join ( select Id SubjectVisitId, IsBaseLine, ROW_NUMBER() over( partition by SubjectId order by VisitNum asc )-1 rn,VisitNum from SubjectVisit where IsLostVisit=0) sv on VisitTask.SourceSubjectVisitId=sv.SubjectVisitId where sv.IsBaseLine=0 and ReadingQuestionCriterionTrial.IsReadingTaskViewInOrder=1 update VisitTask set TaskBlindName='Baseline' from VisitTask