using StudentEnrollmentContracts.BindingModels; using StudentEnrollmentContracts.ViewModels; using StudentEnrollmentDataModels.Models; using System.ComponentModel.DataAnnotations; namespace StudentEnrollmentDatabaseImplement.Models { public class ExamPoints //: IExamPointsModel { [Key] public int exampoints_id { get; private set; } [Required] public int firstexampoints { get; private set; } [Required] public int secondexampoints { get; private set; } [Required] public int thirdexampoints { get; private set; } public int addpoints { get; private set; } public int summary { get; private set; } public static ExamPoints? Create(ExamPointsBindingModel model) { if (model == null) { return null; } return new ExamPoints() { exampoints_id = model.Id, firstexampoints = model.FirstExamPoints, secondexampoints = model.SecondExamPoints, thirdexampoints = model.ThirdExamPoints, addpoints = model.AddPoints, summary = model.FirstExamPoints + model.SecondExamPoints + model.ThirdExamPoints + model.AddPoints, }; } public void Update(ExamPointsBindingModel model) { if (model == null) { return; } summary -= addpoints; addpoints = model.AddPoints; summary += model.AddPoints; } public ExamPointsViewModel GetViewModel => new() { Id = exampoints_id, FirstExamPoints = firstexampoints, SecondExamPoints = secondexampoints, ThirdExamPoints = thirdexampoints, AddPoints = addpoints, Summary = summary, }; } }