From 9365dbc456ac6260057ddb1be2acffba203e33a0 Mon Sep 17 00:00:00 2001 From: Kristina Date: Mon, 29 Apr 2024 14:59:29 +0400 Subject: [PATCH] =?UTF-8?q?=D0=B4=D0=BE=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB?= =?UTF-8?q?=D0=B0=20=D0=B1=D0=B4,=20=D0=BE=D1=81=D1=82=D0=B0=D0=BB=D1=81?= =?UTF-8?q?=D1=8F=20=D0=B2=D0=B5=D0=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20240429105856_SchoolMigration.Designer.cs | 353 ++++++++++++++++++ .../20240429105856_SchoolMigration.cs | 254 +++++++++++++ .../SchoolDbContextModelSnapshot.cs | 350 +++++++++++++++++ School/SchoolDatabase/Models/Study.cs | 2 +- 4 files changed, 958 insertions(+), 1 deletion(-) create mode 100644 School/SchoolDatabase/Migrations/20240429105856_SchoolMigration.Designer.cs create mode 100644 School/SchoolDatabase/Migrations/20240429105856_SchoolMigration.cs create mode 100644 School/SchoolDatabase/Migrations/SchoolDbContextModelSnapshot.cs diff --git a/School/SchoolDatabase/Migrations/20240429105856_SchoolMigration.Designer.cs b/School/SchoolDatabase/Migrations/20240429105856_SchoolMigration.Designer.cs new file mode 100644 index 0000000..9927d80 --- /dev/null +++ b/School/SchoolDatabase/Migrations/20240429105856_SchoolMigration.Designer.cs @@ -0,0 +1,353 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using SchoolDatabase; + +#nullable disable + +namespace SchoolDatabase.Migrations +{ + [DbContext(typeof(SchoolDbContext))] + [Migration("20240429105856_SchoolMigration")] + partial class SchoolMigration + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "8.0.4") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + + modelBuilder.Entity("SchoolDatabase.Models.Courses", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Duration") + .HasColumnType("decimal (3,1)"); + + b.Property("Name") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Price") + .HasColumnType("decimal (10,2)"); + + b.Property("WorkerId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("WorkerId"); + + b.ToTable("Coursess"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.CoursesForStudy", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("CoursesId") + .HasColumnType("int"); + + b.Property("StudyId") + .HasColumnType("int"); + + b.Property("TotalTime") + .HasColumnType("decimal (10,2)"); + + b.HasKey("Id"); + + b.HasIndex("CoursesId"); + + b.HasIndex("StudyId"); + + b.ToTable("CoursessForStudys"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Custumer", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("FIO") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Login") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Password") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.ToTable("Custumers"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Item", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Price") + .HasColumnType("decimal (10,2)"); + + b.Property("WorkerId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("WorkerId"); + + b.ToTable("Items"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.ItemForStudy", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("ItemId") + .HasColumnType("int"); + + b.Property("StudyId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("ItemId"); + + b.HasIndex("StudyId"); + + b.ToTable("ItemForStudys"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Payment", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("CoursesForStudyId") + .HasColumnType("int"); + + b.Property("DatePayment") + .HasColumnType("date"); + + b.Property("Sum") + .HasColumnType("decimal (10,2)"); + + b.HasKey("Id"); + + b.HasIndex("CoursesForStudyId"); + + b.ToTable("Payments"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Study", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("CustomerId") + .HasColumnType("int"); + + b.Property("CustumerId") + .HasColumnType("int"); + + b.Property("DateCreated") + .HasColumnType("date"); + + b.Property("DateСompletion") + .HasColumnType("date"); + + b.HasKey("Id"); + + b.HasIndex("CustomerId"); + + b.ToTable("Studys"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Worker", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("FIO") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Login") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Password") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Post") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.ToTable("Workers"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Courses", b => + { + b.HasOne("SchoolDatabase.Models.Worker", "Worker") + .WithMany("Courses") + .HasForeignKey("WorkerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Worker"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.CoursesForStudy", b => + { + b.HasOne("SchoolDatabase.Models.Courses", null) + .WithMany("CoursessForStudy") + .HasForeignKey("CoursesId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("SchoolDatabase.Models.Study", null) + .WithMany("CoursessForStudy") + .HasForeignKey("StudyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Item", b => + { + b.HasOne("SchoolDatabase.Models.Worker", "Worker") + .WithMany("Items") + .HasForeignKey("WorkerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Worker"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.ItemForStudy", b => + { + b.HasOne("SchoolDatabase.Models.Item", "Item") + .WithMany("ItemForStudy") + .HasForeignKey("ItemId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("SchoolDatabase.Models.Study", "Study") + .WithMany("ItemsForStudy") + .HasForeignKey("StudyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Item"); + + b.Navigation("Study"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Payment", b => + { + b.HasOne("SchoolDatabase.Models.CoursesForStudy", "CoursesForStudy") + .WithMany("Payments") + .HasForeignKey("CoursesForStudyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("CoursesForStudy"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Study", b => + { + b.HasOne("SchoolDatabase.Models.Custumer", "Custumer") + .WithMany("Study") + .HasForeignKey("CustomerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Custumer"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Courses", b => + { + b.Navigation("CoursessForStudy"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.CoursesForStudy", b => + { + b.Navigation("Payments"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Custumer", b => + { + b.Navigation("Study"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Item", b => + { + b.Navigation("ItemForStudy"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Study", b => + { + b.Navigation("CoursessForStudy"); + + b.Navigation("ItemsForStudy"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Worker", b => + { + b.Navigation("Courses"); + + b.Navigation("Items"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/School/SchoolDatabase/Migrations/20240429105856_SchoolMigration.cs b/School/SchoolDatabase/Migrations/20240429105856_SchoolMigration.cs new file mode 100644 index 0000000..13b1ca8 --- /dev/null +++ b/School/SchoolDatabase/Migrations/20240429105856_SchoolMigration.cs @@ -0,0 +1,254 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace SchoolDatabase.Migrations +{ + /// + public partial class SchoolMigration : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "Custumers", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + Login = table.Column(type: "nvarchar(max)", nullable: false), + Password = table.Column(type: "nvarchar(max)", nullable: false), + FIO = table.Column(type: "nvarchar(max)", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Custumers", x => x.Id); + }); + + migrationBuilder.CreateTable( + name: "Workers", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + Login = table.Column(type: "nvarchar(max)", nullable: false), + Email = table.Column(type: "nvarchar(max)", nullable: false), + FIO = table.Column(type: "nvarchar(max)", nullable: false), + Post = table.Column(type: "nvarchar(max)", nullable: false), + Password = table.Column(type: "nvarchar(max)", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Workers", x => x.Id); + }); + + migrationBuilder.CreateTable( + name: "Studys", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + DateCreated = table.Column(type: "date", nullable: false), + DateСompletion = table.Column(type: "date", nullable: false), + CustumerId = table.Column(type: "int", nullable: false), + CustomerId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Studys", x => x.Id); + table.ForeignKey( + name: "FK_Studys_Custumers_CustomerId", + column: x => x.CustomerId, + principalTable: "Custumers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "Coursess", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + Name = table.Column(type: "nvarchar(max)", nullable: false), + Price = table.Column(type: "decimal(10,2)", nullable: false), + Duration = table.Column(type: "decimal(3,1)", nullable: false), + WorkerId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Coursess", x => x.Id); + table.ForeignKey( + name: "FK_Coursess_Workers_WorkerId", + column: x => x.WorkerId, + principalTable: "Workers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "Items", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + Name = table.Column(type: "nvarchar(max)", nullable: false), + Price = table.Column(type: "decimal(10,2)", nullable: false), + WorkerId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Items", x => x.Id); + table.ForeignKey( + name: "FK_Items_Workers_WorkerId", + column: x => x.WorkerId, + principalTable: "Workers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "CoursessForStudys", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + TotalTime = table.Column(type: "decimal(10,2)", nullable: false), + StudyId = table.Column(type: "int", nullable: false), + CoursesId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_CoursessForStudys", x => x.Id); + table.ForeignKey( + name: "FK_CoursessForStudys_Coursess_CoursesId", + column: x => x.CoursesId, + principalTable: "Coursess", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_CoursessForStudys_Studys_StudyId", + column: x => x.StudyId, + principalTable: "Studys", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "ItemForStudys", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + ItemId = table.Column(type: "int", nullable: false), + StudyId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_ItemForStudys", x => x.Id); + table.ForeignKey( + name: "FK_ItemForStudys_Items_ItemId", + column: x => x.ItemId, + principalTable: "Items", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_ItemForStudys_Studys_StudyId", + column: x => x.StudyId, + principalTable: "Studys", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "Payments", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + DatePayment = table.Column(type: "date", nullable: false), + Sum = table.Column(type: "decimal(10,2)", nullable: false), + CoursesForStudyId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Payments", x => x.Id); + table.ForeignKey( + name: "FK_Payments_CoursessForStudys_CoursesForStudyId", + column: x => x.CoursesForStudyId, + principalTable: "CoursessForStudys", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "IX_Coursess_WorkerId", + table: "Coursess", + column: "WorkerId"); + + migrationBuilder.CreateIndex( + name: "IX_CoursessForStudys_CoursesId", + table: "CoursessForStudys", + column: "CoursesId"); + + migrationBuilder.CreateIndex( + name: "IX_CoursessForStudys_StudyId", + table: "CoursessForStudys", + column: "StudyId"); + + migrationBuilder.CreateIndex( + name: "IX_ItemForStudys_ItemId", + table: "ItemForStudys", + column: "ItemId"); + + migrationBuilder.CreateIndex( + name: "IX_ItemForStudys_StudyId", + table: "ItemForStudys", + column: "StudyId"); + + migrationBuilder.CreateIndex( + name: "IX_Items_WorkerId", + table: "Items", + column: "WorkerId"); + + migrationBuilder.CreateIndex( + name: "IX_Payments_CoursesForStudyId", + table: "Payments", + column: "CoursesForStudyId"); + + migrationBuilder.CreateIndex( + name: "IX_Studys_CustomerId", + table: "Studys", + column: "CustomerId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "ItemForStudys"); + + migrationBuilder.DropTable( + name: "Payments"); + + migrationBuilder.DropTable( + name: "Items"); + + migrationBuilder.DropTable( + name: "CoursessForStudys"); + + migrationBuilder.DropTable( + name: "Coursess"); + + migrationBuilder.DropTable( + name: "Studys"); + + migrationBuilder.DropTable( + name: "Workers"); + + migrationBuilder.DropTable( + name: "Custumers"); + } + } +} diff --git a/School/SchoolDatabase/Migrations/SchoolDbContextModelSnapshot.cs b/School/SchoolDatabase/Migrations/SchoolDbContextModelSnapshot.cs new file mode 100644 index 0000000..110d92f --- /dev/null +++ b/School/SchoolDatabase/Migrations/SchoolDbContextModelSnapshot.cs @@ -0,0 +1,350 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using SchoolDatabase; + +#nullable disable + +namespace SchoolDatabase.Migrations +{ + [DbContext(typeof(SchoolDbContext))] + partial class SchoolDbContextModelSnapshot : ModelSnapshot + { + protected override void BuildModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "8.0.4") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + + modelBuilder.Entity("SchoolDatabase.Models.Courses", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Duration") + .HasColumnType("decimal (3,1)"); + + b.Property("Name") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Price") + .HasColumnType("decimal (10,2)"); + + b.Property("WorkerId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("WorkerId"); + + b.ToTable("Coursess"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.CoursesForStudy", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("CoursesId") + .HasColumnType("int"); + + b.Property("StudyId") + .HasColumnType("int"); + + b.Property("TotalTime") + .HasColumnType("decimal (10,2)"); + + b.HasKey("Id"); + + b.HasIndex("CoursesId"); + + b.HasIndex("StudyId"); + + b.ToTable("CoursessForStudys"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Custumer", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("FIO") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Login") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Password") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.ToTable("Custumers"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Item", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Price") + .HasColumnType("decimal (10,2)"); + + b.Property("WorkerId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("WorkerId"); + + b.ToTable("Items"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.ItemForStudy", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("ItemId") + .HasColumnType("int"); + + b.Property("StudyId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("ItemId"); + + b.HasIndex("StudyId"); + + b.ToTable("ItemForStudys"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Payment", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("CoursesForStudyId") + .HasColumnType("int"); + + b.Property("DatePayment") + .HasColumnType("date"); + + b.Property("Sum") + .HasColumnType("decimal (10,2)"); + + b.HasKey("Id"); + + b.HasIndex("CoursesForStudyId"); + + b.ToTable("Payments"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Study", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("CustomerId") + .HasColumnType("int"); + + b.Property("CustumerId") + .HasColumnType("int"); + + b.Property("DateCreated") + .HasColumnType("date"); + + b.Property("DateСompletion") + .HasColumnType("date"); + + b.HasKey("Id"); + + b.HasIndex("CustomerId"); + + b.ToTable("Studys"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Worker", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("FIO") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Login") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Password") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Post") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.ToTable("Workers"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Courses", b => + { + b.HasOne("SchoolDatabase.Models.Worker", "Worker") + .WithMany("Courses") + .HasForeignKey("WorkerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Worker"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.CoursesForStudy", b => + { + b.HasOne("SchoolDatabase.Models.Courses", null) + .WithMany("CoursessForStudy") + .HasForeignKey("CoursesId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("SchoolDatabase.Models.Study", null) + .WithMany("CoursessForStudy") + .HasForeignKey("StudyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Item", b => + { + b.HasOne("SchoolDatabase.Models.Worker", "Worker") + .WithMany("Items") + .HasForeignKey("WorkerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Worker"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.ItemForStudy", b => + { + b.HasOne("SchoolDatabase.Models.Item", "Item") + .WithMany("ItemForStudy") + .HasForeignKey("ItemId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("SchoolDatabase.Models.Study", "Study") + .WithMany("ItemsForStudy") + .HasForeignKey("StudyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Item"); + + b.Navigation("Study"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Payment", b => + { + b.HasOne("SchoolDatabase.Models.CoursesForStudy", "CoursesForStudy") + .WithMany("Payments") + .HasForeignKey("CoursesForStudyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("CoursesForStudy"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Study", b => + { + b.HasOne("SchoolDatabase.Models.Custumer", "Custumer") + .WithMany("Study") + .HasForeignKey("CustomerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Custumer"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Courses", b => + { + b.Navigation("CoursessForStudy"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.CoursesForStudy", b => + { + b.Navigation("Payments"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Custumer", b => + { + b.Navigation("Study"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Item", b => + { + b.Navigation("ItemForStudy"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Study", b => + { + b.Navigation("CoursessForStudy"); + + b.Navigation("ItemsForStudy"); + }); + + modelBuilder.Entity("SchoolDatabase.Models.Worker", b => + { + b.Navigation("Courses"); + + b.Navigation("Items"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/School/SchoolDatabase/Models/Study.cs b/School/SchoolDatabase/Models/Study.cs index 9b18962..7380c0f 100644 --- a/School/SchoolDatabase/Models/Study.cs +++ b/School/SchoolDatabase/Models/Study.cs @@ -23,7 +23,7 @@ namespace SchoolDatabase.Models // Курсы в обучении [ForeignKey("StudyId")] - public virtual List ICoursessForStudy { get; set; } = new(); + public virtual List CoursessForStudy { get; set; } = new(); // Затраты на обучение [ForeignKey("StudyId")]