using System;
using Microsoft.EntityFrameworkCore.Migrations;

#nullable disable

namespace PowderCoating.Infrastructure.Migrations
{
    /// <inheritdoc />
    public partial class AddPerformanceIndexesV2 : Migration
    {
        /// <inheritdoc />
        protected override void Up(MigrationBuilder migrationBuilder)
        {
            migrationBuilder.UpdateData(
                table: "PricingTiers",
                keyColumn: "Id",
                keyValue: 1,
                column: "CreatedAt",
                value: new DateTime(2026, 3, 16, 4, 2, 52, 598, DateTimeKind.Utc).AddTicks(2681));

            migrationBuilder.UpdateData(
                table: "PricingTiers",
                keyColumn: "Id",
                keyValue: 2,
                column: "CreatedAt",
                value: new DateTime(2026, 3, 16, 4, 2, 52, 598, DateTimeKind.Utc).AddTicks(2692));

            migrationBuilder.UpdateData(
                table: "PricingTiers",
                keyColumn: "Id",
                keyValue: 3,
                column: "CreatedAt",
                value: new DateTime(2026, 3, 16, 4, 2, 52, 598, DateTimeKind.Utc).AddTicks(2693));

            migrationBuilder.CreateIndex(
                name: "IX_Quotes_CompanyId_IsDeleted",
                table: "Quotes",
                columns: new[] { "CompanyId", "IsDeleted" });

            migrationBuilder.CreateIndex(
                name: "IX_Quotes_ExpirationDate",
                table: "Quotes",
                column: "ExpirationDate");

            migrationBuilder.CreateIndex(
                name: "IX_Payments_PaymentDate",
                table: "Payments",
                column: "PaymentDate");

            migrationBuilder.CreateIndex(
                name: "IX_OvenBatches_ScheduledDate_Status",
                table: "OvenBatches",
                columns: new[] { "ScheduledDate", "Status" });

            migrationBuilder.CreateIndex(
                name: "IX_MaintenanceRecords_ScheduledDate",
                table: "MaintenanceRecords",
                column: "ScheduledDate");

            migrationBuilder.CreateIndex(
                name: "IX_MaintenanceRecords_Status",
                table: "MaintenanceRecords",
                column: "Status");

            migrationBuilder.CreateIndex(
                name: "IX_Jobs_CompanyId_IsDeleted",
                table: "Jobs",
                columns: new[] { "CompanyId", "IsDeleted" });

            migrationBuilder.CreateIndex(
                name: "IX_Jobs_DueDate",
                table: "Jobs",
                column: "DueDate");

            migrationBuilder.CreateIndex(
                name: "IX_Jobs_ScheduledDate",
                table: "Jobs",
                column: "ScheduledDate");

            migrationBuilder.CreateIndex(
                name: "IX_Invoices_CompanyId_IsDeleted",
                table: "Invoices",
                columns: new[] { "CompanyId", "IsDeleted" });

            migrationBuilder.CreateIndex(
                name: "IX_Invoices_DueDate",
                table: "Invoices",
                column: "DueDate");

            migrationBuilder.CreateIndex(
                name: "IX_Invoices_InvoiceDate",
                table: "Invoices",
                column: "InvoiceDate");

            migrationBuilder.CreateIndex(
                name: "IX_Invoices_Status",
                table: "Invoices",
                column: "Status");
        }

        /// <inheritdoc />
        protected override void Down(MigrationBuilder migrationBuilder)
        {
            migrationBuilder.DropIndex(
                name: "IX_Quotes_CompanyId_IsDeleted",
                table: "Quotes");

            migrationBuilder.DropIndex(
                name: "IX_Quotes_ExpirationDate",
                table: "Quotes");

            migrationBuilder.DropIndex(
                name: "IX_Payments_PaymentDate",
                table: "Payments");

            migrationBuilder.DropIndex(
                name: "IX_OvenBatches_ScheduledDate_Status",
                table: "OvenBatches");

            migrationBuilder.DropIndex(
                name: "IX_MaintenanceRecords_ScheduledDate",
                table: "MaintenanceRecords");

            migrationBuilder.DropIndex(
                name: "IX_MaintenanceRecords_Status",
                table: "MaintenanceRecords");

            migrationBuilder.DropIndex(
                name: "IX_Jobs_CompanyId_IsDeleted",
                table: "Jobs");

            migrationBuilder.DropIndex(
                name: "IX_Jobs_DueDate",
                table: "Jobs");

            migrationBuilder.DropIndex(
                name: "IX_Jobs_ScheduledDate",
                table: "Jobs");

            migrationBuilder.DropIndex(
                name: "IX_Invoices_CompanyId_IsDeleted",
                table: "Invoices");

            migrationBuilder.DropIndex(
                name: "IX_Invoices_DueDate",
                table: "Invoices");

            migrationBuilder.DropIndex(
                name: "IX_Invoices_InvoiceDate",
                table: "Invoices");

            migrationBuilder.DropIndex(
                name: "IX_Invoices_Status",
                table: "Invoices");

            migrationBuilder.UpdateData(
                table: "PricingTiers",
                keyColumn: "Id",
                keyValue: 1,
                column: "CreatedAt",
                value: new DateTime(2026, 3, 16, 3, 2, 22, 213, DateTimeKind.Utc).AddTicks(9898));

            migrationBuilder.UpdateData(
                table: "PricingTiers",
                keyColumn: "Id",
                keyValue: 2,
                column: "CreatedAt",
                value: new DateTime(2026, 3, 16, 3, 2, 22, 213, DateTimeKind.Utc).AddTicks(9905));

            migrationBuilder.UpdateData(
                table: "PricingTiers",
                keyColumn: "Id",
                keyValue: 3,
                column: "CreatedAt",
                value: new DateTime(2026, 3, 16, 3, 2, 22, 213, DateTimeKind.Utc).AddTicks(9908));
        }
    }
}
