From 590a5a020b9a8d8912256fec0dcb988b04dba9db Mon Sep 17 00:00:00 2001 From: kevwhitt-hee Date: Tue, 27 Jul 2021 11:34:46 +0100 Subject: [PATCH 1/2] DLSV2-279 Fixes yes/no assessment question display By fixing dapper query to load level descriptors. --- DigitalLearningSolutions.Data/Services/SelfAssessmentService.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DigitalLearningSolutions.Data/Services/SelfAssessmentService.cs b/DigitalLearningSolutions.Data/Services/SelfAssessmentService.cs index 0e1268e44f..f84fcad4cc 100644 --- a/DigitalLearningSolutions.Data/Services/SelfAssessmentService.cs +++ b/DigitalLearningSolutions.Data/Services/SelfAssessmentService.cs @@ -508,7 +508,7 @@ public void SetSubmittedDateNow(int selfAssessmentId, int candidateId) public IEnumerable GetLevelDescriptorsForAssessmentQuestion(int assessmentQuestionId, int minValue, int maxValue, bool zeroBased) { - int adjustBy = zeroBased ? -1 : 0; + int adjustBy = zeroBased ? 1 : 0; return connection.Query( @"SELECT COALESCE(ID,0) AS ID, @assessmentQuestionId AS AssessmentQuestionID, n AS LevelValue, LevelLabel, LevelDescription, 0 AS UpdatedByAdminID FROM From 24f2f64b26d015ed7c771d495f8cdcc13ad5aa1c Mon Sep 17 00:00:00 2001 From: kevwhitt-hee Date: Tue, 27 Jul 2021 14:57:59 +0100 Subject: [PATCH 2/2] DLSV2-280 Orders assessment questions by ordering column --- .../Services/FrameworkService.cs | 2 +- .../Services/SelfAssessmentService.cs | 12 ++++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/DigitalLearningSolutions.Data/Services/FrameworkService.cs b/DigitalLearningSolutions.Data/Services/FrameworkService.cs index 560233e490..d4edab5082 100644 --- a/DigitalLearningSolutions.Data/Services/FrameworkService.cs +++ b/DigitalLearningSolutions.Data/Services/FrameworkService.cs @@ -1070,7 +1070,7 @@ public AssessmentQuestionDetail GetAssessmentQuestionDetailById(int assessmentQu $@"{AssessmentQuestionFields}{AssessmentQuestionDetailFields} {AssessmentQuestionTables} WHERE AQ.ID = @assessmentQuestionId - ORDER BY [Question]", new { adminId, assessmentQuestionId } + ORDER BY AQ.Ordering", new { adminId, assessmentQuestionId } ); } public LevelDescriptor GetLevelDescriptorForAssessmentQuestionId(int assessmentQuestionId, int adminId, int level) diff --git a/DigitalLearningSolutions.Data/Services/SelfAssessmentService.cs b/DigitalLearningSolutions.Data/Services/SelfAssessmentService.cs index f84fcad4cc..c65613de4e 100644 --- a/DigitalLearningSolutions.Data/Services/SelfAssessmentService.cs +++ b/DigitalLearningSolutions.Data/Services/SelfAssessmentService.cs @@ -224,7 +224,8 @@ FROM SelfAssessmentStructure as sas FROM {CompetencyTables} INNER JOIN CompetencyRowNumber AS CRN ON CRN.CompetencyID = C.ID - WHERE CRN.RowNo = @n", + WHERE CRN.RowNo = @n + ORDER BY CAQ.Ordering", (competency, assessmentQuestion) => { if (competencyResult == null) @@ -306,7 +307,8 @@ public IEnumerable GetMostRecentResults(int selfAssessmentId, int ca var result = connection.Query( $@"WITH {LatestAssessmentResults} SELECT {CompetencyFields} - FROM {CompetencyTables}", + FROM {CompetencyTables} + ORDER BY SAS.Ordering, CAQ.Ordering", (competency, assessmentQuestion) => { competency.AssessmentQuestions.Add(assessmentQuestion); @@ -326,7 +328,8 @@ public IEnumerable GetCandidateAssessmentResultsById(int candidateAs var result = connection.Query( $@"WITH {SpecificAssessmentResults} SELECT {CompetencyFields} - FROM {SpecificCompetencyTables}", + FROM {SpecificCompetencyTables} + ORDER BY SAS.Ordering, CAQ.Ordering", (competency, assessmentQuestion) => { competency.AssessmentQuestions.Add(assessmentQuestion); @@ -347,7 +350,8 @@ public IEnumerable GetCandidateAssessmentResultsForReviewById(int ca $@"WITH {SpecificAssessmentResults} SELECT {CompetencyFields} FROM {SpecificCompetencyTables} - WHERE (LAR.Requested IS NOT NULL) AND (LAR.Verified IS NULL) AND (LAR.UserIsVerifier = 1)", + WHERE (LAR.Requested IS NOT NULL) AND (LAR.Verified IS NULL) AND (LAR.UserIsVerifier = 1) + ORDER BY SAS.Ordering, CAQ.Ordering", (competency, assessmentQuestion) => { competency.AssessmentQuestions.Add(assessmentQuestion);