using System.Data.Entity.ModelConfiguration;
using DevIO.Business.Models.Produtos;

namespace DevIO.Infra.Data.Mappings
{
    public class ProdutoConfig : EntityTypeConfiguration<Produto>
    {
        public ProdutoConfig()
        {
            HasKey(p => p.Id);

            Property(p => p.Nome)
                .IsRequired()
                .HasMaxLength(200);

            Property(p => p.Descricao)
                .IsRequired()
                .HasMaxLength(1000);

            Property(p => p.Imagem)
                .IsRequired()
                .HasMaxLength(100);

            HasRequired(p => p.Fornecedor)
                .WithMany(f=>f.Produtos)
                .HasForeignKey(p=>p.FornecedorId);

            ToTable("Produtos");
        }
    }
}