using Lada.Framework.Data.Domains.Finance;
using Ladaer.BackEnd.Infrastructures.DTO.Items.Crm;
using Ladaer.BackEnd.Infrastructures.DTO.Items.Finance;

namespace Ladaer.BackEnd.Infrastructures.DTO.Results.Finance
{
    public class CustomerReconciliationSlipResult
    {
        public CustomerReconciliationSlipItem Slip { get; set; }
        public List<CustomerReconciliationSlipDetailItem> Details { get; set; } = new List<CustomerReconciliationSlipDetailItem>();
        public List<CustomerReconciliationLogItem> Logs { get; set; } = new List<CustomerReconciliationLogItem>();

        /// <summary>
        /// Danh sách tài khoản ngân hàng của khách hàng (chỉ hiển thị với phiếu Receivable - công ty cần chuyển tiền cho khách)
        /// </summary>
        public List<CustomerBankAccountItem> CustomerBankAccounts { get; set; } = new List<CustomerBankAccountItem>();

        /// <summary>
        /// Người dùng hiện tại có thể duyệt phiếu (chỉ áp dụng cho phiếu chi tiền)
        /// </summary>
        public bool CanApprove { get; set; }

        /// <summary>
        /// Người dùng hiện tại có thể từ chối phiếu
        /// </summary>
        public bool CanReject { get; set; }

        /// <summary>
        /// Người dùng hiện tại có thể hoàn thành phiếu
        /// </summary>
        public bool CanComplete { get; set; }
    }
}
