using Microsoft.EntityFrameworkCore.Storage.ValueConversion.Internal; namespace BMA.EHR.Leave.Service.DTOs.LeaveRequest { public class GetLeaveRequestForAdminByIdDto { public Guid Id { get; set; } = Guid.Empty; public string? ReasonCommander { get; set; } public string? ReasonOligarch { get; set; } public string? PositionName { get; set; } public string? PositionLevelName { get; set; } public string? OrganizationName { get; set; } public string LeaveTypeName { get; set; } = string.Empty; public string? LeaveSubTypeName { get; set; } = string.Empty; public Guid LeaveTypeId { get; set; } = Guid.Empty; public string FullName { get; set; } = string.Empty; public DateTime DateSendLeave { get; set; } = DateTime.MinValue; public string Status { get; set; } = string.Empty; public DateTime LeaveStartDate { get; set; } = DateTime.Now; public DateTime LeaveEndDate { get; set; } = DateTime.Now; public string LeaveWrote { get; set; } = string.Empty; public string LeaveAddress { get; set; } = string.Empty; public string LeaveNumber { get; set; } = string.Empty; public string LeaveDetail { get; set; } = string.Empty; public List LeaveDocument { get; set; } = new(); public string LeaveDraftDocument { get; set; } public DateTime? LeaveLastStart { get; set; } = DateTime.MinValue; public DateTime? LeaveLastEnd { get; set; } = DateTime.MinValue; public double LeaveTotal { get; set; } = 0; public DateTime? LeaveBirthDate { get; set; } = DateTime.MinValue; public DateTime? LeaveGovernmentDate { get; set; } = DateTime.MinValue; public double LeaveSalary { get; set; } = 0; public string LeaveSalaryText { get; set; } = string.Empty; public string WifeDayName { get; set; } = string.Empty; public string WifeDayDateBorn { get; set; } = string.Empty; public double RestDayOldTotal { get; set; } = 0; public double RestDayCurrentTotal { get; set; } = 0; public bool OrdainDayStatus { get; set; } = false; public string OrdainDayLocationName { get; set; } = string.Empty; public string OrdainDayLocationAddress { get; set; } = string.Empty; public string OrdainDayLocationNumber { get; set; } = string.Empty; public DateTime OrdainDayOrdination { get; set; } = DateTime.Now; public string OrdainDayBuddhistLentName { get; set; } = string.Empty; public string OrdainDayBuddhistLentAddress { get; set; } = string.Empty; public bool HajjDayStatus { get; set; } = false; public string AbsentDaySummon { get; set; } = string.Empty; public string AbsentDayLocation { get; set; } = string.Empty; public DateTime AbsentDayRegistorDate { get; set; } = DateTime.Now; public string AbsentDayGetIn { get; set; } = string.Empty; public string AbsentDayAt { get; set; } = string.Empty; public string StudyDaySubject { get; set; } = string.Empty; public string StudyDayDegreeLevel { get; set; } = string.Empty; public string StudyDayUniversityName { get; set; } = string.Empty; public string StudyDayTrainingSubject { get; set; } = string.Empty; public string StudyDayTrainingName { get; set; } = string.Empty; public string StudyDayCountry { get; set; } = string.Empty; public string StudyDayScholarship { get; set; } = string.Empty; public string CoupleDayName { get; set; } = string.Empty; public string CoupleDayPosition { get; set; } = string.Empty; public string CoupleDayLevel { get; set; } = string.Empty; public string CoupleDayLevelCountry { get; set; } = string.Empty; public string? CoupleDayCountryHistory { get; set; } public string? CoupleDayTotalHistory { get; set; } public DateTime? CoupleDayStartDateHistory { get; set; } public DateTime? CoupleDayEndDateHistory { get; set; } public string? CoupleDaySumTotalHistory { get; set; } public string Dear { get; set; } = string.Empty; public string ApproveStep { get; set; } = string.Empty; public double LeaveLimit { get; set; } = 0; public double LeaveSummary { get; set; } = 0; public double LeaveRemain { get; set; } = 0; public string LeaveRange { get; set; } = string.Empty; public string LeaveRangeEnd { get; set; } = string.Empty; public string? ProfileType { get; set; } public string? CommanderPosition { get; set; } = string.Empty; public List Commanders { get; set; } = new(); public List Approvers { get; set; } = new(); public Guid? KeycloakUserId { get; set; } = Guid.Empty; } public class GetLeaveApproverDto { public int Seq { get; set; } = 0; public string Prefix { get; set; } = string.Empty; public string FirstName { get; set; } = string.Empty; public string LastName { get; set; } = string.Empty; public string PositionName { get; set; } = string.Empty; public string PositionSign { get; set; } = string.Empty; public Guid ProfileId { get; set; } = Guid.Empty; public Guid KeycloakId { get; set; } = Guid.Empty; public string ApproveStatus { get; set; } = string.Empty; public string Comment { get; set; } = string.Empty; } }