namespace IRaCIS.Application.Contracts.Pay
{
    public class PaymentAdjustmentCommand
    {
        public Guid? Id { get; set; }
        public Guid ReviewerId { get; set; }
        public DateTime YearMonth { get; set; }
        public decimal AdjustPaymentUSD { get; set; }
        public decimal AdjustPaymentCNY { get; set; }
        public string Note { get; set; } = string.Empty;
    }

    public class PaymentAdjustmentDTO
    {
        public Guid Id { get; set; }
        public Guid ReviewerId { get; set; }
        public string YearMonth { get; set; } = String.Empty;
        public DateTime YearMonthDate { get; set; }
        public bool IsLock { get; set; }
        public decimal AdjustPaymentUSD { get; set; }
        public decimal AdjustPaymentCNY { get; set; }
        public string Note { get; set; } = String.Empty;
    }

    public class PaymentAdjustmentDetailDTO : PaymentAdjustmentDTO
    {
        public string ReviewerCode { get; set; } = String.Empty;
        public string FirstName { get; set; } = String.Empty;
        public string LastName { get; set; } = String.Empty;
        public string FullName => LastName + " / " + FirstName;
        public string ChineseName { get; set; } = String.Empty;
    }

    public class PaymentAdjustmentQueryDTO : PageInput
    {
        public string TrialCode { get; set; } = string.Empty;
        public string Reviewer { get; set; } = string.Empty;
        public DateTime BeginMonth { get; set; }
        public DateTime EndMonth { get; set; }
    }

    public class DoctorSelectDTO
    {
        public Guid Id { get; set; }
        public string Code { get; set; } = string.Empty;
        public string FirstName { get; set; } = String.Empty;
        public string LastName { get; set; } = String.Empty;
        public string FullName => LastName + " / " + FirstName;
        public string ChineseName { get; set; } = String.Empty;
    }
}