diff --git a/PyroFetes/Migrations/20251010083620_FixingDatabase.Designer.cs b/PyroFetes/Migrations/20251010083620_FixingDatabase.Designer.cs
new file mode 100644
index 0000000..7fcc4e0
--- /dev/null
+++ b/PyroFetes/Migrations/20251010083620_FixingDatabase.Designer.cs
@@ -0,0 +1,1950 @@
+//
+using System;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using PyroFetes;
+
+#nullable disable
+
+namespace PyroFetes.Migrations
+{
+ [DbContext(typeof(PyroFetesDbContext))]
+ [Migration("20251010083620_FixingDatabase")]
+ partial class FixingDatabase
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "8.0.20")
+ .HasAnnotation("Relational:MaxIdentifierLength", 128);
+
+ SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
+
+ modelBuilder.Entity("PyroFetes.Models.Availability", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("AvailabilityDate")
+ .HasColumnType("date");
+
+ b.Property("DeliveryDate")
+ .HasColumnType("date");
+
+ b.Property("ExpirationDate")
+ .HasColumnType("date");
+
+ b.Property("RenewallDate")
+ .HasColumnType("date");
+
+ b.HasKey("Id");
+
+ b.ToTable("Availabilities");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Brand", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("ProductId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ProductId");
+
+ b.ToTable("Brands");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.City", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("ZipCode")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.ToTable("City");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Classification", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Label")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Classifications");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Color", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Label")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Colors");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Communication", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Calling")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("ContactId")
+ .HasColumnType("int");
+
+ b.Property("Email")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Meeting")
+ .IsRequired()
+ .HasMaxLength(300)
+ .HasColumnType("nvarchar(300)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ContactId");
+
+ b.ToTable("Communications");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Contact", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Address")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("City")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("CustomerId")
+ .HasColumnType("int");
+
+ b.Property("Email")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("FirstName")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("LastName")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("PhoneNumber")
+ .IsRequired()
+ .HasMaxLength(30)
+ .HasColumnType("nvarchar(30)");
+
+ b.Property("Role")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("ZipCode")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CustomerId");
+
+ b.ToTable("Contacts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ContactServiceProvider", b =>
+ {
+ b.Property("ContactId")
+ .HasColumnType("int");
+
+ b.Property("ServiceProviderId")
+ .HasColumnType("int");
+
+ b.HasKey("ContactId", "ServiceProviderId");
+
+ b.HasIndex("ServiceProviderId");
+
+ b.ToTable("ContactServiceProvider");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Contract", b =>
+ {
+ b.Property("ShowId")
+ .HasColumnType("int");
+
+ b.Property("ServiceProviderId")
+ .HasColumnType("int");
+
+ b.Property("TermsAndConditions")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("ShowId", "ServiceProviderId");
+
+ b.HasIndex("ServiceProviderId");
+
+ b.ToTable("Contract");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Customer", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("CustomerTypeId")
+ .HasColumnType("int");
+
+ b.Property("Note")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("nvarchar(200)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CustomerTypeId");
+
+ b.ToTable("Customers");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.CustomerType", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Label")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.HasKey("Id");
+
+ b.ToTable("CustomerTypes");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Deliverer", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Transporter")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Deliverers");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.DeliveryNote", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("DelivererId")
+ .HasColumnType("int");
+
+ b.Property("EstimateDeliveryDate")
+ .HasColumnType("date");
+
+ b.Property("ExpeditionDate")
+ .HasColumnType("date");
+
+ b.Property("RealDeliveryDate")
+ .HasColumnType("date");
+
+ b.Property("TrackingNumber")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("DelivererId");
+
+ b.ToTable("DeliveryNotes");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Effect", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Label")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("nvarchar(200)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Effects");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ExperienceLevel", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Label")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("StaffId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("StaffId");
+
+ b.ToTable("ExperienceLevels");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.HistoryOfApproval", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("DeliveryDate")
+ .HasColumnType("date");
+
+ b.Property("ExpirationDate")
+ .HasColumnType("date");
+
+ b.HasKey("Id");
+
+ b.ToTable("HistoryOfApprovals");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Material", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Quantity")
+ .HasColumnType("int");
+
+ b.Property("WarehouseId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("WarehouseId");
+
+ b.ToTable("Materials");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.MaterialWarehouse", b =>
+ {
+ b.Property("MaterialId")
+ .HasColumnType("int");
+
+ b.Property("WarehouseId")
+ .HasColumnType("int");
+
+ b.HasKey("MaterialId", "WarehouseId");
+
+ b.HasIndex("WarehouseId");
+
+ b.ToTable("MaterialWarehouse");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Movement", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Arrival")
+ .HasColumnType("datetime2");
+
+ b.Property("Date")
+ .HasColumnType("datetime2");
+
+ b.Property("DestinationWarehouseId")
+ .HasColumnType("int");
+
+ b.Property("Quantity")
+ .HasColumnType("int");
+
+ b.Property("SourceWarehouseId")
+ .HasColumnType("int");
+
+ b.Property("Start")
+ .HasColumnType("datetime2");
+
+ b.HasKey("Id");
+
+ b.HasIndex("DestinationWarehouseId");
+
+ b.HasIndex("SourceWarehouseId");
+
+ b.ToTable("Movements");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Price", b =>
+ {
+ b.Property("ProductId")
+ .HasColumnType("int");
+
+ b.Property("SupplierId")
+ .HasColumnType("int");
+
+ b.Property("SellingPrice")
+ .HasColumnType("decimal(18,2)");
+
+ b.HasKey("ProductId", "SupplierId");
+
+ b.HasIndex("SupplierId");
+
+ b.ToTable("Prices");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Product", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ApprovalNumber")
+ .HasColumnType("int");
+
+ b.Property("Caliber")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("ClassificationId")
+ .HasColumnType("int");
+
+ b.Property("Duration")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("Image")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Link")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("nvarchar(200)");
+
+ b.Property("MinimalQuantity")
+ .HasColumnType("int");
+
+ b.Property("MovementId")
+ .HasColumnType("int");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Nec")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("ProductCategoryId")
+ .HasColumnType("int");
+
+ b.Property("Reference")
+ .IsRequired()
+ .HasMaxLength(20)
+ .HasColumnType("nvarchar(20)");
+
+ b.Property("Weight")
+ .HasColumnType("decimal(18,2)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ClassificationId");
+
+ b.HasIndex("MovementId");
+
+ b.HasIndex("ProductCategoryId");
+
+ b.ToTable("Products");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProductCategory", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Label")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.HasKey("Id");
+
+ b.ToTable("ProductCategories");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProductColor", b =>
+ {
+ b.Property("ProductId")
+ .HasColumnType("int");
+
+ b.Property("ColorId")
+ .HasColumnType("int");
+
+ b.HasKey("ProductId", "ColorId");
+
+ b.HasIndex("ColorId");
+
+ b.ToTable("ProductColors");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProductDelivery", b =>
+ {
+ b.Property("ProductId")
+ .HasColumnType("int");
+
+ b.Property("DeliveryNoteId")
+ .HasColumnType("int");
+
+ b.Property("Quantity")
+ .HasColumnType("int");
+
+ b.HasKey("ProductId", "DeliveryNoteId");
+
+ b.HasIndex("DeliveryNoteId");
+
+ b.ToTable("ProductDeliveries");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProductEffect", b =>
+ {
+ b.Property("ProductId")
+ .HasColumnType("int");
+
+ b.Property("EffectId")
+ .HasColumnType("int");
+
+ b.HasKey("ProductId", "EffectId");
+
+ b.HasIndex("EffectId");
+
+ b.ToTable("ProductEffects");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProductTimecode", b =>
+ {
+ b.Property("ProductId")
+ .HasColumnType("int");
+
+ b.Property("ShowId")
+ .HasColumnType("int");
+
+ b.Property("End")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("Start")
+ .HasColumnType("decimal(18,2)");
+
+ b.HasKey("ProductId", "ShowId");
+
+ b.HasIndex("ShowId");
+
+ b.ToTable("ProductTimecode");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProviderContact", b =>
+ {
+ b.Property("ContactId")
+ .HasColumnType("int");
+
+ b.Property("ProviderId")
+ .HasColumnType("int");
+
+ b.HasKey("ContactId", "ProviderId");
+
+ b.HasIndex("ProviderId");
+
+ b.ToTable("ProviderContacts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProviderType", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Label")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.HasKey("Id");
+
+ b.ToTable("ProviderTypes");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.PurchaseOrder", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("PurchaseConditions")
+ .IsRequired()
+ .HasMaxLength(300)
+ .HasColumnType("nvarchar(300)");
+
+ b.HasKey("Id");
+
+ b.ToTable("PurchaseOrders");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.PurchaseProduct", b =>
+ {
+ b.Property("ProductId")
+ .HasColumnType("int");
+
+ b.Property("PurchaseOrderId")
+ .HasColumnType("int");
+
+ b.Property("Quantity")
+ .HasColumnType("int");
+
+ b.HasKey("ProductId", "PurchaseOrderId");
+
+ b.HasIndex("PurchaseOrderId");
+
+ b.ToTable("PurchaseProducts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Quotation", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ConditionsSale")
+ .IsRequired()
+ .HasMaxLength(300)
+ .HasColumnType("nvarchar(300)");
+
+ b.Property("CustomerId")
+ .HasColumnType("int");
+
+ b.Property("Message")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("nvarchar(200)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CustomerId");
+
+ b.ToTable("Quotations");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.QuotationProduct", b =>
+ {
+ b.Property("ProductId")
+ .HasColumnType("int");
+
+ b.Property("QuotationId")
+ .HasColumnType("int");
+
+ b.Property("Quantity")
+ .HasColumnType("int");
+
+ b.HasKey("ProductId", "QuotationId");
+
+ b.HasIndex("QuotationId");
+
+ b.ToTable("QuotationProducts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ServiceProvider", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Price")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("ProviderTypeId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ProviderTypeId");
+
+ b.ToTable("Providers");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Setting", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ElectronicSignature")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Logo")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Settings");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Show", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("CityId")
+ .HasColumnType("int");
+
+ b.Property("Date")
+ .HasColumnType("date");
+
+ b.Property("Description")
+ .HasMaxLength(500)
+ .HasColumnType("nvarchar(500)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Place")
+ .IsRequired()
+ .HasMaxLength(120)
+ .HasColumnType("nvarchar(120)");
+
+ b.Property("PyrotechnicImplementationPlan")
+ .IsRequired()
+ .HasMaxLength(500)
+ .HasColumnType("nvarchar(500)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CityId");
+
+ b.ToTable("Shows");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ShowMaterial", b =>
+ {
+ b.Property("ShowId")
+ .HasColumnType("int");
+
+ b.Property("MaterialId")
+ .HasColumnType("int");
+
+ b.HasKey("ShowId", "MaterialId");
+
+ b.HasIndex("MaterialId");
+
+ b.ToTable("ShowMaterial");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ShowStaff", b =>
+ {
+ b.Property("StaffId")
+ .HasColumnType("int");
+
+ b.Property("ShowId")
+ .HasColumnType("int");
+
+ b.HasKey("StaffId", "ShowId");
+
+ b.HasIndex("ShowId");
+
+ b.ToTable("ShowStaff");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ShowTruck", b =>
+ {
+ b.Property("ShowId")
+ .HasColumnType("int");
+
+ b.Property("TruckId")
+ .HasColumnType("int");
+
+ b.HasKey("ShowId", "TruckId");
+
+ b.HasIndex("TruckId");
+
+ b.ToTable("ShowTruck");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Sound", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Artist")
+ .IsRequired()
+ .HasMaxLength(120)
+ .HasColumnType("nvarchar(120)");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("Duration")
+ .IsRequired()
+ .HasColumnType("int");
+
+ b.Property("Format")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("nvarchar(40)");
+
+ b.Property("Kind")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("nvarchar(40)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(120)
+ .HasColumnType("nvarchar(120)");
+
+ b.Property("SoundCategoryId")
+ .HasColumnType("int");
+
+ b.Property("Type")
+ .IsRequired()
+ .HasMaxLength(60)
+ .HasColumnType("nvarchar(60)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("SoundCategoryId");
+
+ b.ToTable("Sounds");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.SoundCategory", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.HasKey("Id");
+
+ b.ToTable("SoundCategories");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.SoundTimecode", b =>
+ {
+ b.Property("ShowId")
+ .HasColumnType("int");
+
+ b.Property("SoundId")
+ .HasColumnType("int");
+
+ b.Property("End")
+ .HasColumnType("decimal(18,2)");
+
+ b.Property("Start")
+ .HasColumnType("decimal(18,2)");
+
+ b.HasKey("ShowId", "SoundId");
+
+ b.HasIndex("SoundId");
+
+ b.ToTable("SoundTimecodes");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Staff", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Email")
+ .IsRequired()
+ .HasMaxLength(120)
+ .HasColumnType("nvarchar(120)");
+
+ b.Property("F4T2ExpirationDate")
+ .HasColumnType("date");
+
+ b.Property("F4T2NumberApproval")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("FirstName")
+ .IsRequired()
+ .HasMaxLength(60)
+ .HasColumnType("nvarchar(60)");
+
+ b.Property("LastName")
+ .IsRequired()
+ .HasMaxLength(60)
+ .HasColumnType("nvarchar(60)");
+
+ b.Property("Profession")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Staffs");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.StaffAvailability", b =>
+ {
+ b.Property("AvailabilityId")
+ .HasColumnType("int");
+
+ b.Property("StaffId")
+ .HasColumnType("int");
+
+ b.HasKey("AvailabilityId", "StaffId");
+
+ b.HasIndex("StaffId");
+
+ b.ToTable("StaffAvailabilities");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.StaffContact", b =>
+ {
+ b.Property("ContactId")
+ .HasColumnType("int");
+
+ b.Property("StaffId")
+ .HasColumnType("int");
+
+ b.HasKey("ContactId", "StaffId");
+
+ b.HasIndex("StaffId");
+
+ b.ToTable("StaffContacts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.StaffHistoryOfApproval", b =>
+ {
+ b.Property("HistoryOfApprovalId")
+ .HasColumnType("int");
+
+ b.Property("StaffId")
+ .HasColumnType("int");
+
+ b.HasKey("HistoryOfApprovalId", "StaffId");
+
+ b.HasIndex("StaffId");
+
+ b.ToTable("StaffHistoryOfApprovals");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Supplier", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Address")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("City")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("DeliveryDelay")
+ .HasColumnType("int");
+
+ b.Property("Email")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Phone")
+ .IsRequired()
+ .HasMaxLength(30)
+ .HasColumnType("nvarchar(30)");
+
+ b.Property("ZipCode")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.ToTable("Suppliers");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Truck", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("MaxExplosiveCapacity")
+ .IsRequired()
+ .HasColumnType("float");
+
+ b.Property("Sizes")
+ .IsRequired()
+ .HasMaxLength(80)
+ .HasColumnType("nvarchar(80)");
+
+ b.Property("Status")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("nvarchar(40)");
+
+ b.Property("Type")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("nvarchar(40)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Trucks");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.User", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Email")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Fonction")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Password")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("Salt")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Users");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Warehouse", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Address")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("City")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Current")
+ .HasColumnType("int");
+
+ b.Property("MaxWeight")
+ .HasColumnType("int");
+
+ b.Property("MinWeight")
+ .HasColumnType("int");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("ZipCode")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.ToTable("Warehouses");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.WarehouseProduct", b =>
+ {
+ b.Property("ProductId")
+ .HasColumnType("int");
+
+ b.Property("WarehouseId")
+ .HasColumnType("int");
+
+ b.Property("Quantity")
+ .HasColumnType("int");
+
+ b.HasKey("ProductId", "WarehouseId");
+
+ b.HasIndex("WarehouseId");
+
+ b.ToTable("WarehouseProducts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Brand", b =>
+ {
+ b.HasOne("PyroFetes.Models.Product", "Product")
+ .WithMany("Brands")
+ .HasForeignKey("ProductId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Product");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Communication", b =>
+ {
+ b.HasOne("PyroFetes.Models.Contact", "Contact")
+ .WithMany("Communications")
+ .HasForeignKey("ContactId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Contact");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Contact", b =>
+ {
+ b.HasOne("PyroFetes.Models.Customer", "Customer")
+ .WithMany("Contacts")
+ .HasForeignKey("CustomerId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Customer");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ContactServiceProvider", b =>
+ {
+ b.HasOne("PyroFetes.Models.Contact", "Contact")
+ .WithMany("ContactServiceProviders")
+ .HasForeignKey("ContactId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.ServiceProvider", "ServiceProvider")
+ .WithMany("ContactServiceProviders")
+ .HasForeignKey("ServiceProviderId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Contact");
+
+ b.Navigation("ServiceProvider");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Contract", b =>
+ {
+ b.HasOne("PyroFetes.Models.ServiceProvider", "ServiceProvider")
+ .WithMany("Contracts")
+ .HasForeignKey("ServiceProviderId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Show", "Show")
+ .WithMany("Contracts")
+ .HasForeignKey("ShowId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("ServiceProvider");
+
+ b.Navigation("Show");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Customer", b =>
+ {
+ b.HasOne("PyroFetes.Models.CustomerType", "CustomerType")
+ .WithMany("Customers")
+ .HasForeignKey("CustomerTypeId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("CustomerType");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.DeliveryNote", b =>
+ {
+ b.HasOne("PyroFetes.Models.Deliverer", "Deliverer")
+ .WithMany("DeliveryNotes")
+ .HasForeignKey("DelivererId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Deliverer");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ExperienceLevel", b =>
+ {
+ b.HasOne("PyroFetes.Models.Staff", "Staff")
+ .WithMany("ExperienceLevels")
+ .HasForeignKey("StaffId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Staff");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Material", b =>
+ {
+ b.HasOne("PyroFetes.Models.Warehouse", "Warehouse")
+ .WithMany()
+ .HasForeignKey("WarehouseId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Warehouse");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.MaterialWarehouse", b =>
+ {
+ b.HasOne("PyroFetes.Models.Material", "Material")
+ .WithMany("MaterialWarehouses")
+ .HasForeignKey("MaterialId")
+ .OnDelete(DeleteBehavior.Restrict)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Warehouse", "Warehouse")
+ .WithMany("MaterialWarehouses")
+ .HasForeignKey("WarehouseId")
+ .OnDelete(DeleteBehavior.Restrict)
+ .IsRequired();
+
+ b.Navigation("Material");
+
+ b.Navigation("Warehouse");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Movement", b =>
+ {
+ b.HasOne("PyroFetes.Models.Warehouse", "DestinationWarehouse")
+ .WithMany("MovementsDestination")
+ .HasForeignKey("DestinationWarehouseId")
+ .OnDelete(DeleteBehavior.Restrict);
+
+ b.HasOne("PyroFetes.Models.Warehouse", "SourceWarehouse")
+ .WithMany("MovementsSource")
+ .HasForeignKey("SourceWarehouseId")
+ .OnDelete(DeleteBehavior.Restrict);
+
+ b.Navigation("DestinationWarehouse");
+
+ b.Navigation("SourceWarehouse");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Price", b =>
+ {
+ b.HasOne("PyroFetes.Models.Product", "Product")
+ .WithMany("Prices")
+ .HasForeignKey("ProductId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Supplier", "Supplier")
+ .WithMany("Prices")
+ .HasForeignKey("SupplierId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Product");
+
+ b.Navigation("Supplier");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Product", b =>
+ {
+ b.HasOne("PyroFetes.Models.Classification", "Classification")
+ .WithMany("Products")
+ .HasForeignKey("ClassificationId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Movement", "Movement")
+ .WithMany("Products")
+ .HasForeignKey("MovementId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.ProductCategory", "ProductCategory")
+ .WithMany("Products")
+ .HasForeignKey("ProductCategoryId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Classification");
+
+ b.Navigation("Movement");
+
+ b.Navigation("ProductCategory");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProductColor", b =>
+ {
+ b.HasOne("PyroFetes.Models.Color", "Color")
+ .WithMany("ProductColors")
+ .HasForeignKey("ColorId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Product", "Product")
+ .WithMany("ProductColors")
+ .HasForeignKey("ProductId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Color");
+
+ b.Navigation("Product");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProductDelivery", b =>
+ {
+ b.HasOne("PyroFetes.Models.DeliveryNote", "DeliveryNote")
+ .WithMany("ProductDeliveries")
+ .HasForeignKey("DeliveryNoteId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Product", "Product")
+ .WithMany("ProductDeliveries")
+ .HasForeignKey("ProductId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("DeliveryNote");
+
+ b.Navigation("Product");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProductEffect", b =>
+ {
+ b.HasOne("PyroFetes.Models.Effect", "Effect")
+ .WithMany("ProductEffects")
+ .HasForeignKey("EffectId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Product", "Product")
+ .WithMany("ProductEffects")
+ .HasForeignKey("ProductId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Effect");
+
+ b.Navigation("Product");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProductTimecode", b =>
+ {
+ b.HasOne("PyroFetes.Models.Product", "Product")
+ .WithMany("ProductTimecodes")
+ .HasForeignKey("ProductId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Show", "Show")
+ .WithMany("ProductTimecodes")
+ .HasForeignKey("ShowId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Product");
+
+ b.Navigation("Show");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProviderContact", b =>
+ {
+ b.HasOne("PyroFetes.Models.Contact", "Contact")
+ .WithMany()
+ .HasForeignKey("ContactId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.ServiceProvider", "Provider")
+ .WithMany()
+ .HasForeignKey("ProviderId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Contact");
+
+ b.Navigation("Provider");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.PurchaseProduct", b =>
+ {
+ b.HasOne("PyroFetes.Models.Product", "Product")
+ .WithMany("PurchaseProducts")
+ .HasForeignKey("ProductId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.PurchaseOrder", "PurchaseOrder")
+ .WithMany("PurchaseProducts")
+ .HasForeignKey("PurchaseOrderId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Product");
+
+ b.Navigation("PurchaseOrder");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Quotation", b =>
+ {
+ b.HasOne("PyroFetes.Models.Customer", "Customer")
+ .WithMany("Quotations")
+ .HasForeignKey("CustomerId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Customer");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.QuotationProduct", b =>
+ {
+ b.HasOne("PyroFetes.Models.Product", "Product")
+ .WithMany("QuotationProducts")
+ .HasForeignKey("ProductId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Quotation", "Quotation")
+ .WithMany("QuotationProducts")
+ .HasForeignKey("QuotationId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Product");
+
+ b.Navigation("Quotation");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ServiceProvider", b =>
+ {
+ b.HasOne("PyroFetes.Models.ProviderType", "ProviderType")
+ .WithMany("ServiceProviders")
+ .HasForeignKey("ProviderTypeId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("ProviderType");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Show", b =>
+ {
+ b.HasOne("PyroFetes.Models.City", "City")
+ .WithMany("Shows")
+ .HasForeignKey("CityId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("City");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ShowMaterial", b =>
+ {
+ b.HasOne("PyroFetes.Models.Material", "Material")
+ .WithMany("ShowMaterials")
+ .HasForeignKey("MaterialId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Show", "Show")
+ .WithMany("ShowMaterials")
+ .HasForeignKey("ShowId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Material");
+
+ b.Navigation("Show");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ShowStaff", b =>
+ {
+ b.HasOne("PyroFetes.Models.Show", "Show")
+ .WithMany("ShowStaffs")
+ .HasForeignKey("ShowId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Staff", "Staff")
+ .WithMany("ShowStaffs")
+ .HasForeignKey("StaffId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Show");
+
+ b.Navigation("Staff");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ShowTruck", b =>
+ {
+ b.HasOne("PyroFetes.Models.Show", "Show")
+ .WithMany("ShowTrucks")
+ .HasForeignKey("ShowId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Truck", "Truck")
+ .WithMany("ShowTrucks")
+ .HasForeignKey("TruckId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Show");
+
+ b.Navigation("Truck");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Sound", b =>
+ {
+ b.HasOne("PyroFetes.Models.SoundCategory", "SoundCategory")
+ .WithMany("Sounds")
+ .HasForeignKey("SoundCategoryId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("SoundCategory");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.SoundTimecode", b =>
+ {
+ b.HasOne("PyroFetes.Models.Show", "Show")
+ .WithMany("SoundTimecodes")
+ .HasForeignKey("ShowId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Sound", "Sound")
+ .WithMany("SoundTimecodes")
+ .HasForeignKey("SoundId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Show");
+
+ b.Navigation("Sound");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.StaffAvailability", b =>
+ {
+ b.HasOne("PyroFetes.Models.Availability", "Availability")
+ .WithMany("StaffAvailabilities")
+ .HasForeignKey("AvailabilityId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Staff", "Staff")
+ .WithMany("StaffAvailabilities")
+ .HasForeignKey("StaffId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Availability");
+
+ b.Navigation("Staff");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.StaffContact", b =>
+ {
+ b.HasOne("PyroFetes.Models.Contact", "Contact")
+ .WithMany("StaffContacts")
+ .HasForeignKey("ContactId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Staff", "Staff")
+ .WithMany("StaffContacts")
+ .HasForeignKey("StaffId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Contact");
+
+ b.Navigation("Staff");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.StaffHistoryOfApproval", b =>
+ {
+ b.HasOne("PyroFetes.Models.HistoryOfApproval", "HistoryOfApproval")
+ .WithMany("StaffHistoryOfApprovals")
+ .HasForeignKey("HistoryOfApprovalId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Staff", "Staff")
+ .WithMany("StaffHistoryOfApprovals")
+ .HasForeignKey("StaffId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("HistoryOfApproval");
+
+ b.Navigation("Staff");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.WarehouseProduct", b =>
+ {
+ b.HasOne("PyroFetes.Models.Product", "Product")
+ .WithMany("WarehouseProducts")
+ .HasForeignKey("ProductId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PyroFetes.Models.Warehouse", "Warehouse")
+ .WithMany("WarehouseProducts")
+ .HasForeignKey("WarehouseId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Product");
+
+ b.Navigation("Warehouse");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Availability", b =>
+ {
+ b.Navigation("StaffAvailabilities");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.City", b =>
+ {
+ b.Navigation("Shows");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Classification", b =>
+ {
+ b.Navigation("Products");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Color", b =>
+ {
+ b.Navigation("ProductColors");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Contact", b =>
+ {
+ b.Navigation("Communications");
+
+ b.Navigation("ContactServiceProviders");
+
+ b.Navigation("StaffContacts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Customer", b =>
+ {
+ b.Navigation("Contacts");
+
+ b.Navigation("Quotations");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.CustomerType", b =>
+ {
+ b.Navigation("Customers");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Deliverer", b =>
+ {
+ b.Navigation("DeliveryNotes");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.DeliveryNote", b =>
+ {
+ b.Navigation("ProductDeliveries");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Effect", b =>
+ {
+ b.Navigation("ProductEffects");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.HistoryOfApproval", b =>
+ {
+ b.Navigation("StaffHistoryOfApprovals");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Material", b =>
+ {
+ b.Navigation("MaterialWarehouses");
+
+ b.Navigation("ShowMaterials");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Movement", b =>
+ {
+ b.Navigation("Products");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Product", b =>
+ {
+ b.Navigation("Brands");
+
+ b.Navigation("Prices");
+
+ b.Navigation("ProductColors");
+
+ b.Navigation("ProductDeliveries");
+
+ b.Navigation("ProductEffects");
+
+ b.Navigation("ProductTimecodes");
+
+ b.Navigation("PurchaseProducts");
+
+ b.Navigation("QuotationProducts");
+
+ b.Navigation("WarehouseProducts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProductCategory", b =>
+ {
+ b.Navigation("Products");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ProviderType", b =>
+ {
+ b.Navigation("ServiceProviders");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.PurchaseOrder", b =>
+ {
+ b.Navigation("PurchaseProducts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Quotation", b =>
+ {
+ b.Navigation("QuotationProducts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.ServiceProvider", b =>
+ {
+ b.Navigation("ContactServiceProviders");
+
+ b.Navigation("Contracts");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Show", b =>
+ {
+ b.Navigation("Contracts");
+
+ b.Navigation("ProductTimecodes");
+
+ b.Navigation("ShowMaterials");
+
+ b.Navigation("ShowStaffs");
+
+ b.Navigation("ShowTrucks");
+
+ b.Navigation("SoundTimecodes");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Sound", b =>
+ {
+ b.Navigation("SoundTimecodes");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.SoundCategory", b =>
+ {
+ b.Navigation("Sounds");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Staff", b =>
+ {
+ b.Navigation("ExperienceLevels");
+
+ b.Navigation("ShowStaffs");
+
+ b.Navigation("StaffAvailabilities");
+
+ b.Navigation("StaffContacts");
+
+ b.Navigation("StaffHistoryOfApprovals");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Supplier", b =>
+ {
+ b.Navigation("Prices");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Truck", b =>
+ {
+ b.Navigation("ShowTrucks");
+ });
+
+ modelBuilder.Entity("PyroFetes.Models.Warehouse", b =>
+ {
+ b.Navigation("MaterialWarehouses");
+
+ b.Navigation("MovementsDestination");
+
+ b.Navigation("MovementsSource");
+
+ b.Navigation("WarehouseProducts");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/PyroFetes/Migrations/20251010083620_FixingDatabase.cs b/PyroFetes/Migrations/20251010083620_FixingDatabase.cs
new file mode 100644
index 0000000..1073d64
--- /dev/null
+++ b/PyroFetes/Migrations/20251010083620_FixingDatabase.cs
@@ -0,0 +1,52 @@
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace PyroFetes.Migrations
+{
+ ///
+ public partial class FixingDatabase : Migration
+ {
+ ///
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.DropColumn(
+ name: "References",
+ table: "Products");
+
+ migrationBuilder.DropColumn(
+ name: "SellingPrice",
+ table: "Products");
+
+ migrationBuilder.AddColumn(
+ name: "Reference",
+ table: "Products",
+ type: "nvarchar(20)",
+ maxLength: 20,
+ nullable: false,
+ defaultValue: "");
+ }
+
+ ///
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.DropColumn(
+ name: "Reference",
+ table: "Products");
+
+ migrationBuilder.AddColumn(
+ name: "References",
+ table: "Products",
+ type: "int",
+ nullable: false,
+ defaultValue: 0);
+
+ migrationBuilder.AddColumn(
+ name: "SellingPrice",
+ table: "Products",
+ type: "decimal(18,2)",
+ nullable: false,
+ defaultValue: 0m);
+ }
+ }
+}