using System; using Microsoft.EntityFrameworkCore.Migrations; #nullable disable #pragma warning disable CA1814 // Prefer jagged arrays over multidimensional namespace MTWorkHR.Infrastructure.Migrations { /// public partial class altrOrderRequest3 : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.DropColumn( name: "CityId", table: "OrderRequests"); migrationBuilder.DropColumn( name: "CountryId", table: "OrderRequests"); migrationBuilder.AddColumn( name: "BusinessTripExpensesId", table: "OrderRequests", type: "bigint", nullable: true); migrationBuilder.CreateTable( name: "OrderAttachment", columns: table => new { Id = table.Column(type: "bigint", nullable: false) .Annotation("SqlServer:Identity", "1, 1"), CreateUser = table.Column(type: "nvarchar(450)", maxLength: 450, nullable: true), UpdateUser = table.Column(type: "nvarchar(450)", maxLength: 450, nullable: true), CreateDate = table.Column(type: "datetime2", nullable: false), UpdateDate = table.Column(type: "datetime2", nullable: true), OrderRequestId = table.Column(type: "bigint", nullable: false), AttachmentTypeId = table.Column(type: "bigint", nullable: true), FileName = table.Column(type: "nvarchar(250)", maxLength: 250, nullable: true), OriginalName = table.Column(type: "nvarchar(250)", maxLength: 250, nullable: true), FilePath = table.Column(type: "nvarchar(max)", nullable: true), ContentType = table.Column(type: "nvarchar(max)", nullable: true) }, constraints: table => { table.PrimaryKey("PK_OrderAttachment", x => x.Id); table.ForeignKey( name: "FK_OrderAttachment_OrderRequests_OrderRequestId", column: x => x.OrderRequestId, principalTable: "OrderRequests", principalColumn: "Id", onDelete: ReferentialAction.Cascade); }); migrationBuilder.CreateTable( name: "OverTimeDay", columns: table => new { Id = table.Column(type: "bigint", nullable: false) .Annotation("SqlServer:Identity", "1, 1"), OverTimeDate = table.Column(type: "datetime2", nullable: true), StartTime = table.Column(type: "nvarchar(max)", nullable: true), EndTime = table.Column(type: "nvarchar(max)", nullable: true), TotalHours = table.Column(type: "decimal(18,2)", nullable: true), OrderRequestId = table.Column(type: "bigint", nullable: true) }, constraints: table => { table.PrimaryKey("PK_OverTimeDay", x => x.Id); table.ForeignKey( name: "FK_OverTimeDay_OrderRequests_OrderRequestId", column: x => x.OrderRequestId, principalTable: "OrderRequests", principalColumn: "Id"); }); migrationBuilder.CreateTable( name: "BusinessTripExpenses", columns: table => new { Id = table.Column(type: "bigint", nullable: false) .Annotation("SqlServer:Identity", "1, 1"), TicketCost = table.Column(type: "decimal(18,2)", nullable: true), TransportationCost = table.Column(type: "decimal(18,2)", nullable: true), AccommodationCost = table.Column(type: "decimal(18,2)", nullable: true), OtherCost = table.Column(type: "decimal(18,2)", nullable: true), TicketAttachmentId = table.Column(type: "bigint", nullable: true), TransportationAttachmentId = table.Column(type: "bigint", nullable: true), AccommodationAttachmentId = table.Column(type: "bigint", nullable: true), OtherAttachmentId = table.Column(type: "bigint", nullable: true) }, constraints: table => { table.PrimaryKey("PK_BusinessTripExpenses", x => x.Id); table.ForeignKey( name: "FK_BusinessTripExpenses_OrderAttachment_AccommodationAttachmentId", column: x => x.AccommodationAttachmentId, principalTable: "OrderAttachment", principalColumn: "Id"); table.ForeignKey( name: "FK_BusinessTripExpenses_OrderAttachment_OtherAttachmentId", column: x => x.OtherAttachmentId, principalTable: "OrderAttachment", principalColumn: "Id"); table.ForeignKey( name: "FK_BusinessTripExpenses_OrderAttachment_TicketAttachmentId", column: x => x.TicketAttachmentId, principalTable: "OrderAttachment", principalColumn: "Id"); table.ForeignKey( name: "FK_BusinessTripExpenses_OrderAttachment_TransportationAttachmentId", column: x => x.TransportationAttachmentId, principalTable: "OrderAttachment", principalColumn: "Id"); }); migrationBuilder.InsertData( table: "AttachmentTypes", columns: new[] { "Id", "IsRequired", "NameAr", "NameEn" }, values: new object[,] { { 10L, false, "تكلفة التذكرة", "Ticket Cost" }, { 11L, false, "تكلفة المواصلات", "Transportation Cost" }, { 12L, false, "تكلفة الاقامة", "Accommodation Cost" }, { 13L, false, "اخرى", "Other" } }); migrationBuilder.CreateIndex( name: "IX_OrderRequests_BusinessTripExpensesId", table: "OrderRequests", column: "BusinessTripExpensesId"); migrationBuilder.CreateIndex( name: "IX_BusinessTripExpenses_AccommodationAttachmentId", table: "BusinessTripExpenses", column: "AccommodationAttachmentId"); migrationBuilder.CreateIndex( name: "IX_BusinessTripExpenses_OtherAttachmentId", table: "BusinessTripExpenses", column: "OtherAttachmentId"); migrationBuilder.CreateIndex( name: "IX_BusinessTripExpenses_TicketAttachmentId", table: "BusinessTripExpenses", column: "TicketAttachmentId"); migrationBuilder.CreateIndex( name: "IX_BusinessTripExpenses_TransportationAttachmentId", table: "BusinessTripExpenses", column: "TransportationAttachmentId"); migrationBuilder.CreateIndex( name: "IX_OrderAttachment_OrderRequestId", table: "OrderAttachment", column: "OrderRequestId"); migrationBuilder.CreateIndex( name: "IX_OverTimeDay_OrderRequestId", table: "OverTimeDay", column: "OrderRequestId"); migrationBuilder.AddForeignKey( name: "FK_OrderRequests_BusinessTripExpenses_BusinessTripExpensesId", table: "OrderRequests", column: "BusinessTripExpensesId", principalTable: "BusinessTripExpenses", principalColumn: "Id"); } /// protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropForeignKey( name: "FK_OrderRequests_BusinessTripExpenses_BusinessTripExpensesId", table: "OrderRequests"); migrationBuilder.DropTable( name: "BusinessTripExpenses"); migrationBuilder.DropTable( name: "OverTimeDay"); migrationBuilder.DropTable( name: "OrderAttachment"); migrationBuilder.DropIndex( name: "IX_OrderRequests_BusinessTripExpensesId", table: "OrderRequests"); migrationBuilder.DeleteData( table: "AttachmentTypes", keyColumn: "Id", keyValue: 10L); migrationBuilder.DeleteData( table: "AttachmentTypes", keyColumn: "Id", keyValue: 11L); migrationBuilder.DeleteData( table: "AttachmentTypes", keyColumn: "Id", keyValue: 12L); migrationBuilder.DeleteData( table: "AttachmentTypes", keyColumn: "Id", keyValue: 13L); migrationBuilder.DropColumn( name: "BusinessTripExpensesId", table: "OrderRequests"); migrationBuilder.AddColumn( name: "CityId", table: "OrderRequests", type: "int", nullable: true); migrationBuilder.AddColumn( name: "CountryId", table: "OrderRequests", type: "int", nullable: true); } } }