<?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
    {
        Schema::create('clients', function (Blueprint $table) {
            // 1. Alterado de $table->id() para $table->uuid()
            $table->uuid('id')->primary(); 

            // Informações de Cadastro
            $table->string('name'); 
            $table->string('legal_name'); 
            $table->string('cnpj')->unique()->nullable(); 
            
            // 2. Adicionado o path da imagem
            $table->string('profile_image_path')->nullable(); // "path da imagem do cliente"

            // Informações Técnicas
            $table->string('pbx_hosting')->nullable(); 
            $table->date('activation_date')->nullable(); 
            $table->string('carrier')->nullable(); 
            $table->string('access_type')->nullable(); 
            $table->ipAddress('server_ip')->nullable(); 
            $table->text('root_password')->nullable(); 

            // Módulos e Features
            $table->boolean('has_call_center')->default(false); 
            $table->boolean('has_voice_gateway')->default(false); 
            $table->boolean('has_fop2')->default(false); 

            // Módulos
            $table->json('modules')->nullable(); 
            $table->string('whatsapp_number')->nullable(); 
            $table->date('whatsapp_activation_date')->nullable(); 

            $table->timestamps();
            $table->softDeletes();
        });
    }

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