false, 'message' => 'No autorizado']); exit; } if ($_SERVER['REQUEST_METHOD'] === 'POST') { $pedido_id = $_POST['pedido_id'] ?? null; $estado = $_POST['estado'] ?? null; if (!$pedido_id) { echo json_encode(['success' => false, 'message' => 'ID de pedido faltante']); exit; } try { $pdo = db(); $valid_states = ['RUTA_CONTRAENTREGA', 'ENTREGA EXITOSA', 'RETORNADO']; if (!in_array($estado, $valid_states)) { echo json_encode(['success' => false, 'message' => 'Estado inválido']); exit; } $stmt = $pdo->prepare("UPDATE pedidos SET estado = ? WHERE id = ?"); $result = $stmt->execute([$estado, $pedido_id]); if ($result) { echo json_encode(['success' => true]); } else { echo json_encode(['success' => false, 'message' => 'Error al actualizar en la base de datos']); } } catch (PDOException $e) { echo json_encode(['success' => false, 'message' => 'Error de base de datos: ' . $e->getMessage()]); } } else { echo json_encode(['success' => false, 'message' => 'Método no permitido']); }