using BMA.EHR.Domain.Models.Base; using Newtonsoft.Json; using System.ComponentModel.DataAnnotations; namespace BMA.EHR.Leave.Service.DTOs.LeaveRequest { public class CreateLeaveRequestDto { [Required] public Guid Type { get; set; } = Guid.Empty; public string? LeaveSubTypeName { get; set; } = string.Empty; [Required] public DateTime LeaveStartDate { get; set; } = DateTime.Now; [Required] public DateTime LeaveEndDate { get; set; } = DateTime.Now; public string? LeaveWrote { get; set; } public string? LeaveRange { get; set; } = "ALL"; public string? LeaveRangeEnd { get; set; } = "ALL"; public double LeaveTotal { get; set; } = 0.0; public string? LeaveAddress { get; set; } public string? LeaveNumber { get; set; } public string? LeaveDetail { get; set; } public List LeaveDocument { get; set; } = new(); public IFormFile? LeaveDraftDocument { get; set; } public string? LeaveSalaryText { get; set; } public string? WifeDayName { get; set; } public string? WifeDayDateBorn { get; set; } public int? RestDayOldTotal { get; set; } public int? RestDayCurrentTotal { get; set; } public bool? OrdainDayStatus { get; set; } public string? OrdainDayLocationName { get; set; } public string? OrdainDayLocationAddress { get; set; } public string? OrdainDayLocationNumber { get; set; } public DateTime? OrdainDayOrdination { get; set; } public string? OrdainDayBuddhistLentName { get; set; } public string? OrdainDayBuddhistLentAddress { get; set; } public bool? HajjDayStatus { get; set; } public string? AbsentDaySummon { get; set; } public string? AbsentDayLocation { get; set; } public DateTime? AbsentDayRegistorDate { get; set; } public string? AbsentDayGetIn { get; set; } public string? AbsentDayAt { get; set; } public string? StudyDaySubject { get; set; } public string? StudyDayDegreeLevel { get; set; } public string? StudyDayUniversityName { get; set; } public string? StudyDayTrainingSubject { get; set; } public string? StudyDayTrainingName { get; set; } public string? StudyDayCountry { get; set; } public string? StudyDayScholarship { get; set; } public string? CoupleDayName { get; set; } public string? CoupleDayPosition { get; set; } public string? CoupleDayLevel { get; set; } public string? CoupleDayLevelCountry { get; set; } 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; } public string? CommanderPosition { get; set; } } }