using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; using SameBeat.Domain.Encje; using SameBeat.Domain.Enumy; namespace SameBeat.Infrastructure.BazaDanych.Konfiguracje; public class WydarzenieKonfiguracja : IEntityTypeConfiguration { public void Configure(EntityTypeBuilder budowniczy) { budowniczy.ToTable("Wydarzenia"); budowniczy.HasKey(w => w.Id); budowniczy.Property(w => w.Nazwa) .IsRequired() .HasMaxLength(200); budowniczy.Property(w => w.Status) .IsRequired() .HasConversion() .HasMaxLength(16); budowniczy.Property(w => w.UtworzoneUtc).IsRequired(); budowniczy.Property(w => w.UkladSceny) .IsRequired() .HasConversion() .HasMaxLength(16) .HasDefaultValue(UkladSceny.Grid4); budowniczy.Property(w => w.UtworId); budowniczy.Property(w => w.CzasStartuUtc); budowniczy.Property(w => w.PozycjaStartowaMs) .IsRequired() .HasDefaultValue(0); budowniczy.Property(w => w.StanOdtwarzania) .IsRequired() .HasConversion() .HasMaxLength(16) .HasDefaultValue(StanOdtwarzania.Zatrzymana); budowniczy.Property(w => w.GlosnoscMaster) .IsRequired() .HasDefaultValue(0.9f); budowniczy.Property(w => w.AktywnyMikrofonUczestnikId); budowniczy.Property(w => w.AktywnyMikrofonKoniecUtc); } }