diff --git a/DigitalLearningSolutions.Data.Migrations/202208301100_AllowNullSelfAssessmentResults.cs b/DigitalLearningSolutions.Data.Migrations/202208301100_AllowNullSelfAssessmentResults.cs new file mode 100644 index 0000000000..12482323cc --- /dev/null +++ b/DigitalLearningSolutions.Data.Migrations/202208301100_AllowNullSelfAssessmentResults.cs @@ -0,0 +1,16 @@ +namespace DigitalLearningSolutions.Data.Migrations +{ + using FluentMigrator; + [Migration(202208301100)] + public class AllowNullSelfAssessmentResults : Migration + { + public override void Up() + { + Alter.Table("SelfAssessmentResults").AlterColumn("Result").AsInt32().Nullable(); + } + public override void Down() + { + Alter.Table("SelfAssessmentResults").AlterColumn("Result").AsInt32().NotNullable().SetExistingRowsTo(0); + } + } +} diff --git a/DigitalLearningSolutions.Data/DataServices/SelfAssessmentDataService/CompetencyDataService.cs b/DigitalLearningSolutions.Data/DataServices/SelfAssessmentDataService/CompetencyDataService.cs index 701fccb03e..041029c521 100644 --- a/DigitalLearningSolutions.Data/DataServices/SelfAssessmentDataService/CompetencyDataService.cs +++ b/DigitalLearningSolutions.Data/DataServices/SelfAssessmentDataService/CompetencyDataService.cs @@ -338,16 +338,13 @@ FROM AssessmentQuestions var minValue = assessmentQuestion.MinValue; var maxValue = assessmentQuestion.MaxValue; - if (result != null) + if (result < minValue || result > maxValue) { - if (result < minValue || result > maxValue) - { - logger.LogWarning( - "Not saving self assessment result as result is invalid. " + - $"{PrintResult(competencyId, selfAssessmentId, candidateId, assessmentQuestionId, result)}" - ); - return; - } + logger.LogWarning( + "Not saving self assessment result as result is invalid. " + + $"{PrintResult(competencyId, selfAssessmentId, candidateId, assessmentQuestionId, result)}" + ); + return; } var numberOfAffectedRows = connection.Execute( diff --git a/DigitalLearningSolutions.Web/Controllers/LearningPortalController/SelfAssessment.cs b/DigitalLearningSolutions.Web/Controllers/LearningPortalController/SelfAssessment.cs index 94b005f1e6..4362a14a34 100644 --- a/DigitalLearningSolutions.Web/Controllers/LearningPortalController/SelfAssessment.cs +++ b/DigitalLearningSolutions.Web/Controllers/LearningPortalController/SelfAssessment.cs @@ -161,17 +161,14 @@ public IActionResult SelfAssessmentCompetency( foreach (var assessmentQuestion in assessmentQuestions) { - if (assessmentQuestion.Result != null || assessmentQuestion.SupportingComments != null) - { - selfAssessmentService.SetResultForCompetency( - competencyId, - assessment.Id, - candidateId, - assessmentQuestion.Id, - assessmentQuestion.Result, - assessmentQuestion.SupportingComments - ); - } + selfAssessmentService.SetResultForCompetency( + competencyId, + assessment.Id, + candidateId, + assessmentQuestion.Id, + assessmentQuestion.Result, + assessmentQuestion.SupportingComments + ); } selfAssessmentService.SetUpdatedFlag(selfAssessmentId, candidateId, true);