using BMA.EHR.Domain.Models.HR; namespace BMA.EHR.Application.Responses.Profiles { public class GetProfileByKeycloakIdDto { public Guid Id { get; set; } public string? Prefix { get; set; } public string? FirstName { get; set; } public string? LastName { get; set; } public string? CitizenId { get; set; } public DateTime BirthDate { get; set; } = DateTime.MinValue; public DateTime? DateStart { get; set; } = DateTime.MinValue; public DateTime? DateAppoint { get; set; } = DateTime.MinValue; public string? Position { get; set; } public Guid? OcId { get; set; } public string? PosType { get; set; } public string? PosLevel { get; set; } public string? Oc { get; set; } public ProfileSalaryResult? ProfileSalary { get; set; } public ProfileInsignia? ProfileInsignia { get; set; } public Guid? Keycloak { get; set; } public string? PosNo { get; set; } public string? PositionLevel { get; set; } public string? PosNoEmployee { get; set; } public string? Gender { get; set; } public string? ProfileType { get; set; } public bool? IsLeave { get; set; } public bool? IsProbatin { get; set; } public string? Root { get; set; } public string? Child1 { get; set; } public string? Child2 { get; set; } public string? Child3 { get; set; } public string? Child4 { get; set; } public Guid? RootId { get; set; } public Guid? Child1Id { get; set; } public Guid? Child2Id { get; set; } public Guid? Child3Id { get; set; } public Guid? Child4Id { get; set; } public Guid? RootDnaId { get; set; } public Guid? Child1DnaId { get; set; } public Guid? Child2DnaId { get; set; } public Guid? Child3DnaId { get; set; } public Guid? Child4DnaId { get; set; } public double? Amount { get; set; } public double? PositionSalaryAmount { get; set; } public string? Commander { get; set; } public Guid? CommanderId { get; set; } public Guid? CommanderKeycloak { get; set; } public string? TelephoneNumber { get; set; } public string? CurrentAddress { get; set; } public string? CurrentSubDistrict { get; set; } public string? CurrentDistrict { get; set; } public string? CurrentProvince { get; set; } public string? CurrentZipCode { get; set; } public string? PositionLeaveName { get; set; } public string? PosExecutiveName { get; set; } public string? CommanderPositionName { get; set; } = string.Empty; } public class PosLevel { public Guid Id { get; set; } public DateTime CreatedAt { get; set; } public Guid CreatedUserId { get; set; } public DateTime LastUpdatedAt { get; set; } public Guid LastUpdateUserId { get; set; } public string CreatedFullName { get; set; } public string LastUpdateFullName { get; set; } public string PosLevelName { get; set; } public string PosTypeId { get; set; } } public class PosType { public Guid Id { get; set; } public DateTime CreatedAt { get; set; } public Guid CreatedUserId { get; set; } public DateTime LastUpdatedAt { get; set; } public Guid LastUpdateUserId { get; set; } public string CreatedFullName { get; set; } public string LastUpdateFullName { get; set; } public string PosTypeName { get; set; } } public class ProfileSalaryResult { public Guid? Id { get; set; } public DateTime? CreatedAt { get; set; } public Guid? CreatedUserId { get; set; } public DateTime? LastUpdatedAt { get; set; } public Guid? LastUpdateUserId { get; set; } public string? CreatedFullName { get; set; } public string? LastUpdateFullName { get; set; } public string? PosNo { get; set; } = string.Empty; public double? Amount { get; set; } public double? PositionSalaryAmount { get; set; } public double? MouthSalaryAmount { get; set; } public int? Order { get; set; } public DateTime? Date { get; set; } public string? PositionLevel { get; set; } = string.Empty; public string? PositionType { get; set; } = string.Empty; public string? Position { get; set; } = string.Empty; } public class ProfileInsignia { public Guid? Id { get; set; } public DateTime? CreatedAt { get; set; } public Guid? CreatedUserId { get; set; } public DateTime? LastUpdatedAt { get; set; } public Guid? LastUpdateUserId { get; set; } public string? CreatedFullName { get; set; } public string? LastUpdateFullName { get; set; } public int? Year { get; set; } public Guid? InsigniaId { get; set; } public string? Insignia { get; set; } } }