using GreenTree.Strohrmann.ERP.Core.Domain.Business; using GreenTree.Strohrmann.ERP.Core.Domain.Shared; using GreenTree.Strohrmann.ERP.Web.Models.Shared; using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Threading.Tasks; namespace GreenTree.Strohrmann.ERP.Web.Models.Business { public class EmployeeModel : TrackingModel { #region Properties /// /// Employee Id /// [Display(Name = "ID")] public int Id { get; set; } /// /// Employee first name /// [Display(Name = "Vorname")] public string Firstname { get; set; } /// /// Employee last name /// [Display(Name = "Nachname")] public string Lastname { get; set; } /// /// Employee mail address /// [Display(Name = "Mail-Adresse")] public string MailAddress { get; set; } /// /// Employee birthdate /// [Display(Name = "Geburtsdatum")] [DisplayFormat(ApplyFormatInEditMode = false, DataFormatString = "{0:dd.MM.yyyy}")] public DateTime Birthdate { get; set; } /// /// Employee degree /// [Display(Name = "Ausbildungsgrad")] public virtual EmployeeDegreeModel EmployeeDegree { get; set; } #endregion #region Ctor /// /// Initializes a new instance of the EmployeeModel class /// public EmployeeModel() { } /// /// Initializes a new instance of the EmployeeModel class /// /// The base employee. public EmployeeModel(Employee employee) : base(employee) { if (employee == null) return; Id = employee.Id; Firstname = employee.Firstname; Lastname = employee.Lastname; MailAddress = employee.MailAddress; Birthdate = employee.Birthdate.HasValue ? employee.Birthdate.Value : DateTime.MinValue; EmployeeDegree = new EmployeeDegreeModel(employee.EmployeeDegree); } #endregion } }