diff --git a/SecuritySystem/SecuritySystemListImplement/Models/Implementer.cs b/SecuritySystem/SecuritySystemListImplement/Models/Implementer.cs new file mode 100644 index 0000000..8dbccc7 --- /dev/null +++ b/SecuritySystem/SecuritySystemListImplement/Models/Implementer.cs @@ -0,0 +1,49 @@ +using SecuritySystemContracts.BindingModels; +using SecuritySystemContracts.ViewModels; +using SecuritySystemDataModels.Models; + +namespace SecuritySystemListImplement.Models +{ + public class Implementer : IImplementerModel + { + public string ImplementerFIO { get; private set; } = string.Empty; + public string Password { get; private set; } = string.Empty; + public int WorkExperience { get; private set; } + public int Qualification { get; private set; } + public int Id { get; private set; } + public static Implementer? Create(ImplementerBindingModel? model) + { + if (model == null) + { + return null; + } + return new Implementer() + { + Id = model.Id, + Qualification = model.Qualification, + Password = model.Password, + ImplementerFIO = model.ImplementerFIO, + WorkExperience = model.WorkExperience + }; + } + public void Update(ImplementerBindingModel? model) + { + if (model == null) + { + return; + } + Qualification = model.Qualification; + Password = model.Password; + ImplementerFIO = model.ImplementerFIO; + WorkExperience = model.WorkExperience; + } + public ImplementerViewModel GetViewModel => new() + { + Id = Id, + Qualification = Qualification, + Password = Password, + ImplementerFIO = ImplementerFIO, + WorkExperience = WorkExperience + }; + } +}