fix(xml-rb-systems): mostrar toast de sesión expirada en error 401
Detecta respuestas 401 en los 4 métodos XML RB Systems (impo-temp, impo-def, impo, expo) y lanza un mensaje claro en lugar del error genérico de generación. Además elimina entry_port/exit_port del tipo de request de exportación. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -174,6 +174,7 @@ export const reportsTransmissionApi = {
|
||||
body: JSON.stringify(request)
|
||||
});
|
||||
if (!response.ok) {
|
||||
if (response.status === 401) throw new Error('Sesión expirada. Por favor recarga la página e inicia sesión nuevamente.');
|
||||
let errorMessage = 'Error al generar XML RB Systems (importación temporal)';
|
||||
try { errorMessage = (await response.json()).detail || errorMessage; } catch (e) {}
|
||||
throw new Error(errorMessage);
|
||||
@@ -190,6 +191,7 @@ export const reportsTransmissionApi = {
|
||||
body: JSON.stringify(request)
|
||||
});
|
||||
if (!response.ok) {
|
||||
if (response.status === 401) throw new Error('Sesión expirada. Por favor recarga la página e inicia sesión nuevamente.');
|
||||
let errorMessage = 'Error al generar XML RB Systems (importación definitiva)';
|
||||
try { errorMessage = (await response.json()).detail || errorMessage; } catch (e) {}
|
||||
throw new Error(errorMessage);
|
||||
@@ -206,6 +208,7 @@ export const reportsTransmissionApi = {
|
||||
body: JSON.stringify(request)
|
||||
});
|
||||
if (!response.ok) {
|
||||
if (response.status === 401) throw new Error('Sesión expirada. Por favor recarga la página e inicia sesión nuevamente.');
|
||||
let errorMessage = 'Error al generar XML RB Systems (importación)';
|
||||
try { errorMessage = (await response.json()).detail || errorMessage; } catch (e) {}
|
||||
throw new Error(errorMessage);
|
||||
@@ -213,7 +216,7 @@ export const reportsTransmissionApi = {
|
||||
return await response.json();
|
||||
},
|
||||
|
||||
triggerXmlRbSystemsExpo: async (request: { manifest_numbers: string[]; entry_port?: string; exit_port?: string; include_emanifest?: boolean }) => {
|
||||
triggerXmlRbSystemsExpo: async (request: { manifest_numbers: string[]; include_emanifest?: boolean }) => {
|
||||
const endpoint = `${BASE_URL}/v1/a76/reports/xml-rb-systems/exportacion/generate`;
|
||||
const token = localStorage.getItem('access_token');
|
||||
const response = await fetch(endpoint, {
|
||||
@@ -222,6 +225,7 @@ export const reportsTransmissionApi = {
|
||||
body: JSON.stringify(request)
|
||||
});
|
||||
if (!response.ok) {
|
||||
if (response.status === 401) throw new Error('Sesión expirada. Por favor recarga la página e inicia sesión nuevamente.');
|
||||
let errorMessage = 'Error al generar XML RB Systems (exportación)';
|
||||
try { errorMessage = (await response.json()).detail || errorMessage; } catch (e) {}
|
||||
throw new Error(errorMessage);
|
||||
|
||||
Reference in New Issue
Block a user