Skip to content

Commit fb3651e

Browse files
authored
Merge pull request #2770 from TechnologyEnhancedLearning/Develop/Features/TD-4428-Additionaloptionalcompetenciescheckboxonthelearnersignoffrequestscreen
TD-4428 Additional optional competencies checkbox on the learner signoff request screen
2 parents 9de2f37 + 02d3ed9 commit fb3651e

File tree

3 files changed

+20
-0
lines changed

3 files changed

+20
-0
lines changed

DigitalLearningSolutions.Web/Controllers/LearningPortalController/SelfAssessment.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1475,10 +1475,12 @@ public IActionResult RequestSignOff(int selfAssessmentId)
14751475
var assessment = selfAssessmentService.GetSelfAssessmentForCandidateById(delegateUserId, selfAssessmentId);
14761476
var supervisors =
14771477
selfAssessmentService.GetSignOffSupervisorsForSelfAssessmentId(selfAssessmentId, delegateUserId);
1478+
var optionalCompetencies = selfAssessmentService.GetCandidateAssessmentOptionalCompetencies(selfAssessmentId, delegateUserId);
14781479
var model = new RequestSignOffViewModel
14791480
{
14801481
SelfAssessment = assessment,
14811482
Supervisors = supervisors,
1483+
NumberOfSelfAssessedOptionalCompetencies = optionalCompetencies.Count(x => x.IncludedInSelfAssessment)
14821484
};
14831485
return View("SelfAssessments/RequestSignOff", model);
14841486
}
@@ -1493,10 +1495,12 @@ public IActionResult RequestSignOff(int selfAssessmentId, string vocabulary, Req
14931495
var assessment = selfAssessmentService.GetSelfAssessmentForCandidateById(delegateUserId, selfAssessmentId);
14941496
var supervisors =
14951497
selfAssessmentService.GetSignOffSupervisorsForSelfAssessmentId(selfAssessmentId, delegateUserId);
1498+
var optionalCompetencies = selfAssessmentService.GetCandidateAssessmentOptionalCompetencies(selfAssessmentId, delegateUserId);
14961499
var newModel = new RequestSignOffViewModel
14971500
{
14981501
SelfAssessment = assessment,
14991502
Supervisors = supervisors,
1503+
NumberOfSelfAssessedOptionalCompetencies = optionalCompetencies.Count(x => x.IncludedInSelfAssessment)
15001504
};
15011505
return View("SelfAssessments/RequestSignOff", newModel);
15021506
}

DigitalLearningSolutions.Web/ViewModels/LearningPortal/SelfAssessments/RequestSignOffViewModel.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ public class RequestSignOffViewModel
1414
[Required]
1515
[Range(1, 1, ErrorMessage = "Please tick to confirm that you understand the request sign-off statement")]
1616
public bool StatementChecked { get; set; }
17+
[Required]
18+
[Range(1, 1, ErrorMessage = "Please tick to confirm that you have include optional competencies that are appropriate to your role before requesting sign-off")]
19+
public bool OptionalCompetenciesChecked { get; set; }
20+
public int NumberOfSelfAssessedOptionalCompetencies { get; set; }
21+
1722
public string VocabPlural()
1823
{
1924
if (SelfAssessment != null)

DigitalLearningSolutions.Web/Views/LearningPortal/SelfAssessments/RequestSignOff.cshtml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,17 @@
6060
</label>
6161
</div>
6262
</nhs-form-group>
63+
@if (Model.NumberOfSelfAssessedOptionalCompetencies >= Model.SelfAssessment.MinimumOptionalCompetencies)
64+
{
65+
<nhs-form-group nhs-validation-for="OptionalCompetenciesChecked">
66+
<div class="nhsuk-checkboxes__item">
67+
<input class="nhsuk-checkboxes__input" id="optional-ompetencies" name="OptionalCompetenciesChecked" asp-for="OptionalCompetenciesChecked" type="checkbox">
68+
<label class="nhsuk-label nhsuk-checkboxes__label" for="optional-competencies">
69+
I have reviewed the optional competencies available for this self assessment and included those that are appropriate to my role.
70+
</label>
71+
</div>
72+
</nhs-form-group>
73+
}
6374
</fieldset>
6475

6576
<button class="nhsuk-button" type="submit">

0 commit comments

Comments
 (0)