using SolutionErp.Domain.Common;

namespace SolutionErp.Domain.PurchaseEvaluations;

// Hạng mục so sánh giá + ngân sách (Excel III + "CHI TIẾT SO SÁNH").
// Tách Quotes ra PurchaseEvaluationQuote để normalize N NCC × M hạng mục.
public class PurchaseEvaluationDetail : BaseEntity
{
    public Guid PurchaseEvaluationId { get; set; }
    public string GroupCode { get; set; } = string.Empty;   // "A.I", "A.II", "A.III", "A.IV"
    public string GroupName { get; set; } = string.Empty;   // "Bê tông", "Phụ gia", "Bơm bê tông", "Vận chuyển"
    public string? ItemCode { get; set; }                    // "DMCCC0001"
    public string NoiDung { get; set; } = string.Empty;      // "Concrete M100"
    public string? DonViTinh { get; set; }                   // "m3"
    public decimal KhoiLuongNganSach { get; set; }
    public decimal KhoiLuongThiCong { get; set; }
    public decimal DonGiaNganSach { get; set; }              // Chưa VAT
    public decimal ThanhTienNganSach { get; set; }           // = KL × Đơn giá (hoặc nhập tay)
    public int Order { get; set; }
    public string? GhiChu { get; set; }

    public PurchaseEvaluation? PurchaseEvaluation { get; set; }
    public List<PurchaseEvaluationQuote> Quotes { get; set; } = new();
}
