23 lines
921 B
C#
23 lines
921 B
C#
namespace LiteCharms.Features.MidrandBooks.Products.Entities;
|
|
|
|
public class ProductPriceConfiguration : IEntityTypeConfiguration<ProductPrice>
|
|
{
|
|
public void Configure(EntityTypeBuilder<ProductPrice> builder)
|
|
{
|
|
builder.ToTable("Prices");
|
|
|
|
builder.HasKey(f => f.Id);
|
|
builder.Property(f => f.CreatedAt).IsRequired().ValueGeneratedOnAdd().HasDefaultValueSql("now()");
|
|
builder.Property(f => f.UpdatedAt).HasDefaultValueSql("now()");
|
|
builder.Property(f => f.ProductId).IsRequired();
|
|
builder.Property(f => f.Amount).IsRequired().HasPrecision(18, 2);
|
|
builder.Property(f => f.Discount).IsRequired().HasPrecision(18, 2);
|
|
builder.Property(f => f.Enabled).HasDefaultValue(false);
|
|
|
|
builder.HasOne(f => f.Product)
|
|
.WithMany(p => p.Prices)
|
|
.HasForeignKey(f => f.ProductId)
|
|
.OnDelete(DeleteBehavior.Restrict);
|
|
}
|
|
}
|