diff --git a/contabilidad.html b/contabilidad.html
index 56e0987..7e9d80d 100644
--- a/contabilidad.html
+++ b/contabilidad.html
@@ -471,7 +471,7 @@
} catch(e) {}
}
- function renderBudgets() {
+ function renderBudgets() {
const list = document.getElementById('budgetsList');
list.innerHTML = "";
if(myBudgets.length === 0) { list.innerHTML = `
Sin presupuestos
`; return; }
@@ -480,10 +480,21 @@
const date = new Date(b.created_at).toLocaleDateString('es-ES');
let bStatus = '';
+ // Comprobamos si nos viene el estado del servicio como anulado desde el backend
+ let isAnulado = b.linked_service_status_name && b.linked_service_status_name.toLowerCase().includes('anulado');
+
if(b.status === 'pending') bStatus = ` Pte. Resolver`;
- if(b.status === 'rejected') bStatus = ` Rechazado`;
- if(b.status === 'accepted') bStatus = ` Aceptado`;
- if(b.status === 'converted') bStatus = ` Es Servicio`;
+ else if(b.status === 'rejected') bStatus = ` Rechazado`;
+ else if(b.status === 'accepted') bStatus = ` Aceptado`;
+ else if(b.status === 'converted') {
+ if (isAnulado) {
+ bStatus = ` Servicio Anulado`;
+ } else {
+ // Si está convertido y NO está anulado, mostramos el estado real del panel operativo
+ const sName = b.linked_service_status_name || 'En gestión';
+ bStatus = ` ${sName}`;
+ }
+ }
let actions = '';
if(b.status === 'pending') {
@@ -494,12 +505,16 @@
} else if(b.status === 'accepted') {
actions = ``;
}
- actions += ``;
+
+ // La papelera de borrar se muestra siempre, y le pasamos a la función si está anulado
+ actions += ``;
list.innerHTML += `
-
${b.client_name}
+
+ #PRE-${b.id} ${b.client_name}
+
${date} - 📞 ${b.client_phone}