using SolutionErp.Domain.Common;

namespace SolutionErp.Domain.PurchaseEvaluations;

public enum PurchaseEvaluationAttachmentPurpose
{
    QuoteDocument = 1,        // File báo giá NCC gửi (PDF/xlsx) — gắn với NCC cụ thể
    RequirementSpec = 2,      // Bản vẽ/yêu cầu kỹ thuật kèm theo
    DecisionExport = 3,       // Bản phiếu duyệt đã export
    ComparisonTable = 4,      // Bảng so sánh tổng — không gắn với 1 NCC, file tổng hợp
    ApprovalAttachment = 5,   // S78 — file người DUYỆT tự đính kèm khi duyệt (thay đổi nhỏ, không muốn Trả lại). supplierId=null, uploader=CreatedBy
    Other = 99,
}

public class PurchaseEvaluationAttachment : BaseEntity
{
    public Guid PurchaseEvaluationId { get; set; }
    public Guid? PurchaseEvaluationSupplierId { get; set; }   // Null nếu không gắn với NCC cụ thể
    public string FileName { get; set; } = string.Empty;
    public string StoragePath { get; set; } = string.Empty;
    public long FileSize { get; set; }
    public string ContentType { get; set; } = string.Empty;
    public PurchaseEvaluationAttachmentPurpose Purpose { get; set; }
    public string? Note { get; set; }

    public PurchaseEvaluation? PurchaseEvaluation { get; set; }
}
