Skip to content

Commit ea9a4bf

Browse files
committed
TD-4950 Uses a join to self assessment structure to limit result sets
Avoids filtering result sets by the SelfAssessmentResults.SelfAssessmentID
1 parent 2f57f43 commit ea9a4bf

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

DigitalLearningSolutions.Data/DataServices/SelfAssessmentDataService/CompetencyDataService.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ public partial class SelfAssessmentDataService
3232
0 AS UserIsVerifier,
3333
COALESCE (rr.LevelRAG, 0) AS ResultRAG
3434
FROM SelfAssessmentResults s
35+
INNER JOIN SelfAssessmentStructure AS sas ON s.CompetencyID = sas.CompetencyID AND sas.SelfAssessmentID = @selfAssessmentId
3536
LEFT OUTER JOIN DelegateAccounts AS da ON s.DelegateUserID = da.UserID
3637
LEFT OUTER JOIN SelfAssessmentResultSupervisorVerifications AS sv
3738
ON s.ID = sv.SelfAssessmentResultId AND sv.Superceded = 0
@@ -43,9 +44,8 @@ LEFT OUTER JOIN AdminUsers AS adu
4344
ON sd.SupervisorAdminID = adu.AdminID
4445
LEFT OUTER JOIN CompetencyAssessmentQuestionRoleRequirements rr
4546
ON s.CompetencyID = rr.CompetencyID AND s.AssessmentQuestionID = rr.AssessmentQuestionID
46-
AND s.SelfAssessmentID = rr.SelfAssessmentID AND s.Result = rr.LevelValue
47+
AND rr.SelfAssessmentID = @selfAssessmentId AND s.Result = rr.LevelValue
4748
WHERE da.ID = @delegateId
48-
AND s.SelfAssessmentID = @selfAssessmentId
4949
)";
5050

5151
private const string SpecificAssessmentResults =
@@ -68,7 +68,8 @@ LEFT OUTER JOIN CompetencyAssessmentQuestionRoleRequirements rr
6868
COALESCE (rr.LevelRAG, 0) AS ResultRAG
6969
FROM CandidateAssessments ca
7070
INNER JOIN SelfAssessmentResults s
71-
ON s.DelegateUserID = ca.DelegateUserID AND s.SelfAssessmentID = ca.SelfAssessmentID
71+
ON s.DelegateUserID = ca.DelegateUserID
72+
INNER JOIN SelfAssessmentStructure AS sas ON s.CompetencyID = sas.CompetencyID AND sas.SelfAssessmentID = ca.SelfAssessmentID
7273
LEFT OUTER JOIN SelfAssessmentResultSupervisorVerifications AS sv
7374
ON s.ID = sv.SelfAssessmentResultId AND sv.Superceded = 0
7475
LEFT OUTER JOIN CandidateAssessmentSupervisors AS cas
@@ -79,7 +80,7 @@ LEFT OUTER JOIN AdminUsers AS adu
7980
ON sd.SupervisorAdminID = adu.AdminID
8081
LEFT OUTER JOIN CompetencyAssessmentQuestionRoleRequirements rr
8182
ON s.CompetencyID = rr.CompetencyID AND s.AssessmentQuestionID = rr.AssessmentQuestionID
82-
AND s.SelfAssessmentID = rr.SelfAssessmentID AND s.Result = rr.LevelValue
83+
AND rr.SelfAssessmentID = ca.SelfAssessmentID AND s.Result = rr.LevelValue
8384
WHERE ca.ID = @candidateAssessmentId
8485
)";
8586

0 commit comments

Comments
 (0)