Files
MVE/public/limpiar_pedimentos.php

66 lines
2.0 KiB
PHP

<?php
session_start();
require_once __DIR__ . '/../config/database.php';
header('Content-Type: application/json; charset=utf-8');
// Verificar que el usuario esté logueado
if (!isset($_SESSION['usuario_id'])) {
echo json_encode(['success' => false, 'message' => 'Usuario no autenticado']);
exit;
}
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
echo json_encode(['success' => false, 'message' => 'Método no permitido']);
exit;
}
try {
$conn = getConnection();
// Iniciar transacción
sqlsrv_begin_transaction($conn);
// Eliminar en orden correcto (por las foreign keys)
$sql1 = "DELETE FROM pedimento_partidas";
$sql2 = "DELETE FROM pedimento_facturas";
$sql3 = "DELETE FROM pedimentos";
$sql4 = "DELETE FROM importacion_logs";
$stmt1 = sqlsrv_query($conn, $sql1);
$stmt2 = sqlsrv_query($conn, $sql2);
$stmt3 = sqlsrv_query($conn, $sql3);
$stmt4 = sqlsrv_query($conn, $sql4);
if ($stmt1 && $stmt2 && $stmt3 && $stmt4) {
// Resetear los IDENTITY
sqlsrv_query($conn, "DBCC CHECKIDENT ('pedimentos', RESEED, 0)");
sqlsrv_query($conn, "DBCC CHECKIDENT ('pedimento_facturas', RESEED, 0)");
sqlsrv_query($conn, "DBCC CHECKIDENT ('pedimento_partidas', RESEED, 0)");
sqlsrv_query($conn, "DBCC CHECKIDENT ('importacion_logs', RESEED, 0)");
sqlsrv_commit($conn);
echo json_encode([
'success' => true,
'message' => 'Base de datos limpiada exitosamente',
'timestamp' => date('Y-m-d H:i:s'),
'usuario_id' => $_SESSION['usuario_id']
]);
} else {
sqlsrv_rollback($conn);
echo json_encode([
'success' => false,
'message' => 'Error al limpiar la base de datos',
'errors' => sqlsrv_errors()
]);
}
sqlsrv_close($conn);
} catch (Exception $e) {
echo json_encode([
'success' => false,
'error' => $e->getMessage()
]);
}
?>