<?php
include_once '../config/database.php';

header('Content-Type: application/json');

// Configurar zona horaria de Lima
date_default_timezone_set('America/Lima');

try {
    $database = new Database();
    $conn = $database->getConnection();
    
    $equipo_id = isset($_POST['equipo_id']) ? intval($_POST['equipo_id']) : 0;
    $estado = isset($_POST['estado']) ? trim($_POST['estado']) : '';
    
    if (!$equipo_id || !$estado) {
        throw new Exception('Datos requeridos no proporcionados');
    }
    
    // Validar que el estado sea válido
    $estados_validos = ['ACTIVO', 'BAJA', 'LIQUIDADO'];
    if (!in_array($estado, $estados_validos)) {
        throw new Exception('Estado no válido');
    }
    
    // Verificar que el equipo existe
    $check_query = "SELECT id FROM timportequipos WHERE id = ?";
    $check_stmt = $conn->prepare($check_query);
    $check_stmt->execute([$equipo_id]);
    $equipo = $check_stmt->fetch(PDO::FETCH_ASSOC);
    
    if (!$equipo) {
        throw new Exception('Equipo no encontrado');
    }
    
    // Obtener la fecha actual de Lima en formato Y-m-d
    $fecha_edicion = date('Y-m-d');
    
    // Actualizar el estado del equipo y fecha_edicion
    $update_query = "UPDATE timportequipos 
                     SET estado = ?, 
                         fecha_edicion = ?
                     WHERE id = ?";
    
    $update_stmt = $conn->prepare($update_query);
    $result = $update_stmt->execute([$estado, $fecha_edicion, $equipo_id]);
    
    if (!$result) {
        throw new Exception('Error al actualizar el estado');
    }
    
    // Verificar si se actualizó correctamente
    if ($update_stmt->rowCount() === 0) {
        throw new Exception('No se pudo actualizar el estado');
    }
    
    echo json_encode([
        'success' => true,
        'message' => 'Estado actualizado correctamente',
        'estado' => $estado,
        'fecha_edicion' => $fecha_edicion
    ]);
    
} catch (Exception $e) {
    echo json_encode([
        'success' => false,
        'message' => $e->getMessage()
    ]);
} catch (PDOException $e) {
    echo json_encode([
        'success' => false,
        'message' => 'Error de base de datos: ' . $e->getMessage()
    ]);
}
?>
