using FlowerShopContracts.BindingModels; using FlowerShopContracts.ViewModels; using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations; using FlowerShopDataModels.Models; using System.Runtime.Serialization; namespace FlowerShopDatabaseImplement.Models { [DataContract] public class Implementer : IImplementerModel { [DataMember] public int Id { get; set; } [DataMember] [Required] public string ImplementerFIO { get; set; } = string.Empty; [DataMember] [Required] public string Password { get; set; } = string.Empty; [DataMember] [Required] public int WorkExperience { get; set; } [DataMember] [Required] public int Qualification { get; set; } [ForeignKey("ImplementerId")] public virtual List Order { get; set; } = new(); public static Implementer? Create(ImplementerBindingModel? Model) { if (Model == null) return null; return new Implementer() { Id = Model.Id, ImplementerFIO = Model.ImplementerFIO, Password = Model.Password, WorkExperience = Model.WorkExperience, Qualification = Model.Qualification }; } public void Update(ImplementerBindingModel Model) { if (Model == null) { return; } ImplementerFIO = Model.ImplementerFIO; Password = Model.Password; WorkExperience = Model.WorkExperience; Qualification = Model.Qualification; } public ImplementerViewModel GetViewModel => new() { Id = Id, ImplementerFIO = ImplementerFIO, Password = Password, WorkExperience = WorkExperience, Qualification = Qualification }; } }