Skip to content

Commit 441d4ae

Browse files
authored
Merge pull request #3038 from TechnologyEnhancedLearning/Develop/Fix/TD-5180-When-self-assessment-sign-off-request-rejected
TD-5180-When a self assessment sign-off request is rejected, the learner is unable to submit a new one
2 parents 16c7fba + 2e192df commit 441d4ae

File tree

4 files changed

+198
-191
lines changed

4 files changed

+198
-191
lines changed

DigitalLearningSolutions.Web/Controllers/SupervisorController/Supervisor.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1215,7 +1215,7 @@ public IActionResult SignOffProfileAssessment(
12151215
SignOffProfileAssessmentViewModel model
12161216
)
12171217
{
1218-
if ((!ModelState.IsValid) && (model.NumberOfSelfAssessedOptionalCompetencies > 0) && (!model.OptionalCompetenciesChecked))
1218+
if ((!ModelState.IsValid) && (model.NumberOfSelfAssessedOptionalCompetencies > 0) && (!model.OptionalCompetenciesChecked) && model.SignedOff)
12191219
{
12201220
SelfAssessmentResultSummary? selfAssessmentSummary =
12211221
supervisorService.GetSelfAssessmentResultSummary(candidateAssessmentId, supervisorDelegateId);
@@ -1231,7 +1231,10 @@ SignOffProfileAssessmentViewModel model
12311231
CandidateAssessmentSupervisorVerificationId =
12321232
selfAssessmentSummary.CandidateAssessmentSupervisorVerificationId,
12331233
CandidateAssessmentSupervisorVerificationSummaries = verificationsSummary,
1234-
NumberOfSelfAssessedOptionalCompetencies = optionalCompetencies.Count(x => x.IncludedInSelfAssessment)
1234+
NumberOfSelfAssessedOptionalCompetencies = optionalCompetencies.Count(x => x.IncludedInSelfAssessment),
1235+
SupervisorComments = model.SupervisorComments,
1236+
SignedOff = model.SignedOff,
1237+
IsSignOffverified = model.SignedOff
12351238
};
12361239
return View("SignOffProfileAssessment", newModel);
12371240
}

DigitalLearningSolutions.Web/ViewModels/Supervisor/SignOffProfileAssessmentViewModel.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,6 @@ public class SignOffProfileAssessmentViewModel
2121
[Range(1, 1, ErrorMessage = "Please tick to confirm that you have reviewed the optional competencies included in this self assessment and they are appropriate to the learner’s role.")]
2222
public bool OptionalCompetenciesChecked { get; set; }
2323
public int NumberOfSelfAssessedOptionalCompetencies { get; set; }
24+
public bool? IsSignOffverified { get; set; }
2425
}
2526
}

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

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414
.Select(q => q.ResultDateTime)
1515
.DefaultIfEmpty(DateTime.MinValue)
1616
.Max();
17+
bool signedOff = (from record in Model.SupervisorSignOffs
18+
orderby record.ID descending
19+
select record.SignedOff).FirstOrDefault();
1720
var competencySummaries = from g in Model.CompetencyGroups
1821
let questions = g.SelectMany(c => c.AssessmentQuestions).Where(q => q.Required)
1922
let selfAssessedCount = questions.Count(q => q.Result.HasValue)
@@ -41,7 +44,7 @@
4144
}
4245

4346
@section mobilebacklink
44-
{
47+
{
4548
<p class="nhsuk-breadcrumb__back">
4649
<a class="nhsuk-breadcrumb__backlink" asp-action="SelfAssessment"
4750
asp-route-selfAssessmentId="@Model.SelfAssessment.Id">
@@ -197,7 +200,7 @@
197200
</div>
198201
}
199202
@if (!Model.SupervisorSignOffs.Where(x => x.Verified == null).Any()
200-
&& latestResult > latestSignoff
203+
&& (latestResult > latestSignoff || !signedOff)
201204
&& (Model.NumberOfSelfAssessedOptionalCompetencies >= Model.SelfAssessment.MinimumOptionalCompetencies)
202205
)
203206
{

0 commit comments

Comments
 (0)