using HotelContracts.BindingModels; using HotelContracts.ViewModels; using HotelDataModels.Models; using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; using System.Linq; using System.Text; using System.Threading.Tasks; namespace HotelDataBaseImplement.Models { public class Dinner : IDinnerModel { public int Id { get; set; } public string DinnerName { get; set; } = string.Empty; public int DinnerСalorieСontent { get; set; } public double DinnerPrice { get; set; } public int AdministratorId { get; set; } public virtual Administrator Administrator { get; set; } [ForeignKey("DinnerId")] public virtual List RoomDinners { get; set; } = new(); [ForeignKey("DinnerId")] public virtual List ConferenceBookingDinner { get; set; } public static Dinner? Create(DinnerBindingModel model) { if (model == null) { return null; } return new Dinner() { Id = model.Id, DinnerName = model.DinnerName, DinnerСalorieСontent = model.DinnerСalorieСontent, DinnerPrice = model.DinnerPrice, AdministratorId = model.AdministratorId }; } public static Dinner Create(DinnerViewModel model) { return new Dinner { Id = model.Id, DinnerName = model.DinnerName, DinnerСalorieСontent = model.DinnerСalorieСontent, DinnerPrice = model.DinnerPrice, AdministratorId = model.AdministratorId }; } public void Update(DinnerBindingModel model) { if (model == null) { return; } DinnerName = model.DinnerName; DinnerСalorieСontent = model.DinnerСalorieСontent; DinnerPrice = model.DinnerPrice; AdministratorId = model.AdministratorId; } public DinnerViewModel GetViewModel => new() { Id = Id, DinnerName = DinnerName, DinnerСalorieСontent = DinnerСalorieСontent, DinnerPrice = DinnerPrice, AdministratorId = AdministratorId }; } }