From ff28061afa48ea036e9d25e8b187e656ba93da63 Mon Sep 17 00:00:00 2001 From: "ns.potapov" Date: Sat, 20 Apr 2024 16:15:24 +0400 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=BE?= =?UTF-8?q?=D0=B2=D0=B0=D0=BB=20=D0=BC=D0=BE=D0=B4=D0=B5=D0=BB=D1=8C=20?= =?UTF-8?q?=D1=85=D1=80=D0=B0=D0=BD=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B4=D0=B0?= =?UTF-8?q?=D0=BD=D0=BD=D1=8B=D1=85=20=D0=B4=D0=BB=D1=8F=20=D0=B8=D1=81?= =?UTF-8?q?=D0=BF=D0=BE=D0=BB=D0=BD=D0=B8=D1=82=D0=B5=D0=BB=D1=8F=20=D0=B2?= =?UTF-8?q?=20=D0=B1=D0=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Models/Implementer.cs | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 SecuritySystem/SecuritySystemDatabaseImplement/Models/Implementer.cs diff --git a/SecuritySystem/SecuritySystemDatabaseImplement/Models/Implementer.cs b/SecuritySystem/SecuritySystemDatabaseImplement/Models/Implementer.cs new file mode 100644 index 0000000..3eb522b --- /dev/null +++ b/SecuritySystem/SecuritySystemDatabaseImplement/Models/Implementer.cs @@ -0,0 +1,66 @@ +using SecuritySystemContracts.BindingModels; +using SecuritySystemContracts.ViewModels; +using SecuritySystemDataModels.Models; +using System.ComponentModel.DataAnnotations; + +namespace SecuritySystemDatabaseImplement.Models +{ + public class Implementer : IImplementerModel + { + public int Id { get; private set; } + [Required] + public string ImplementerFIO { get; private set; } = string.Empty; + [Required] + public string Password { get; private set; } = string.Empty; + [Required] + public int Qualification { get; private set; } + [Required] + public int WorkExperience { 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 static Implementer Create(ImplementerViewModel model) + { + 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 + }; + } +} +}