using Lada.Framework.Data.Domains.Finance;

namespace Ladaer.BackEnd.Infrastructures.DTO.Models.Finances
{
    /// <summary>
    /// Model filter cho tìm kiếm đối soát
    /// </summary>
    public class ReconciliationFilterModel
    {
        /// <summary>
        /// Từ khóa tìm kiếm (mã đối soát, tên khách hàng)
        /// </summary>
        public string? Keyword { get; set; }

        /// <summary>
        /// ID khách hàng
        /// </summary>
        public int? CustomerId { get; set; }

        /// <summary>
        /// Trạng thái đối soát
        /// </summary>
        public ReconciliationStatus? Status { get; set; }

        /// <summary>
        /// Từ ngày tạo
        /// </summary>
        public DateTimeOffset? FromCreatedDate { get; set; }

        /// <summary>
        /// Đến ngày tạo
        /// </summary>
        public DateTimeOffset? ToCreatedDate { get; set; }

        /// <summary>
        /// Từ ngày chuyển tiền
        /// </summary>
        public DateTimeOffset? FromTransferDate { get; set; }

        /// <summary>
        /// Đến ngày chuyển tiền
        /// </summary>
        public DateTimeOffset? ToTransferDate { get; set; }

        /// <summary>
        /// Số tiền từ
        /// </summary>
        public decimal? FromAmount { get; set; }

        /// <summary>
        /// Số tiền đến
        /// </summary>
        public decimal? ToAmount { get; set; }

        /// <summary>
        /// Người tạo
        /// </summary>
        public int? CreatedBy { get; set; }

        /// <summary>
        /// Người phê duyệt
        /// </summary>
        public int? ApprovedBy { get; set; }

        /// <summary>
        /// Người chuyển tiền
        /// </summary>
        public int? TransferredBy { get; set; }
    }
}
