//
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using SushiBarDatabaseImplement;
#nullable disable
namespace SushiBarDatabaseImplement.Migrations
{
[DbContext(typeof(SushiBarDatabase))]
[Migration("20240326181255_InitialCreate")]
partial class InitialCreate
{
///
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "8.0.3")
.HasAnnotation("Relational:MaxIdentifierLength", 128);
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
modelBuilder.Entity("SushiBarDatabaseImplement.Models.Buyer", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int");
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
b.Property("BuyerBirthDate")
.HasColumnType("datetime2");
b.Property("BuyerName")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.ToTable("Buyers");
});
modelBuilder.Entity("SushiBarDatabaseImplement.Models.Cook", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int");
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
b.Property("CookName")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property("CookSurname")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property("Experience")
.HasColumnType("int");
b.Property("Passport")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property("PhoneNumber")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.ToTable("Cooks");
});
modelBuilder.Entity("SushiBarDatabaseImplement.Models.Menu", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int");
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
b.Property("Description")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property("FoodName")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property("Price")
.HasColumnType("float");
b.HasKey("Id");
b.ToTable("Menus");
});
modelBuilder.Entity("SushiBarDatabaseImplement.Models.Place", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int");
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
b.Property("CountPlaces")
.HasColumnType("int");
b.Property("PlaceNumber")
.HasColumnType("int");
b.HasKey("Id");
b.ToTable("Places");
});
modelBuilder.Entity("SushiBarDatabaseImplement.Models.Task", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int");
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
b.Property("BuyerId")
.HasColumnType("int");
b.Property("CookId")
.HasColumnType("int");
b.Property("FullPrice")
.HasColumnType("float");
b.Property("PlaceId")
.HasColumnType("int");
b.Property("Status")
.HasColumnType("int");
b.Property("TaskDate")
.HasColumnType("datetime2");
b.HasKey("Id");
b.ToTable("Tasks");
});
modelBuilder.Entity("SushiBarDatabaseImplement.Models.TaskMenu", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int");
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
b.Property("Count")
.HasColumnType("int");
b.Property("MenuId")
.HasColumnType("int");
b.Property("TaskId")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("MenuId");
b.HasIndex("TaskId");
b.ToTable("TaskMenus");
});
modelBuilder.Entity("SushiBarDatabaseImplement.Models.TaskMenu", b =>
{
b.HasOne("SushiBarDatabaseImplement.Models.Menu", "Menu")
.WithMany("TaskMenus")
.HasForeignKey("MenuId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("SushiBarDatabaseImplement.Models.Task", "Task")
.WithMany("Menus")
.HasForeignKey("TaskId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Menu");
b.Navigation("Task");
});
modelBuilder.Entity("SushiBarDatabaseImplement.Models.Menu", b =>
{
b.Navigation("TaskMenus");
});
modelBuilder.Entity("SushiBarDatabaseImplement.Models.Task", b =>
{
b.Navigation("Menus");
});
#pragma warning restore 612, 618
}
}
}