diff --git a/Hotel/.idea/.idea.Hotel/.idea/.gitignore b/Hotel/.idea/.idea.Hotel/.idea/.gitignore
new file mode 100644
index 0000000..5b03a3e
--- /dev/null
+++ b/Hotel/.idea/.idea.Hotel/.idea/.gitignore
@@ -0,0 +1,13 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Rider ignored files
+/modules.xml
+/contentModel.xml
+/projectSettingsUpdater.xml
+/.idea.Hotel.iml
+# Editor-based HTTP Client requests
+/httpRequests/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/Hotel/.idea/.idea.Hotel/.idea/encodings.xml b/Hotel/.idea/.idea.Hotel/.idea/encodings.xml
new file mode 100644
index 0000000..df87cf9
--- /dev/null
+++ b/Hotel/.idea/.idea.Hotel/.idea/encodings.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/Hotel/.idea/.idea.Hotel/.idea/indexLayout.xml b/Hotel/.idea/.idea.Hotel/.idea/indexLayout.xml
new file mode 100644
index 0000000..ad3d2c6
--- /dev/null
+++ b/Hotel/.idea/.idea.Hotel/.idea/indexLayout.xml
@@ -0,0 +1,10 @@
+
+
+
+
+ ../../PIbd-22_Bazunov_AI_Hotel
+
+
+
+
+
\ No newline at end of file
diff --git a/Hotel/.idea/.idea.Hotel/.idea/vcs.xml b/Hotel/.idea/.idea.Hotel/.idea/vcs.xml
new file mode 100644
index 0000000..62bd7a0
--- /dev/null
+++ b/Hotel/.idea/.idea.Hotel/.idea/vcs.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Hotel/HotelDatabaseImplement/HotelDatabaseImplement.csproj b/Hotel/HotelDatabaseImplement/HotelDatabaseImplement.csproj
index 8ad906c..d5187c4 100644
--- a/Hotel/HotelDatabaseImplement/HotelDatabaseImplement.csproj
+++ b/Hotel/HotelDatabaseImplement/HotelDatabaseImplement.csproj
@@ -9,6 +9,10 @@
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
diff --git a/Hotel/HotelDatabaseImplement/Migrations/20230407095141_init.Designer.cs b/Hotel/HotelDatabaseImplement/Migrations/20230407095141_init.Designer.cs
new file mode 100644
index 0000000..8bb5a0d
--- /dev/null
+++ b/Hotel/HotelDatabaseImplement/Migrations/20230407095141_init.Designer.cs
@@ -0,0 +1,280 @@
+//
+using System;
+using HotelDatabaseImplement;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+
+#nullable disable
+
+namespace HotelDatabaseImplement.Migrations
+{
+ [DbContext(typeof(HotelDataBase))]
+ [Migration("20230407095141_init")]
+ partial class init
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "8.0.0-preview.2.23128.3")
+ .HasAnnotation("Relational:MaxIdentifierLength", 128);
+
+ SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Cleaning", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Date")
+ .HasColumnType("datetime2");
+
+ b.Property("RoomId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.ToTable("Cleanings");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.CleaningInstrument", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("CleaningId")
+ .HasColumnType("int");
+
+ b.Property("CleaningInstrumentsId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CleaningId");
+
+ b.HasIndex("CleaningInstrumentsId");
+
+ b.ToTable("CleaningInstrument");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.CleaningInstruments", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Type")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("CleaningInstruments");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Guest", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("LastName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("SecondName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Guests");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Maitre", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("LastName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Login")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Password")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("SecondName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Maitres");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Reservation", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("EndDate")
+ .HasColumnType("datetime2");
+
+ b.Property("GuestId")
+ .HasColumnType("int");
+
+ b.Property("MaitreId")
+ .HasColumnType("int");
+
+ b.Property("StartDate")
+ .HasColumnType("datetime2");
+
+ b.HasKey("Id");
+
+ b.ToTable("Reservations");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.ReservationRoom", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ReservationId")
+ .HasColumnType("int");
+
+ b.Property("RoomId")
+ .HasColumnType("int");
+
+ b.Property("RoomId1")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("RoomId");
+
+ b.HasIndex("RoomId1");
+
+ b.ToTable("ReservationRooms");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Room", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Cost")
+ .HasColumnType("float");
+
+ b.Property("ReservationId")
+ .HasColumnType("int");
+
+ b.Property("Type")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ReservationId");
+
+ b.ToTable("Rooms");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.CleaningInstrument", b =>
+ {
+ b.HasOne("HotelDatabaseImplement.Models.Cleaning", "Cleaning")
+ .WithMany("CleaningInstrument")
+ .HasForeignKey("CleaningId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("HotelDatabaseImplement.Models.CleaningInstruments", "CleaningInstruments")
+ .WithMany()
+ .HasForeignKey("CleaningInstrumentsId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Cleaning");
+
+ b.Navigation("CleaningInstruments");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.ReservationRoom", b =>
+ {
+ b.HasOne("HotelDatabaseImplement.Models.Reservation", "Reservation")
+ .WithMany("Rooms")
+ .HasForeignKey("RoomId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("HotelDatabaseImplement.Models.Room", "Room")
+ .WithMany()
+ .HasForeignKey("RoomId1");
+
+ b.Navigation("Reservation");
+
+ b.Navigation("Room");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Room", b =>
+ {
+ b.HasOne("HotelDatabaseImplement.Models.Reservation", "Reservation")
+ .WithMany()
+ .HasForeignKey("ReservationId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Reservation");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Cleaning", b =>
+ {
+ b.Navigation("CleaningInstrument");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Reservation", b =>
+ {
+ b.Navigation("Rooms");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/Hotel/HotelDatabaseImplement/Migrations/20230407095141_init.cs b/Hotel/HotelDatabaseImplement/Migrations/20230407095141_init.cs
new file mode 100644
index 0000000..7ed71e9
--- /dev/null
+++ b/Hotel/HotelDatabaseImplement/Migrations/20230407095141_init.cs
@@ -0,0 +1,216 @@
+using System;
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace HotelDatabaseImplement.Migrations
+{
+ ///
+ public partial class init : Migration
+ {
+ ///
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.CreateTable(
+ name: "CleaningInstruments",
+ columns: table => new
+ {
+ Id = table.Column(type: "int", nullable: false)
+ .Annotation("SqlServer:Identity", "1, 1"),
+ Type = table.Column(type: "nvarchar(max)", nullable: false)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_CleaningInstruments", x => x.Id);
+ });
+
+ migrationBuilder.CreateTable(
+ name: "Cleanings",
+ columns: table => new
+ {
+ Id = table.Column(type: "int", nullable: false)
+ .Annotation("SqlServer:Identity", "1, 1"),
+ Date = table.Column(type: "datetime2", nullable: false),
+ RoomId = table.Column(type: "int", nullable: false)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_Cleanings", x => x.Id);
+ });
+
+ migrationBuilder.CreateTable(
+ name: "Guests",
+ columns: table => new
+ {
+ Id = table.Column(type: "int", nullable: false)
+ .Annotation("SqlServer:Identity", "1, 1"),
+ Name = table.Column(type: "nvarchar(max)", nullable: false),
+ SecondName = table.Column(type: "nvarchar(max)", nullable: false),
+ LastName = table.Column(type: "nvarchar(max)", nullable: false)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_Guests", x => x.Id);
+ });
+
+ migrationBuilder.CreateTable(
+ name: "Maitres",
+ columns: table => new
+ {
+ Id = table.Column(type: "int", nullable: false)
+ .Annotation("SqlServer:Identity", "1, 1"),
+ Name = table.Column(type: "nvarchar(max)", nullable: false),
+ SecondName = table.Column(type: "nvarchar(max)", nullable: false),
+ LastName = 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_Maitres", x => x.Id);
+ });
+
+ migrationBuilder.CreateTable(
+ name: "Reservations",
+ columns: table => new
+ {
+ Id = table.Column(type: "int", nullable: false)
+ .Annotation("SqlServer:Identity", "1, 1"),
+ StartDate = table.Column(type: "datetime2", nullable: false),
+ EndDate = table.Column(type: "datetime2", nullable: false),
+ GuestId = table.Column(type: "int", nullable: false),
+ MaitreId = table.Column(type: "int", nullable: false)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_Reservations", x => x.Id);
+ });
+
+ migrationBuilder.CreateTable(
+ name: "CleaningInstrument",
+ columns: table => new
+ {
+ Id = table.Column(type: "int", nullable: false)
+ .Annotation("SqlServer:Identity", "1, 1"),
+ CleaningId = table.Column(type: "int", nullable: false),
+ CleaningInstrumentsId = table.Column(type: "int", nullable: false)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_CleaningInstrument", x => x.Id);
+ table.ForeignKey(
+ name: "FK_CleaningInstrument_CleaningInstruments_CleaningInstrumentsId",
+ column: x => x.CleaningInstrumentsId,
+ principalTable: "CleaningInstruments",
+ principalColumn: "Id",
+ onDelete: ReferentialAction.Cascade);
+ table.ForeignKey(
+ name: "FK_CleaningInstrument_Cleanings_CleaningId",
+ column: x => x.CleaningId,
+ principalTable: "Cleanings",
+ principalColumn: "Id",
+ onDelete: ReferentialAction.Cascade);
+ });
+
+ migrationBuilder.CreateTable(
+ name: "Rooms",
+ columns: table => new
+ {
+ Id = table.Column(type: "int", nullable: false)
+ .Annotation("SqlServer:Identity", "1, 1"),
+ Type = table.Column(type: "nvarchar(max)", nullable: false),
+ Cost = table.Column(type: "float", nullable: false),
+ ReservationId = table.Column(type: "int", nullable: false)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_Rooms", x => x.Id);
+ table.ForeignKey(
+ name: "FK_Rooms_Reservations_ReservationId",
+ column: x => x.ReservationId,
+ principalTable: "Reservations",
+ principalColumn: "Id",
+ onDelete: ReferentialAction.Cascade);
+ });
+
+ migrationBuilder.CreateTable(
+ name: "ReservationRooms",
+ columns: table => new
+ {
+ Id = table.Column(type: "int", nullable: false)
+ .Annotation("SqlServer:Identity", "1, 1"),
+ ReservationId = table.Column(type: "int", nullable: false),
+ RoomId = table.Column(type: "int", nullable: false),
+ RoomId1 = table.Column(type: "int", nullable: true)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_ReservationRooms", x => x.Id);
+ table.ForeignKey(
+ name: "FK_ReservationRooms_Reservations_RoomId",
+ column: x => x.RoomId,
+ principalTable: "Reservations",
+ principalColumn: "Id",
+ onDelete: ReferentialAction.Cascade);
+ table.ForeignKey(
+ name: "FK_ReservationRooms_Rooms_RoomId1",
+ column: x => x.RoomId1,
+ principalTable: "Rooms",
+ principalColumn: "Id");
+ });
+
+ migrationBuilder.CreateIndex(
+ name: "IX_CleaningInstrument_CleaningId",
+ table: "CleaningInstrument",
+ column: "CleaningId");
+
+ migrationBuilder.CreateIndex(
+ name: "IX_CleaningInstrument_CleaningInstrumentsId",
+ table: "CleaningInstrument",
+ column: "CleaningInstrumentsId");
+
+ migrationBuilder.CreateIndex(
+ name: "IX_ReservationRooms_RoomId",
+ table: "ReservationRooms",
+ column: "RoomId");
+
+ migrationBuilder.CreateIndex(
+ name: "IX_ReservationRooms_RoomId1",
+ table: "ReservationRooms",
+ column: "RoomId1");
+
+ migrationBuilder.CreateIndex(
+ name: "IX_Rooms_ReservationId",
+ table: "Rooms",
+ column: "ReservationId");
+ }
+
+ ///
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.DropTable(
+ name: "CleaningInstrument");
+
+ migrationBuilder.DropTable(
+ name: "Guests");
+
+ migrationBuilder.DropTable(
+ name: "Maitres");
+
+ migrationBuilder.DropTable(
+ name: "ReservationRooms");
+
+ migrationBuilder.DropTable(
+ name: "CleaningInstruments");
+
+ migrationBuilder.DropTable(
+ name: "Cleanings");
+
+ migrationBuilder.DropTable(
+ name: "Rooms");
+
+ migrationBuilder.DropTable(
+ name: "Reservations");
+ }
+ }
+}
diff --git a/Hotel/HotelDatabaseImplement/Migrations/HotelDataBaseModelSnapshot.cs b/Hotel/HotelDatabaseImplement/Migrations/HotelDataBaseModelSnapshot.cs
new file mode 100644
index 0000000..64bb2b1
--- /dev/null
+++ b/Hotel/HotelDatabaseImplement/Migrations/HotelDataBaseModelSnapshot.cs
@@ -0,0 +1,277 @@
+//
+using System;
+using HotelDatabaseImplement;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+
+#nullable disable
+
+namespace HotelDatabaseImplement.Migrations
+{
+ [DbContext(typeof(HotelDataBase))]
+ partial class HotelDataBaseModelSnapshot : ModelSnapshot
+ {
+ protected override void BuildModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "8.0.0-preview.2.23128.3")
+ .HasAnnotation("Relational:MaxIdentifierLength", 128);
+
+ SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Cleaning", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Date")
+ .HasColumnType("datetime2");
+
+ b.Property("RoomId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.ToTable("Cleanings");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.CleaningInstrument", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("CleaningId")
+ .HasColumnType("int");
+
+ b.Property("CleaningInstrumentsId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CleaningId");
+
+ b.HasIndex("CleaningInstrumentsId");
+
+ b.ToTable("CleaningInstrument");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.CleaningInstruments", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Type")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("CleaningInstruments");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Guest", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("LastName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("SecondName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Guests");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Maitre", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("LastName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Login")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Password")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("SecondName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Maitres");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Reservation", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("EndDate")
+ .HasColumnType("datetime2");
+
+ b.Property("GuestId")
+ .HasColumnType("int");
+
+ b.Property("MaitreId")
+ .HasColumnType("int");
+
+ b.Property("StartDate")
+ .HasColumnType("datetime2");
+
+ b.HasKey("Id");
+
+ b.ToTable("Reservations");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.ReservationRoom", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ReservationId")
+ .HasColumnType("int");
+
+ b.Property("RoomId")
+ .HasColumnType("int");
+
+ b.Property("RoomId1")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("RoomId");
+
+ b.HasIndex("RoomId1");
+
+ b.ToTable("ReservationRooms");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Room", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Cost")
+ .HasColumnType("float");
+
+ b.Property("ReservationId")
+ .HasColumnType("int");
+
+ b.Property("Type")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ReservationId");
+
+ b.ToTable("Rooms");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.CleaningInstrument", b =>
+ {
+ b.HasOne("HotelDatabaseImplement.Models.Cleaning", "Cleaning")
+ .WithMany("CleaningInstrument")
+ .HasForeignKey("CleaningId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("HotelDatabaseImplement.Models.CleaningInstruments", "CleaningInstruments")
+ .WithMany()
+ .HasForeignKey("CleaningInstrumentsId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Cleaning");
+
+ b.Navigation("CleaningInstruments");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.ReservationRoom", b =>
+ {
+ b.HasOne("HotelDatabaseImplement.Models.Reservation", "Reservation")
+ .WithMany("Rooms")
+ .HasForeignKey("RoomId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("HotelDatabaseImplement.Models.Room", "Room")
+ .WithMany()
+ .HasForeignKey("RoomId1");
+
+ b.Navigation("Reservation");
+
+ b.Navigation("Room");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Room", b =>
+ {
+ b.HasOne("HotelDatabaseImplement.Models.Reservation", "Reservation")
+ .WithMany()
+ .HasForeignKey("ReservationId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Reservation");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Cleaning", b =>
+ {
+ b.Navigation("CleaningInstrument");
+ });
+
+ modelBuilder.Entity("HotelDatabaseImplement.Models.Reservation", b =>
+ {
+ b.Navigation("Rooms");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/Hotel/HotelView/HotelView.csproj b/Hotel/HotelView/HotelView.csproj
index cb306cf..c408b62 100644
--- a/Hotel/HotelView/HotelView.csproj
+++ b/Hotel/HotelView/HotelView.csproj
@@ -7,7 +7,17 @@
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
+
+
+
+
+