using SolutionErp.Domain.Common;

namespace SolutionErp.Domain.Office;

// Phase 10.3 G-O3 (Mig 38 — S37) — Attachment cho Đề xuất.
// FK Cascade Proposal (xoá Đề xuất → wipe Attachments).
// Mirror PurchaseEvaluationAttachment pattern.
public class ProposalAttachment : AuditableEntity
{
    public Guid ProposalId { get; set; }
    public Proposal Proposal { get; set; } = null!;

    public string FileName { get; set; } = string.Empty;     // Original file name display
    public string FilePath { get; set; } = string.Empty;     // Server file path / blob URL
    public long FileSize { get; set; }                       // Bytes
    public string? MimeType { get; set; }                    // "application/pdf", "image/png"

    public Guid UploadedByUserId { get; set; }               // Drafter or approver tải lên
    public string UploadedByFullName { get; set; } = string.Empty;  // denorm
}
