From cf6b3dd18abbb3282bbba9244e8002dfeb014a88 Mon Sep 17 00:00:00 2001 From: Yunusov_Niyaz Date: Thu, 25 Apr 2024 22:46:44 +0400 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D0=BE=D0=BB=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D0=B5=D0=BB=D1=8C:=20=D1=81=D0=B4=D0=B5=D0=BB=D0=B0?= =?UTF-8?q?=D0=BB=20=D0=BC=D0=B8=D0=B3=D1=80=D0=B0=D1=86=D0=B8=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20240425184611_InitialCreate.Designer.cs | 549 ++++++++++++++++++ .../20240425184611_InitialCreate.cs | 413 +++++++++++++ .../VeterinaryDatabaseModelSnapshot.cs | 546 +++++++++++++++++ 3 files changed, 1508 insertions(+) create mode 100644 VeterinaryView/VeterinaryDatabaseImplement/Migrations/20240425184611_InitialCreate.Designer.cs create mode 100644 VeterinaryView/VeterinaryDatabaseImplement/Migrations/20240425184611_InitialCreate.cs create mode 100644 VeterinaryView/VeterinaryDatabaseImplement/Migrations/VeterinaryDatabaseModelSnapshot.cs diff --git a/VeterinaryView/VeterinaryDatabaseImplement/Migrations/20240425184611_InitialCreate.Designer.cs b/VeterinaryView/VeterinaryDatabaseImplement/Migrations/20240425184611_InitialCreate.Designer.cs new file mode 100644 index 0000000..6cd3d63 --- /dev/null +++ b/VeterinaryView/VeterinaryDatabaseImplement/Migrations/20240425184611_InitialCreate.Designer.cs @@ -0,0 +1,549 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using VeterinaryDatabaseImplement; + +#nullable disable + +namespace VeterinaryDatabaseImplement.Migrations +{ + [DbContext(typeof(VeterinaryDatabase))] + [Migration("20240425184611_InitialCreate")] + partial class InitialCreate + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.16") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Doctor", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("DoctorFIO") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Login") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Password") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.ToTable("Doctors"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Drug", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Count") + .HasColumnType("int"); + + b.Property("DrugName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Price") + .HasColumnType("float"); + + b.HasKey("Id"); + + b.ToTable("Drugs"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.DrugMedication", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Count") + .HasColumnType("int"); + + b.Property("DrugId") + .HasColumnType("int"); + + b.Property("MedicationId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("DrugId"); + + b.HasIndex("MedicationId"); + + b.ToTable("DrugMedications"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Medication", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("DoctorId") + .HasColumnType("int"); + + b.Property("MedicationName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Price") + .HasColumnType("float"); + + b.HasKey("Id"); + + b.HasIndex("DoctorId"); + + b.ToTable("Medications"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Owner", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Login") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("OwnerFIO") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Password") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.ToTable("Owners"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Pet", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("OwnerId") + .HasColumnType("int"); + + b.Property("PetBreed") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("PetGender") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("PetName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("PetType") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.HasIndex("OwnerId"); + + b.ToTable("Pets"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Purchase", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Count") + .HasColumnType("int"); + + b.Property("DatePurchase") + .HasColumnType("datetime2"); + + b.Property("DrugId") + .HasColumnType("int"); + + b.Property("OwnerId") + .HasColumnType("int"); + + b.Property("Sum") + .HasColumnType("float"); + + b.HasKey("Id"); + + b.HasIndex("DrugId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Purchases"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.PurchasePet", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("PetId") + .HasColumnType("int"); + + b.Property("PurchaseId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("PetId"); + + b.HasIndex("PurchaseId"); + + b.ToTable("PurchasePets"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Service", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("DoctorId") + .HasColumnType("int"); + + b.Property("ServiceName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("VisitId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("DoctorId"); + + b.HasIndex("VisitId"); + + b.ToTable("Services"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.ServiceMedication", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Count") + .HasColumnType("int"); + + b.Property("MedicationId") + .HasColumnType("int"); + + b.Property("ServiceId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("MedicationId"); + + b.HasIndex("ServiceId"); + + b.ToTable("ServiceMedications"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Visit", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("DateVisit") + .HasColumnType("datetime2"); + + b.Property("DoctorId") + .IsRequired() + .HasColumnType("int"); + + b.Property("OwnerId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("DoctorId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Visits"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.VisitPet", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("PetId") + .HasColumnType("int"); + + b.Property("VisitId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("PetId"); + + b.HasIndex("VisitId"); + + b.ToTable("VisitPets"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.DrugMedication", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Drug", "Drug") + .WithMany("Medications") + .HasForeignKey("DrugId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Medication", "Medication") + .WithMany("DrugMedications") + .HasForeignKey("MedicationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Drug"); + + b.Navigation("Medication"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Medication", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Doctor", null) + .WithMany("Medications") + .HasForeignKey("DoctorId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Pet", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Owner", null) + .WithMany("Pets") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Purchase", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Drug", "Drug") + .WithMany("Purchases") + .HasForeignKey("DrugId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Owner", "Owner") + .WithMany("Purchases") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Drug"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.PurchasePet", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Pet", "Pet") + .WithMany() + .HasForeignKey("PetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Purchase", "Purchase") + .WithMany("Pets") + .HasForeignKey("PurchaseId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Pet"); + + b.Navigation("Purchase"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Service", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Doctor", "Doctor") + .WithMany("Services") + .HasForeignKey("DoctorId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Visit", null) + .WithMany("Services") + .HasForeignKey("VisitId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Doctor"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.ServiceMedication", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Medication", "Medication") + .WithMany("ServiceMedications") + .HasForeignKey("MedicationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Service", "Service") + .WithMany("Medications") + .HasForeignKey("ServiceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Medication"); + + b.Navigation("Service"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Visit", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Doctor", "Doctor") + .WithMany("Visits") + .HasForeignKey("DoctorId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Owner", "Owner") + .WithMany("Visits") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Doctor"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.VisitPet", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Pet", "Pet") + .WithMany("VisitPets") + .HasForeignKey("PetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Visit", "Visit") + .WithMany("Pets") + .HasForeignKey("VisitId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Pet"); + + b.Navigation("Visit"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Doctor", b => + { + b.Navigation("Medications"); + + b.Navigation("Services"); + + b.Navigation("Visits"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Drug", b => + { + b.Navigation("Medications"); + + b.Navigation("Purchases"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Medication", b => + { + b.Navigation("DrugMedications"); + + b.Navigation("ServiceMedications"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Owner", b => + { + b.Navigation("Pets"); + + b.Navigation("Purchases"); + + b.Navigation("Visits"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Pet", b => + { + b.Navigation("VisitPets"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Purchase", b => + { + b.Navigation("Pets"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Service", b => + { + b.Navigation("Medications"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Visit", b => + { + b.Navigation("Pets"); + + b.Navigation("Services"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/VeterinaryView/VeterinaryDatabaseImplement/Migrations/20240425184611_InitialCreate.cs b/VeterinaryView/VeterinaryDatabaseImplement/Migrations/20240425184611_InitialCreate.cs new file mode 100644 index 0000000..dc27ee4 --- /dev/null +++ b/VeterinaryView/VeterinaryDatabaseImplement/Migrations/20240425184611_InitialCreate.cs @@ -0,0 +1,413 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace VeterinaryDatabaseImplement.Migrations +{ + /// + public partial class InitialCreate : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "Doctors", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + DoctorFIO = table.Column(type: "nvarchar(max)", nullable: false), + Login = table.Column(type: "nvarchar(max)", nullable: false), + Password = table.Column(type: "nvarchar(max)", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Doctors", x => x.Id); + }); + + migrationBuilder.CreateTable( + name: "Drugs", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + DrugName = table.Column(type: "nvarchar(max)", nullable: false), + Price = table.Column(type: "float", nullable: false), + Count = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Drugs", x => x.Id); + }); + + migrationBuilder.CreateTable( + name: "Owners", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + OwnerFIO = table.Column(type: "nvarchar(max)", nullable: false), + Login = table.Column(type: "nvarchar(max)", nullable: false), + Password = table.Column(type: "nvarchar(max)", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Owners", x => x.Id); + }); + + migrationBuilder.CreateTable( + name: "Medications", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + MedicationName = table.Column(type: "nvarchar(max)", nullable: false), + Price = table.Column(type: "float", nullable: false), + DoctorId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Medications", x => x.Id); + table.ForeignKey( + name: "FK_Medications_Doctors_DoctorId", + column: x => x.DoctorId, + principalTable: "Doctors", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "Pets", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + OwnerId = table.Column(type: "int", nullable: false), + PetName = table.Column(type: "nvarchar(max)", nullable: false), + PetType = table.Column(type: "nvarchar(max)", nullable: false), + PetBreed = table.Column(type: "nvarchar(max)", nullable: false), + PetGender = table.Column(type: "nvarchar(max)", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Pets", x => x.Id); + table.ForeignKey( + name: "FK_Pets_Owners_OwnerId", + column: x => x.OwnerId, + principalTable: "Owners", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "Purchases", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + OwnerId = table.Column(type: "int", nullable: false), + DrugId = table.Column(type: "int", nullable: false), + Count = table.Column(type: "int", nullable: false), + Sum = table.Column(type: "float", nullable: false), + DatePurchase = table.Column(type: "datetime2", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Purchases", x => x.Id); + table.ForeignKey( + name: "FK_Purchases_Drugs_DrugId", + column: x => x.DrugId, + principalTable: "Drugs", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_Purchases_Owners_OwnerId", + column: x => x.OwnerId, + principalTable: "Owners", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "Visits", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + OwnerId = table.Column(type: "int", nullable: false), + DoctorId = table.Column(type: "int", nullable: false), + DateVisit = table.Column(type: "datetime2", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Visits", x => x.Id); + table.ForeignKey( + name: "FK_Visits_Doctors_DoctorId", + column: x => x.DoctorId, + principalTable: "Doctors", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_Visits_Owners_OwnerId", + column: x => x.OwnerId, + principalTable: "Owners", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "DrugMedications", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + DrugId = table.Column(type: "int", nullable: false), + MedicationId = table.Column(type: "int", nullable: false), + Count = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_DrugMedications", x => x.Id); + table.ForeignKey( + name: "FK_DrugMedications_Drugs_DrugId", + column: x => x.DrugId, + principalTable: "Drugs", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_DrugMedications_Medications_MedicationId", + column: x => x.MedicationId, + principalTable: "Medications", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "PurchasePets", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + PurchaseId = table.Column(type: "int", nullable: false), + PetId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_PurchasePets", x => x.Id); + table.ForeignKey( + name: "FK_PurchasePets_Pets_PetId", + column: x => x.PetId, + principalTable: "Pets", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_PurchasePets_Purchases_PurchaseId", + column: x => x.PurchaseId, + principalTable: "Purchases", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "Services", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + ServiceName = table.Column(type: "nvarchar(max)", nullable: false), + DoctorId = table.Column(type: "int", nullable: false), + VisitId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Services", x => x.Id); + table.ForeignKey( + name: "FK_Services_Doctors_DoctorId", + column: x => x.DoctorId, + principalTable: "Doctors", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_Services_Visits_VisitId", + column: x => x.VisitId, + principalTable: "Visits", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "VisitPets", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + VisitId = table.Column(type: "int", nullable: false), + PetId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_VisitPets", x => x.Id); + table.ForeignKey( + name: "FK_VisitPets_Pets_PetId", + column: x => x.PetId, + principalTable: "Pets", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_VisitPets_Visits_VisitId", + column: x => x.VisitId, + principalTable: "Visits", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "ServiceMedications", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + ServiceId = table.Column(type: "int", nullable: false), + MedicationId = table.Column(type: "int", nullable: false), + Count = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_ServiceMedications", x => x.Id); + table.ForeignKey( + name: "FK_ServiceMedications_Medications_MedicationId", + column: x => x.MedicationId, + principalTable: "Medications", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_ServiceMedications_Services_ServiceId", + column: x => x.ServiceId, + principalTable: "Services", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "IX_DrugMedications_DrugId", + table: "DrugMedications", + column: "DrugId"); + + migrationBuilder.CreateIndex( + name: "IX_DrugMedications_MedicationId", + table: "DrugMedications", + column: "MedicationId"); + + migrationBuilder.CreateIndex( + name: "IX_Medications_DoctorId", + table: "Medications", + column: "DoctorId"); + + migrationBuilder.CreateIndex( + name: "IX_Pets_OwnerId", + table: "Pets", + column: "OwnerId"); + + migrationBuilder.CreateIndex( + name: "IX_PurchasePets_PetId", + table: "PurchasePets", + column: "PetId"); + + migrationBuilder.CreateIndex( + name: "IX_PurchasePets_PurchaseId", + table: "PurchasePets", + column: "PurchaseId"); + + migrationBuilder.CreateIndex( + name: "IX_Purchases_DrugId", + table: "Purchases", + column: "DrugId"); + + migrationBuilder.CreateIndex( + name: "IX_Purchases_OwnerId", + table: "Purchases", + column: "OwnerId"); + + migrationBuilder.CreateIndex( + name: "IX_ServiceMedications_MedicationId", + table: "ServiceMedications", + column: "MedicationId"); + + migrationBuilder.CreateIndex( + name: "IX_ServiceMedications_ServiceId", + table: "ServiceMedications", + column: "ServiceId"); + + migrationBuilder.CreateIndex( + name: "IX_Services_DoctorId", + table: "Services", + column: "DoctorId"); + + migrationBuilder.CreateIndex( + name: "IX_Services_VisitId", + table: "Services", + column: "VisitId"); + + migrationBuilder.CreateIndex( + name: "IX_VisitPets_PetId", + table: "VisitPets", + column: "PetId"); + + migrationBuilder.CreateIndex( + name: "IX_VisitPets_VisitId", + table: "VisitPets", + column: "VisitId"); + + migrationBuilder.CreateIndex( + name: "IX_Visits_DoctorId", + table: "Visits", + column: "DoctorId"); + + migrationBuilder.CreateIndex( + name: "IX_Visits_OwnerId", + table: "Visits", + column: "OwnerId"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "DrugMedications"); + + migrationBuilder.DropTable( + name: "PurchasePets"); + + migrationBuilder.DropTable( + name: "ServiceMedications"); + + migrationBuilder.DropTable( + name: "VisitPets"); + + migrationBuilder.DropTable( + name: "Purchases"); + + migrationBuilder.DropTable( + name: "Medications"); + + migrationBuilder.DropTable( + name: "Services"); + + migrationBuilder.DropTable( + name: "Pets"); + + migrationBuilder.DropTable( + name: "Drugs"); + + migrationBuilder.DropTable( + name: "Visits"); + + migrationBuilder.DropTable( + name: "Doctors"); + + migrationBuilder.DropTable( + name: "Owners"); + } + } +} diff --git a/VeterinaryView/VeterinaryDatabaseImplement/Migrations/VeterinaryDatabaseModelSnapshot.cs b/VeterinaryView/VeterinaryDatabaseImplement/Migrations/VeterinaryDatabaseModelSnapshot.cs new file mode 100644 index 0000000..97f9874 --- /dev/null +++ b/VeterinaryView/VeterinaryDatabaseImplement/Migrations/VeterinaryDatabaseModelSnapshot.cs @@ -0,0 +1,546 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using VeterinaryDatabaseImplement; + +#nullable disable + +namespace VeterinaryDatabaseImplement.Migrations +{ + [DbContext(typeof(VeterinaryDatabase))] + partial class VeterinaryDatabaseModelSnapshot : ModelSnapshot + { + protected override void BuildModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.16") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Doctor", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("DoctorFIO") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Login") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Password") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.ToTable("Doctors"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Drug", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Count") + .HasColumnType("int"); + + b.Property("DrugName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Price") + .HasColumnType("float"); + + b.HasKey("Id"); + + b.ToTable("Drugs"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.DrugMedication", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Count") + .HasColumnType("int"); + + b.Property("DrugId") + .HasColumnType("int"); + + b.Property("MedicationId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("DrugId"); + + b.HasIndex("MedicationId"); + + b.ToTable("DrugMedications"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Medication", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("DoctorId") + .HasColumnType("int"); + + b.Property("MedicationName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Price") + .HasColumnType("float"); + + b.HasKey("Id"); + + b.HasIndex("DoctorId"); + + b.ToTable("Medications"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Owner", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Login") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("OwnerFIO") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Password") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.ToTable("Owners"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Pet", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("OwnerId") + .HasColumnType("int"); + + b.Property("PetBreed") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("PetGender") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("PetName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("PetType") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.HasIndex("OwnerId"); + + b.ToTable("Pets"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Purchase", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Count") + .HasColumnType("int"); + + b.Property("DatePurchase") + .HasColumnType("datetime2"); + + b.Property("DrugId") + .HasColumnType("int"); + + b.Property("OwnerId") + .HasColumnType("int"); + + b.Property("Sum") + .HasColumnType("float"); + + b.HasKey("Id"); + + b.HasIndex("DrugId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Purchases"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.PurchasePet", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("PetId") + .HasColumnType("int"); + + b.Property("PurchaseId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("PetId"); + + b.HasIndex("PurchaseId"); + + b.ToTable("PurchasePets"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Service", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("DoctorId") + .HasColumnType("int"); + + b.Property("ServiceName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("VisitId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("DoctorId"); + + b.HasIndex("VisitId"); + + b.ToTable("Services"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.ServiceMedication", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Count") + .HasColumnType("int"); + + b.Property("MedicationId") + .HasColumnType("int"); + + b.Property("ServiceId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("MedicationId"); + + b.HasIndex("ServiceId"); + + b.ToTable("ServiceMedications"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Visit", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("DateVisit") + .HasColumnType("datetime2"); + + b.Property("DoctorId") + .IsRequired() + .HasColumnType("int"); + + b.Property("OwnerId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("DoctorId"); + + b.HasIndex("OwnerId"); + + b.ToTable("Visits"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.VisitPet", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("PetId") + .HasColumnType("int"); + + b.Property("VisitId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("PetId"); + + b.HasIndex("VisitId"); + + b.ToTable("VisitPets"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.DrugMedication", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Drug", "Drug") + .WithMany("Medications") + .HasForeignKey("DrugId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Medication", "Medication") + .WithMany("DrugMedications") + .HasForeignKey("MedicationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Drug"); + + b.Navigation("Medication"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Medication", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Doctor", null) + .WithMany("Medications") + .HasForeignKey("DoctorId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Pet", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Owner", null) + .WithMany("Pets") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Purchase", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Drug", "Drug") + .WithMany("Purchases") + .HasForeignKey("DrugId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Owner", "Owner") + .WithMany("Purchases") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Drug"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.PurchasePet", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Pet", "Pet") + .WithMany() + .HasForeignKey("PetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Purchase", "Purchase") + .WithMany("Pets") + .HasForeignKey("PurchaseId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Pet"); + + b.Navigation("Purchase"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Service", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Doctor", "Doctor") + .WithMany("Services") + .HasForeignKey("DoctorId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Visit", null) + .WithMany("Services") + .HasForeignKey("VisitId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Doctor"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.ServiceMedication", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Medication", "Medication") + .WithMany("ServiceMedications") + .HasForeignKey("MedicationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Service", "Service") + .WithMany("Medications") + .HasForeignKey("ServiceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Medication"); + + b.Navigation("Service"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Visit", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Doctor", "Doctor") + .WithMany("Visits") + .HasForeignKey("DoctorId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Owner", "Owner") + .WithMany("Visits") + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Doctor"); + + b.Navigation("Owner"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.VisitPet", b => + { + b.HasOne("VeterinaryDatabaseImplement.Models.Pet", "Pet") + .WithMany("VisitPets") + .HasForeignKey("PetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("VeterinaryDatabaseImplement.Models.Visit", "Visit") + .WithMany("Pets") + .HasForeignKey("VisitId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Pet"); + + b.Navigation("Visit"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Doctor", b => + { + b.Navigation("Medications"); + + b.Navigation("Services"); + + b.Navigation("Visits"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Drug", b => + { + b.Navigation("Medications"); + + b.Navigation("Purchases"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Medication", b => + { + b.Navigation("DrugMedications"); + + b.Navigation("ServiceMedications"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Owner", b => + { + b.Navigation("Pets"); + + b.Navigation("Purchases"); + + b.Navigation("Visits"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Pet", b => + { + b.Navigation("VisitPets"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Purchase", b => + { + b.Navigation("Pets"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Service", b => + { + b.Navigation("Medications"); + }); + + modelBuilder.Entity("VeterinaryDatabaseImplement.Models.Visit", b => + { + b.Navigation("Pets"); + + b.Navigation("Services"); + }); +#pragma warning restore 612, 618 + } + } +}