40097-vm/save_llamada.php
2026-05-26 15:51:40 +00:00

43 lines
1.4 KiB
PHP

<?php
require_once 'db/config.php';
require_once 'includes/callcenter_test_helpers.php';
session_start();
header('Content-Type: application/json');
if (!isset($_SESSION['user_id']) || !cc_test_current_user_can_access_module(db())) {
echo json_encode(['success' => false, 'error' => 'No autorizado']);
exit;
}
$pedido_id = trim((string) ($_POST['pedido_id'] ?? ''));
$resultado = trim((string) ($_POST['resultado'] ?? 'Llamada iniciada'));
$observacion = trim((string) ($_POST['observacion'] ?? ''));
$asesor_id = (int) $_SESSION['user_id'];
if ($pedido_id === '') {
echo json_encode(['success' => false, 'error' => 'ID de pedido faltante']);
exit;
}
if ($resultado === '') {
$resultado = 'Llamada iniciada';
}
try {
$pdo = db();
cc_test_ensure_historial_llamadas_table($pdo);
$stmt = $pdo->prepare('INSERT INTO historial_llamadas (pedido_id, asesor_id, resultado, observacion) VALUES (?, ?, ?, ?)');
$stmt->execute([$pedido_id, $asesor_id, $resultado, $observacion !== '' ? $observacion : null]);
$countStmt = $pdo->prepare('SELECT COUNT(*) FROM historial_llamadas WHERE pedido_id = ?');
$countStmt->execute([$pedido_id]);
$totalLlamadas = (int) $countStmt->fetchColumn();
echo json_encode(['success' => true, 'total_llamadas' => $totalLlamadas]);
} catch (Throwable $e) {
error_log('save_llamada.php: ' . $e->getMessage());
echo json_encode(['success' => false, 'error' => 'No se pudo registrar la llamada']);
}