using CanteenContracts.BindingModels; using CanteenContracts.View; using CanteenDataModels.Models; using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Linq; using System.Text; using System.Threading.Tasks; namespace CanteenDatabaseImplement.Models { public class Cook : ICookModel { public int Id { get; private set; } [Required] public int ManagerId { get; private set; } [Required] public string FIO { get; private set; } = string.Empty; [Required] public string Position { get; private set; } = string.Empty; [ForeignKey("CookId")] public virtual List Products { get; set; } [ForeignKey("CookId")] public virtual List Orders { get; set; } public virtual Manager Manager { get; set; } public static Cook Create(CookBindingModel model) { if (model == null) { return null; } return new Cook { Id = model.Id, ManagerId = model.ManagerId, FIO = model.FIO, Position = model.Position }; } public void Update(CookBindingModel model) { if (model == null) { return; } FIO = model.FIO; Position = model.Position; } public CookViewModel GetViewModel => new CookViewModel { Id = Id, ManagerId = ManagerId, FIO = FIO, Position = Position }; } }