using ComputerShopContracts.BindingModels; using ComputerShopContracts.ViewModels; using ComputerShopDataModels.Enums; using ComputerShopDataModels.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 ComputerShopDatabaseImplement.Models { internal class EquipmentReceiving : IEquipmentReceivingModel { public DateTime? DateImplement { get; private set; } public int Id { get; set; } public EquipmentReceivingStatus Status { get; private set; } = EquipmentReceivingStatus.Неизвестен; [ForeignKey("ReceivingId")] public List Supplies { get; set; } = new(); [Required] public int ClientId { get; set; } public static EquipmentReceiving? Create(EquipmentReceivingBindingModel? model) { if (model == null) { return null; } return new EquipmentReceiving { Status = model.Status, DateImplement = model.DateImplement, Id = model.Id, ClientId = model.ClientId }; } public void Update(EquipmentReceivingBindingModel? model) { if (model == null) { return; } Status = model.Status; DateImplement = model.DateImplement; } public EquipmentReceivingViewModel GetViewModel => new() { DateImplement = DateImplement, Id = Id, Status = Status, ClientId = ClientId }; } }