using System;
using IRaCIS.Core.Infrastructure.Extention;

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;
    }
}