<?php
header('Content-Type: application/json; charset=UTF-8');
ini_set('display_errors', 1);
error_reporting(E_ALL);

try {
    $host = 'localhost';
    $dbname = 'CORREOS';
    $user = 'root';
    $pass = 'root';

    $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8mb4", $user, $pass, [
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
    ]);

    // Verificar parámetros
    if (!isset($_POST['id_original'], $_POST['area'], $_POST['estado'], $_POST['nota'])) {
        echo json_encode(['success' => false, 'message' => 'Faltan parámetros']);
        exit;
    }

    $id     = $_POST['id_original'];
    $area   = $_POST['area'];
    $estado = $_POST['estado'];
    $nota   = $_POST['nota'];

    // 1. Verificar si ya existe la asignación
    $stmt = $pdo->prepare("SELECT ID_ASIGNACION 
                           FROM CORREO_AREAS 
                           WHERE ID_CORREO = :id AND AREA = :area");
    $stmt->execute([':id' => $id, ':area' => $area]);
    $asignacion = $stmt->fetch(PDO::FETCH_ASSOC);

    if ($asignacion) {
        // 2a. Ya existe → actualizar
        $update = $pdo->prepare("UPDATE CORREO_AREAS 
                                 SET ESTADO = :estado, NOTA = :nota, FECHA_ASIGNACION = NOW() 
                                 WHERE ID_CORREO = :id AND AREA = :area");
        $update->execute([
            ':estado' => $estado,
            ':nota'   => $nota,
            ':id'     => $id,
            ':area'   => $area
        ]);
    } else {
        // 2b. No existe → insertar
        $insert = $pdo->prepare("INSERT INTO CORREO_AREAS (ID_CORREO, AREA, ESTADO, NOTA, FECHA_ASIGNACION) 
                                 VALUES (:id, :area, :estado, :nota, NOW())");
        $insert->execute([
            ':id'     => $id,
            ':area'   => $area,
            ':estado' => $estado,
            ':nota'   => $nota
        ]);
    }

    echo json_encode(['success' => true]);

} catch (Exception $e) {
    echo json_encode(['success' => false, 'message' => "Error: " . $e->getMessage()]);
}
