Created Author, Book, AuthorBook, Page and Product with Price

This commit is contained in:
Khwezi Mngoma
2026-05-25 22:18:53 +02:00
parent 87da491ed6
commit d55bf4f82f
39 changed files with 1383 additions and 23 deletions
@@ -0,0 +1,22 @@
namespace LiteCharms.Features.MidrandBooks.Products.Entities;
public class ProductConfiguration : IEntityTypeConfiguration<Product>
{
public void Configure(EntityTypeBuilder<Product> builder)
{
builder.ToTable("Products");
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.Type).IsRequired();
builder.Property(f => f.Name).IsRequired().HasMaxLength(255);
builder.Property(f => f.Summary).IsRequired().HasMaxLength(512);
builder.Property(f => f.Description).HasMaxLength(1024);
builder.Property(f => f.ImageUrl).HasMaxLength(1024);
builder.Property(f => f.ThumbnailUrls).IsRequired(false).HasColumnType("jsonb");
builder.Property(f => f.Metadata).IsRequired(false).HasColumnType("jsonb");
builder.Property(f => f.Categories).IsRequired(false).HasColumnType("jsonb");
builder.Property(f => f.Enabled).HasDefaultValue(false);
}
}