Actualizar servicios2.html

This commit is contained in:
2026-03-22 16:00:28 +00:00
parent 8d48098b93
commit 64bbc69a13

View File

@@ -317,17 +317,19 @@
<hr class="border-slate-200 mb-4">
<div class="flex justify-between items-center mb-2">
<p class="text-[9px] font-black text-slate-400 uppercase tracking-widest flex items-center gap-1.5"><i data-lucide="sparkles" class="w-3 h-3 text-amber-500"></i> Avería (Limpiada por IA)</p>
<div class="flex items-center gap-2">
<label class="text-[9px] font-black text-slate-400 uppercase tracking-widest">Prioridad:</label>
<select id="editUrgent" class="input-readonly text-xs font-black bg-transparent border-none text-slate-700 outline-none cursor-pointer" disabled>
<div class="grid grid-cols-2 gap-4 mb-4">
<div>
<p class="text-[9px] font-black text-slate-400 uppercase tracking-widest flex items-center gap-1.5 mb-1.5"><i data-lucide="sparkles" class="w-3 h-3 text-amber-500"></i> Avería (Limpiada por IA)</p>
</div>
<div class="text-right">
<label class="text-[9px] font-black text-slate-400 uppercase tracking-widest mb-1.5 block mr-1">Prioridad</label>
<select id="editUrgent" class="input-readonly text-xs font-black bg-slate-50 border border-slate-200 text-slate-700 outline-none cursor-pointer py-1.5 px-3 rounded-lg shadow-sm" disabled>
<option value="false">Normal</option>
<option value="true" class="text-red-600">🚨 Urgente</option>
<option value="true" class="text-red-600 font-bold">🚨 Urgente</option>
</select>
</div>
</div>
<div class="pb-2">
<div class="pb-2 mt-[-10px]">
<textarea id="editDesc" rows="6" class="w-full bg-white border border-slate-200 p-4 rounded-xl text-sm font-medium text-slate-800 leading-relaxed outline-none overflow-y-auto" readonly></textarea>
</div>
</div>
@@ -878,13 +880,22 @@
const fullAddr = `${raw["Dirección"] || ""} ${raw["Población"] || ""}`.trim();
if(document.getElementById('editAddr')) document.getElementById('editAddr').value = fullAddr;
// Usamos la IA limpiadora para el modal también, o dejamos el original si se prefiere ver todo. Aquí usaremos la versión limpia para facilitar lectura.
const descContent = limpiarPaja(raw["Descripción"] || raw["DESCRIPCION"] || "Sin notas.");
if(document.getElementById('editDesc')) document.getElementById('editDesc').value = descContent;
// 🛑 NUEVO: Cargar el selector de Urgencia
const isUrgent = s.is_urgent === true || (raw['Urgente'] && String(raw['Urgente']).toLowerCase() === 'sí') || (raw['URGENTE'] && String(raw['URGENTE']).toLowerCase() === 'si');
if(document.getElementById('editUrgent')) document.getElementById('editUrgent').value = isUrgent ? "true" : "false";
const urgentSelect = document.getElementById('editUrgent');
if(urgentSelect) {
urgentSelect.value = isUrgent ? "true" : "false";
if(isUrgent) {
urgentSelect.classList.remove('bg-slate-50', 'border-slate-200');
urgentSelect.classList.add('bg-red-50', 'border-red-200', 'text-red-700');
} else {
urgentSelect.classList.add('bg-slate-50', 'border-slate-200');
urgentSelect.classList.remove('bg-red-50', 'border-red-200', 'text-red-700');
}
}
// Lógica de paneles
const dbStat = raw.status_operativo;
@@ -940,7 +951,10 @@
const el = document.getElementById(id);
if(el) {
el.readOnly = false;
if (el.tagName === 'SELECT') el.disabled = false; // Desbloqueamos el selector
if (el.tagName === 'SELECT') {
el.disabled = false; // Desbloqueamos el selector
el.classList.remove('bg-transparent', 'bg-slate-50', 'bg-red-50', 'border-none');
}
el.classList.add('input-editable');
el.classList.remove('input-readonly');
}
@@ -955,7 +969,11 @@
const el = document.getElementById(id);
if(el) {
el.readOnly = true;
if (el.tagName === 'SELECT') el.disabled = true; // Bloqueamos el selector
if (el.tagName === 'SELECT') {
el.disabled = true; // Bloqueamos el selector
if(el.value === "true") el.classList.add('bg-red-50', 'border-red-200', 'text-red-700');
else el.classList.add('bg-slate-50', 'border-slate-200');
}
el.classList.add('input-readonly');
el.classList.remove('input-editable');
}