using CandidateReviewContracts.BindingModels; using CandidateReviewContracts.ViewModels; using CandidateReviewDataModels.Models; namespace CandidateReviewDatabaseImplement.Models { public class Assessment : IAssessmentModel { public int? UserId { get; set; } public int? ResumeId { get; set; } public string? Comment { get; set; } public int Id { get; set; } public virtual User User { get; set; } public virtual Resume Resume { get; set; } public static Assessment Create(CandidateReviewDatabase context, AssessmentBindingModel model) { return new Assessment() { Id = model.Id, ResumeId = model.ResumeId, UserId = model.UserId, Comment = model.Comment }; } public void Update(AssessmentBindingModel model) { if (model == null) { return; } ResumeId = model.ResumeId; UserId = model.UserId; Comment = model.Comment; } public AssessmentViewModel GetViewModel => new() { Id = Id, ResumeId = ResumeId, UserId = UserId, Comment = Comment }; } }