Skip to content

Commit 1c2886a

Browse files
authored
Merge pull request #2741 from TechnologyEnhancedLearning/Develop/feature/TD-4233-Display-competency-flags
TD-4233- Display competency flags in the Choose optional competencies screen
2 parents 0942655 + d63b952 commit 1c2886a

File tree

4 files changed

+20
-3
lines changed

4 files changed

+20
-3
lines changed

DigitalLearningSolutions.Data/DataServices/SelfAssessmentDataService/CompetencyDataService.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -447,7 +447,8 @@ public IEnumerable<Competency> GetCandidateAssessmentOptionalCompetencies(int se
447447
{
448448
return connection.Query<Competency>(
449449
@"SELECT
450-
SAS.ID AS Id,
450+
C.ID AS Id,
451+
SAS.ID AS SelfAssessmentStructureId,
451452
ROW_NUMBER() OVER (ORDER BY SAS.Ordering) as RowNo,
452453
C.Name AS Name,
453454
C.Description AS Description,

DigitalLearningSolutions.Data/Models/SelfAssessments/Competency.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ public class Competency
2727
public int? CandidateAssessmentSupervisorId { get; set; }
2828
public string? SupervisorName { get; set; }
2929
public string? CentreName { get; set; }
30+
public int? SelfAssessmentStructureId { get; set; }
3031
public List<AssessmentQuestion> AssessmentQuestions { get; set; } = new List<AssessmentQuestion>();
3132
public IEnumerable<CompetencyFlag> CompetencyFlags { get; set; } = new List<CompetencyFlag>();
3233
}

DigitalLearningSolutions.Web/Controllers/LearningPortalController/SelfAssessment.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1420,6 +1420,12 @@ public IActionResult ManageOptionalCompetencies(int selfAssessmentId)
14201420
var assessment = selfAssessmentService.GetSelfAssessmentForCandidateById(delegateUserId, selfAssessmentId);
14211421
var optionalCompetencies =
14221422
selfAssessmentService.GetCandidateAssessmentOptionalCompetencies(selfAssessmentId, delegateUserId);
1423+
var competencyIds = optionalCompetencies.Select(c => c.Id).ToArray();
1424+
var competencyFlags = frameworkService.GetSelectedCompetencyFlagsByCompetecyIds(competencyIds);
1425+
1426+
foreach (var competency in optionalCompetencies)
1427+
competency.CompetencyFlags = competencyFlags.Where(f => f.CompetencyId == competency.Id);
1428+
14231429
var includedSelfAssessmentStructureIds =
14241430
selfAssessmentService.GetCandidateAssessmentIncludedSelfAssessmentStructureIds(
14251431
selfAssessmentId,

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

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,17 @@
7373
@foreach (var competency in competencyGroup)
7474
{
7575
<div class="nhsuk-checkboxes__item">
76-
<input class="nhsuk-checkboxes__input select-all-checkbox" data-group="@competencyGroup.Key" id="[email protected]" name="IncludedSelfAssessmentStructureIds" checked="@(Model.IncludedSelfAssessmentStructureIds != null ? Model.IncludedSelfAssessmentStructureIds.Contains((int)competency.Id) : false)" type="checkbox" value="@competency.Id">
77-
<label class="nhsuk-label nhsuk-checkboxes__label" for="[email protected]">
76+
<input class="nhsuk-checkboxes__input select-all-checkbox" data-group="@competencyGroup.Key" id="[email protected]" name="IncludedSelfAssessmentStructureIds" checked="@(Model.IncludedSelfAssessmentStructureIds != null ? Model.IncludedSelfAssessmentStructureIds.Contains((int)competency.SelfAssessmentStructureId) : false)" type="checkbox" value="@competency.SelfAssessmentStructureId">
77+
<label class="nhsuk-label nhsuk-checkboxes__label" for="[email protected]">
78+
@foreach (var flag in competency.CompetencyFlags)
79+
{
80+
<span class="nhsuk-u-padding-right-2 @(ViewData["cssClass"]?.ToString())">
81+
<strong class="nhsuk-tag @flag.FlagTagClass">
82+
@flag.FlagName
83+
</strong>
84+
</span>
85+
}
86+
7887
@competency.Name
7988
</label>
8089
</div>

0 commit comments

Comments
 (0)