using Domain.Primitives; namespace Domain.Entities.People.Employees.Shared; // TODO: Convert to a value object containig value objects public sealed class EmployeeAdditionalInfo : Entity { #region Private ctor private EmployeeAdditionalInfo(int id) : base(id) { } private EmployeeAdditionalInfo(int id, DateOnly? startDate, string? academicQualification, string? workPhone, string? location, string? specialization, string? jobStatus, string? imageUrl ) : base(id) { StartDate = startDate; AcademicQualification = academicQualification; WorkPhone = workPhone; Location = location; Specialization = specialization; JobStatus = jobStatus; ImageUrl = imageUrl; } #endregion #region Properties public DateOnly? StartDate { get; set; } public string? AcademicQualification { get; set; } public string? WorkPhone { get; set; } public string? Location { get; set; } public string? Specialization { get; set; } public string? JobStatus { get; set; } public string? ImageUrl { get; set; } #endregion #region Methods #region Static factory public static EmployeeAdditionalInfo Create(DateOnly? startDate, string? academicQualification, string? workPhone, string? location, string? specialization, string? jobStatus, string? imageUrl) { return new EmployeeAdditionalInfo(0, startDate, academicQualification, workPhone, location, specialization, jobStatus, imageUrl); } #endregion #endregion }