Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -615,6 +615,41 @@ FROM SelfAssessmentResults
);
}

public IEnumerable<SelfAssessmentResult> GetSelfAssessmentResultswithSupervisorVerificationsForDelegateSelfAssessmentCompetency(
int delegateUserId,
int selfAssessmentId,
int competencyId
)
{
return connection.Query<SelfAssessmentResult>(
@"SELECT
s.ID,
s.SelfAssessmentID,
s.CompetencyID,
s.AssessmentQuestionID,
s.Result,
s.DateTime,
s.SupportingComments,
s.DelegateUserId
FROM SelfAssessmentResults s inner join
SelfAssessmentResultSupervisorVerifications sv ON s.ID = sv.SelfAssessmentResultId AND sv.Superceded = 0
WHERE s.CompetencyID = @competencyId
AND s.SelfAssessmentID = @selfAssessmentId
AND s.DelegateUserID = @delegateUserId",
new { selfAssessmentId, delegateUserId, competencyId }
);
}

public void RemoveReviewCandidateAssessmentOptionalCompetencies(int id)
{

connection.Execute(@"UPDATE SelfAssessmentResults SET Result = NULL WHERE ID = @id", new { id});

connection.Execute(
@"delete from SelfAssessmentResultSupervisorVerifications WHERE SelfAssessmentResultId = @id", new { id });

}

private static string PrintResult(
int competencyId,
int selfAssessmentId,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,12 @@ int GetSelfAssessmentActivityDelegatesExportCount(string searchString, string so
bool IsCentreSelfAssessment(int selfAssessmentId, int centreId);
bool HasMinimumOptionalCompetencies(int selfAssessmentId, int delegateUserId);
int GetSelfAssessmentCategoryId(int selfAssessmentId);
void RemoveReviewCandidateAssessmentOptionalCompetencies(int id);
public IEnumerable<SelfAssessmentResult> GetSelfAssessmentResultswithSupervisorVerificationsForDelegateSelfAssessmentCompetency(
int delegateUserId,
int selfAssessmentId,
int competencyId
);
}
public partial class SelfAssessmentDataService : ISelfAssessmentDataService
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1532,6 +1532,22 @@ ManageOptionalCompetenciesViewModel model
);
}
}
var optionalCompetency =
(selfAssessmentService.GetCandidateAssessmentOptionalCompetencies(selfAssessmentId, delegateUserId)).Where(x => !x.IncludedInSelfAssessment);
if (optionalCompetency.Any())
{
foreach (var optinal in optionalCompetency)
{
var selfAssessmentResults = selfAssessmentService.GetSelfAssessmentResultswithSupervisorVerificationsForDelegateSelfAssessmentCompetency(delegateUserId, selfAssessmentId, optinal.Id);
if (selfAssessmentResults.Any())
{
foreach (var item in selfAssessmentResults)
{
selfAssessmentService.RemoveReviewCandidateAssessmentOptionalCompetencies(item.Id);
}
}
}
}
if (model.GroupOptionalCompetenciesChecked != null)
{
var optionalCompetencies =
Expand All @@ -1549,7 +1565,7 @@ ManageOptionalCompetenciesViewModel model
}

}

return RedirectToAction("SelfAssessmentOverview", new { selfAssessmentId, vocabulary });
}

Expand Down
32 changes: 31 additions & 1 deletion DigitalLearningSolutions.Web/Services/SelfAssessmentService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,17 @@ public int GetSelfAssessmentActivityDelegatesExportCount(string searchString, st
bool IsCentreSelfAssessment(int selfAssessmentId, int centreId);
bool HasMinimumOptionalCompetencies(int selfAssessmentId, int delegateUserId);
public int GetSelfAssessmentCategoryId(int selfAssessmentId);

IEnumerable<SelfAssessmentResult> GetSelfAssessmentResultsForDelegateSelfAssessmentCompetency(
int delegateUserId,
int selfAssessmentId,
int competencyId
);
public IEnumerable<SelfAssessmentResult> GetSelfAssessmentResultswithSupervisorVerificationsForDelegateSelfAssessmentCompetency(
int delegateUserId,
int selfAssessmentId,
int competencyId
);
void RemoveReviewCandidateAssessmentOptionalCompetencies(int id);
}

public class SelfAssessmentService : ISelfAssessmentService
Expand Down Expand Up @@ -575,5 +585,25 @@ public int GetSelfAssessmentCategoryId(int selfAssessmentId)
{
return selfAssessmentDataService.GetSelfAssessmentCategoryId(selfAssessmentId);
}
public IEnumerable<SelfAssessmentResult> GetSelfAssessmentResultsForDelegateSelfAssessmentCompetency(
int delegateUserId,
int selfAssessmentId,
int competencyId
)
{
return selfAssessmentDataService.GetSelfAssessmentResultsForDelegateSelfAssessmentCompetency(delegateUserId, selfAssessmentId, competencyId);
}
public IEnumerable<SelfAssessmentResult> GetSelfAssessmentResultswithSupervisorVerificationsForDelegateSelfAssessmentCompetency(
int delegateUserId,
int selfAssessmentId,
int competencyId
)
{
return selfAssessmentDataService.GetSelfAssessmentResultswithSupervisorVerificationsForDelegateSelfAssessmentCompetency(delegateUserId, selfAssessmentId, competencyId);
}
public void RemoveReviewCandidateAssessmentOptionalCompetencies(int id)
{
selfAssessmentDataService.RemoveReviewCandidateAssessmentOptionalCompetencies(id);
}
}
}
Loading