using System.ComponentModel.DataAnnotations;
using Microsoft.AspNetCore.Http;

namespace Ladaer.BackEnd.Infrastructures.DTO.Models.FuelCards;

/// <summary>
/// Model import lịch sử giao dịch thẻ xăng dầu từ Excel.
/// File Excel phải có cột "Tài khoản thẻ/ Số thẻ" để hệ thống ánh xạ với thẻ tương ứng.
/// </summary>
public class FuelCardTransactionHistoryImportModel
{
    /// <summary>
    /// File Excel chứa lịch sử giao dịch
    /// </summary>
    [Required(ErrorMessage = "Phải upload file Excel")]
    public IFormFile File { get; set; } = null!;

    /// <summary>
    /// Có ghi đè giao dịch trùng không (optional, default: false)
    /// </summary>
    public bool OverwriteExisting { get; set; } = false;

    /// <summary>
    /// Lọc theo ngày bắt đầu (optional)
    /// </summary>
    public DateTimeOffset? FromDate { get; set; }

    /// <summary>
    /// Lọc theo ngày kết thúc (optional)
    /// </summary>
    public DateTimeOffset? ToDate { get; set; }
}
