<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * Run the migrations.
     */
    public function up(): void
    {
        $sql = <<<'SQL'
            CREATE TABLE rework_locator_invoice_validations (
                id                          BIGINT GENERATED always AS IDENTITY PRIMARY KEY,

                plant_id                    BIGINT NOT NULL,

                invoice_number              TEXT NOT NULL,
                serial_number				TEXT NOT NULL,
                pallet_number				TEXT NULL,
                locator_number				TEXT NULL,
                scanned_status				TEXT NULL,
                upload_status				TEXT NOT NULL DEFAULT 'N',

                created_by					TEXT NOT NULL,
                scanned_by					TEXT NULL,
                updated_by					TEXT NULL,
                reworked_by					TEXT NULL,

                created_at                  TIMESTAMP NOT NULL DEFAULT NOW(),
                updated_at                  TIMESTAMP,
                scanned_at					TIMESTAMP,
                reworked_at					TIMESTAMP,
                deleted_at                  TIMESTAMP,

                FOREIGN KEY (plant_id)      REFERENCES  plants (id)

            );
        SQL;

        DB::statement($sql);
    }

    /**
     * Reverse the migrations.
     */
    public function down(): void
    {
        Schema::dropIfExists('rework_locator_invoice_validations');
    }
};
