using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace CompanyManagment.EFCore.Migrations
{
///
public partial class addfinancialinvoice : Migration
{
///
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_FinancialInvoice_FinancialStatments_FinancialStatementId",
table: "FinancialInvoice");
migrationBuilder.DropPrimaryKey(
name: "PK_FinancialInvoice",
table: "FinancialInvoice");
migrationBuilder.DropColumn(
name: "Month",
table: "FinancialInvoice");
migrationBuilder.DropColumn(
name: "SmsCode",
table: "FinancialInvoice");
migrationBuilder.DropColumn(
name: "Year",
table: "FinancialInvoice");
migrationBuilder.RenameTable(
name: "FinancialInvoice",
newName: "FinancialInvoices");
migrationBuilder.RenameColumn(
name: "FinancialStatementId",
table: "FinancialInvoices",
newName: "FinancialStatmentid");
migrationBuilder.RenameIndex(
name: "IX_FinancialInvoice_FinancialStatementId",
table: "FinancialInvoices",
newName: "IX_FinancialInvoices_FinancialStatmentid");
migrationBuilder.AddColumn(
name: "FinancialInvoiceId",
table: "PaymentTransactions",
type: "bigint",
nullable: true);
migrationBuilder.AddColumn(
name: "ContractingPartyId",
table: "FinancialInvoices",
type: "bigint",
nullable: false,
defaultValue: 0L);
migrationBuilder.AddColumn(
name: "Description",
table: "FinancialInvoices",
type: "nvarchar(800)",
maxLength: 800,
nullable: true);
migrationBuilder.AddColumn(
name: "IsActive",
table: "FinancialInvoices",
type: "bit",
nullable: false,
defaultValue: false);
migrationBuilder.AddColumn(
name: "PublicId",
table: "FinancialInvoices",
type: "uniqueidentifier",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"));
migrationBuilder.AddPrimaryKey(
name: "PK_FinancialInvoices",
table: "FinancialInvoices",
column: "id");
migrationBuilder.CreateTable(
name: "FinancialInvoiceItem",
columns: table => new
{
id = table.Column(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Description = table.Column(type: "nvarchar(800)", maxLength: 800, nullable: true),
Amount = table.Column(type: "float", nullable: false),
Type = table.Column(type: "nvarchar(50)", maxLength: 50, nullable: false),
EntityId = table.Column(type: "bigint", nullable: false),
FinancialInvoiceId = table.Column(type: "bigint", nullable: false),
CreationDate = table.Column(type: "datetime2", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_FinancialInvoiceItem", x => x.id);
table.ForeignKey(
name: "FK_FinancialInvoiceItem_FinancialInvoices_FinancialInvoiceId",
column: x => x.FinancialInvoiceId,
principalTable: "FinancialInvoices",
principalColumn: "id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateIndex(
name: "IX_PaymentTransactions_FinancialInvoiceId",
table: "PaymentTransactions",
column: "FinancialInvoiceId");
migrationBuilder.CreateIndex(
name: "IX_FinancialInvoiceItem_FinancialInvoiceId",
table: "FinancialInvoiceItem",
column: "FinancialInvoiceId");
migrationBuilder.AddForeignKey(
name: "FK_FinancialInvoices_FinancialStatments_FinancialStatmentid",
table: "FinancialInvoices",
column: "FinancialStatmentid",
principalTable: "FinancialStatments",
principalColumn: "id");
migrationBuilder.AddForeignKey(
name: "FK_PaymentTransactions_FinancialInvoices_FinancialInvoiceId",
table: "PaymentTransactions",
column: "FinancialInvoiceId",
principalTable: "FinancialInvoices",
principalColumn: "id");
}
///
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_FinancialInvoices_FinancialStatments_FinancialStatmentid",
table: "FinancialInvoices");
migrationBuilder.DropForeignKey(
name: "FK_PaymentTransactions_FinancialInvoices_FinancialInvoiceId",
table: "PaymentTransactions");
migrationBuilder.DropTable(
name: "FinancialInvoiceItem");
migrationBuilder.DropIndex(
name: "IX_PaymentTransactions_FinancialInvoiceId",
table: "PaymentTransactions");
migrationBuilder.DropPrimaryKey(
name: "PK_FinancialInvoices",
table: "FinancialInvoices");
migrationBuilder.DropColumn(
name: "FinancialInvoiceId",
table: "PaymentTransactions");
migrationBuilder.DropColumn(
name: "ContractingPartyId",
table: "FinancialInvoices");
migrationBuilder.DropColumn(
name: "Description",
table: "FinancialInvoices");
migrationBuilder.DropColumn(
name: "IsActive",
table: "FinancialInvoices");
migrationBuilder.DropColumn(
name: "PublicId",
table: "FinancialInvoices");
migrationBuilder.RenameTable(
name: "FinancialInvoices",
newName: "FinancialInvoice");
migrationBuilder.RenameColumn(
name: "FinancialStatmentid",
table: "FinancialInvoice",
newName: "FinancialStatementId");
migrationBuilder.RenameIndex(
name: "IX_FinancialInvoices_FinancialStatmentid",
table: "FinancialInvoice",
newName: "IX_FinancialInvoice_FinancialStatementId");
migrationBuilder.AddColumn(
name: "Month",
table: "FinancialInvoice",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn(
name: "SmsCode",
table: "FinancialInvoice",
type: "nvarchar(122)",
maxLength: 122,
nullable: true);
migrationBuilder.AddColumn(
name: "Year",
table: "FinancialInvoice",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddPrimaryKey(
name: "PK_FinancialInvoice",
table: "FinancialInvoice",
column: "id");
migrationBuilder.AddForeignKey(
name: "FK_FinancialInvoice_FinancialStatments_FinancialStatementId",
table: "FinancialInvoice",
column: "FinancialStatementId",
principalTable: "FinancialStatments",
principalColumn: "id");
}
}
}