Actualizar servicios2.html
This commit is contained in:
@@ -317,17 +317,19 @@
|
|||||||
|
|
||||||
<hr class="border-slate-200 mb-4">
|
<hr class="border-slate-200 mb-4">
|
||||||
|
|
||||||
<div class="flex justify-between items-center mb-2">
|
<div class="grid grid-cols-2 gap-4 mb-4">
|
||||||
<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>
|
||||||
<div class="flex items-center gap-2">
|
<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>
|
||||||
<label class="text-[9px] font-black text-slate-400 uppercase tracking-widest">Prioridad:</label>
|
</div>
|
||||||
<select id="editUrgent" class="input-readonly text-xs font-black bg-transparent border-none text-slate-700 outline-none cursor-pointer" disabled>
|
<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="false">Normal</option>
|
||||||
<option value="true" class="text-red-600">🚨 Urgente</option>
|
<option value="true" class="text-red-600 font-bold">🚨 Urgente</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</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>
|
<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>
|
||||||
</div>
|
</div>
|
||||||
@@ -878,13 +880,22 @@
|
|||||||
const fullAddr = `${raw["Dirección"] || ""} ${raw["Población"] || ""}`.trim();
|
const fullAddr = `${raw["Dirección"] || ""} ${raw["Población"] || ""}`.trim();
|
||||||
if(document.getElementById('editAddr')) document.getElementById('editAddr').value = fullAddr;
|
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.");
|
const descContent = limpiarPaja(raw["Descripción"] || raw["DESCRIPCION"] || "Sin notas.");
|
||||||
if(document.getElementById('editDesc')) document.getElementById('editDesc').value = descContent;
|
if(document.getElementById('editDesc')) document.getElementById('editDesc').value = descContent;
|
||||||
|
|
||||||
// 🛑 NUEVO: Cargar el selector de Urgencia
|
// 🛑 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');
|
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
|
// Lógica de paneles
|
||||||
const dbStat = raw.status_operativo;
|
const dbStat = raw.status_operativo;
|
||||||
@@ -940,7 +951,10 @@
|
|||||||
const el = document.getElementById(id);
|
const el = document.getElementById(id);
|
||||||
if(el) {
|
if(el) {
|
||||||
el.readOnly = false;
|
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.add('input-editable');
|
||||||
el.classList.remove('input-readonly');
|
el.classList.remove('input-readonly');
|
||||||
}
|
}
|
||||||
@@ -955,7 +969,11 @@
|
|||||||
const el = document.getElementById(id);
|
const el = document.getElementById(id);
|
||||||
if(el) {
|
if(el) {
|
||||||
el.readOnly = true;
|
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.add('input-readonly');
|
||||||
el.classList.remove('input-editable');
|
el.classList.remove('input-editable');
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user