using System;
using Microsoft.EntityFrameworkCore.Migrations;
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
#nullable disable
namespace vendorApproverBackend.Migrations
{
///
public partial class UpdateRequestEntity4 : Migration
{
///
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "ExperienceAndAfterSales",
table: "PrequalificationRequests");
migrationBuilder.AddColumn(
name: "ExperienceAndAfterSales_AfterSalesReport",
table: "PrequalificationRequests",
type: "boolean",
nullable: true);
migrationBuilder.AddColumn(
name: "ExperienceAndAfterSales_ClientRefDate",
table: "PrequalificationRequests",
type: "timestamp with time zone",
nullable: true);
migrationBuilder.AddColumn(
name: "ExperienceAndAfterSales_IssueTrackingSystem",
table: "PrequalificationRequests",
type: "boolean",
nullable: true);
migrationBuilder.AddColumn(
name: "ExperienceAndAfterSales_ManufacturerProductInfo",
table: "PrequalificationRequests",
type: "text",
nullable: true);
migrationBuilder.AddColumn(
name: "deadline",
table: "PrequalificationRequests",
type: "timestamp with time zone",
nullable: true);
migrationBuilder.AddColumn(
name: "warranty_certificate_file_id",
table: "PrequalificationRequests",
type: "bigint",
nullable: true);
migrationBuilder.CreateTable(
name: "ClientReference",
columns: table => new
{
ExperienceAndAfterSalesPrequalificationRequestId = table.Column(type: "bigint", nullable: false),
Id = table.Column(type: "integer", nullable: false)
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
Client = table.Column(type: "text", nullable: true),
Country = table.Column(type: "text", nullable: true),
Industry = table.Column(type: "text", nullable: true),
Quantity = table.Column(type: "text", nullable: true),
OrderYear = table.Column(type: "text", nullable: true),
DeliveryYear = table.Column(type: "text", nullable: true),
YearsInService = table.Column(type: "text", nullable: true),
CertificateAttached = table.Column(type: "boolean", nullable: true),
CertificateFileId = table.Column(type: "bigint", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_ClientReference", x => new { x.ExperienceAndAfterSalesPrequalificationRequestId, x.Id });
table.ForeignKey(
name: "FK_ClientReference_PrequalificationRequests_ExperienceAndAfter~",
column: x => x.ExperienceAndAfterSalesPrequalificationRequestId,
principalTable: "PrequalificationRequests",
principalColumn: "id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateIndex(
name: "IX_PrequalificationRequests_warranty_certificate_file_id",
table: "PrequalificationRequests",
column: "warranty_certificate_file_id",
unique: true);
migrationBuilder.AddForeignKey(
name: "FK_PrequalificationRequests_File_model_warranty_certificate_fi~",
table: "PrequalificationRequests",
column: "warranty_certificate_file_id",
principalTable: "File_model",
principalColumn: "id",
onDelete: ReferentialAction.Restrict);
}
///
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_PrequalificationRequests_File_model_warranty_certificate_fi~",
table: "PrequalificationRequests");
migrationBuilder.DropTable(
name: "ClientReference");
migrationBuilder.DropIndex(
name: "IX_PrequalificationRequests_warranty_certificate_file_id",
table: "PrequalificationRequests");
migrationBuilder.DropColumn(
name: "ExperienceAndAfterSales_AfterSalesReport",
table: "PrequalificationRequests");
migrationBuilder.DropColumn(
name: "ExperienceAndAfterSales_ClientRefDate",
table: "PrequalificationRequests");
migrationBuilder.DropColumn(
name: "ExperienceAndAfterSales_IssueTrackingSystem",
table: "PrequalificationRequests");
migrationBuilder.DropColumn(
name: "ExperienceAndAfterSales_ManufacturerProductInfo",
table: "PrequalificationRequests");
migrationBuilder.DropColumn(
name: "deadline",
table: "PrequalificationRequests");
migrationBuilder.DropColumn(
name: "warranty_certificate_file_id",
table: "PrequalificationRequests");
migrationBuilder.AddColumn(
name: "ExperienceAndAfterSales",
table: "PrequalificationRequests",
type: "jsonb",
nullable: false,
defaultValue: "{}");
}
}
}