Actualizar automatizaciones.html

This commit is contained in:
2026-02-14 11:13:32 +00:00
parent 76c5bab9ef
commit 3d2a46810b

View File

@@ -43,88 +43,109 @@
</div> </div>
<div id="importModal" class="fixed inset-0 bg-slate-900/60 hidden z-[100] flex items-center justify-center backdrop-blur-md p-4"> <div id="importModal" class="fixed inset-0 bg-slate-900/60 hidden z-[100] flex items-center justify-center backdrop-blur-md p-4">
<div class="bg-white rounded-3xl shadow-2xl w-full max-w-4xl flex flex-col max-h-[95vh] overflow-hidden border border-slate-200"> <div class="bg-white rounded-[2rem] shadow-2xl w-full max-w-4xl flex flex-col max-h-[92vh] overflow-hidden border border-slate-200 fade-in">
<div class="px-6 py-4 border-b flex justify-between items-center bg-slate-50">
<h3 class="text-lg font-black text-slate-800 flex items-center gap-2"> <div class="px-8 py-4 bg-slate-50 border-b flex justify-between items-center">
<i data-lucide="check-square" class="text-emerald-500 w-5 h-5"></i> Validar Datos de Importación <div class="flex items-center gap-6">
</h3> <div class="flex flex-col">
<button onclick="closeModal()" class="p-1.5 hover:bg-red-50 hover:text-red-500 rounded-full transition-all"><i data-lucide="x" class="w-5 h-5"></i></button> <span class="text-[10px] font-black text-slate-400 uppercase tracking-widest">Referencia</span>
<input type="text" id="impRef" readonly class="bg-transparent border-none p-0 text-sm font-black text-slate-700 outline-none focus:ring-0 w-24">
</div>
<div class="h-8 w-px bg-slate-200"></div>
<div class="flex flex-col">
<span class="text-[10px] font-black text-slate-400 uppercase tracking-widest">Compañía de Origen</span>
<input type="text" id="impCompany" readonly class="bg-transparent border-none p-0 text-sm font-black text-blue-600 outline-none focus:ring-0 w-64 truncate">
</div>
</div>
<button onclick="closeModal()" class="bg-white p-2 rounded-full shadow-sm hover:bg-red-50 hover:text-red-500 transition-all border border-slate-100">
<i data-lucide="x" class="w-5 h-5"></i>
</button>
</div> </div>
<form id="importForm" onsubmit="handleFinalImport(event)" class="p-6 space-y-4 overflow-y-auto no-scrollbar"> <form id="importForm" onsubmit="handleFinalImport(event)" class="p-8 space-y-6 overflow-y-auto no-scrollbar">
<input type="hidden" id="impScrapedId"> <input type="hidden" id="impScrapedId">
<div class="grid grid-cols-1 md:grid-cols-4 gap-4 bg-slate-50/50 p-4 rounded-2xl border border-slate-100"> <div class="grid grid-cols-1 md:grid-cols-2 gap-8">
<div class="md:col-span-3 space-y-1"> <div class="space-y-1">
<label class="text-[9px] font-black text-slate-400 uppercase tracking-widest ml-1">Nombre Cliente</label> <label class="text-[10px] font-black text-slate-400 uppercase tracking-widest ml-1">Titular del Seguro</label>
<input type="text" id="impName" required class="w-full border border-slate-200 bg-white px-3 py-2 rounded-xl text-sm font-bold shadow-sm outline-none focus:border-blue-500"> <div class="flex items-center gap-3 bg-slate-50 p-3 rounded-2xl border border-slate-100">
<i data-lucide="user" class="w-4 h-4 text-slate-400"></i>
<input type="text" id="impName" readonly class="bg-transparent border-none p-0 text-sm font-bold text-slate-600 w-full outline-none focus:ring-0">
</div>
</div> </div>
<div class="space-y-1"> <div class="space-y-1">
<label class="text-[9px] font-black text-slate-400 uppercase tracking-widest ml-1">Teléfono</label> <label class="text-[10px] font-black text-slate-400 uppercase tracking-widest ml-1">Teléfono de Contacto</label>
<input type="text" id="impPhone" required class="w-full border border-slate-200 bg-white px-3 py-2 rounded-xl text-sm font-black text-blue-600 shadow-sm outline-none"> <div class="flex items-center gap-3 bg-slate-50 p-3 rounded-2xl border border-slate-100">
</div> <i data-lucide="phone" class="w-4 h-4 text-emerald-500"></i>
<div class="md:col-span-3 space-y-1"> <input type="text" id="impPhone" readonly class="bg-transparent border-none p-0 text-sm font-black text-emerald-700 w-full outline-none focus:ring-0">
<label class="text-[9px] font-black text-slate-400 uppercase tracking-widest ml-1">Dirección + Población</label> </div>
<input type="text" id="impAddress" required class="w-full border border-slate-200 bg-white px-3 py-2 rounded-xl text-sm font-medium shadow-sm outline-none">
</div>
<div class="space-y-1">
<label class="text-[9px] font-black text-slate-400 uppercase tracking-widest ml-1">Código Postal</label>
<input type="text" id="impCP" required class="w-full border border-slate-200 bg-white px-3 py-2 rounded-xl text-sm font-black text-center shadow-sm outline-none">
</div> </div>
</div> </div>
<div class="grid grid-cols-1 md:grid-cols-2 gap-4 p-4 rounded-2xl border border-blue-100 bg-blue-50/30"> <div class="grid grid-cols-1 md:grid-cols-4 gap-4">
<div class="md:col-span-3 space-y-1">
<label class="text-[10px] font-black text-blue-600 uppercase tracking-widest ml-1 flex items-center gap-2">
Dirección y Población <i data-lucide="edit-2" class="w-3 h-3"></i>
</label>
<div class="relative group">
<i data-lucide="map-pin" class="w-4 h-4 absolute left-4 top-3.5 text-slate-400 group-focus-within:text-blue-500 transition-colors"></i>
<input type="text" id="impAddress" required class="w-full border-2 border-slate-100 bg-white pl-11 pr-4 py-3 rounded-2xl text-sm font-medium outline-none focus:border-blue-500 transition-all shadow-sm">
</div>
</div>
<div class="space-y-1"> <div class="space-y-1">
<label class="text-[9px] font-black text-blue-600 uppercase tracking-widest ml-1">Gremio (OBLIGATORIO) *</label> <label class="text-[10px] font-black text-blue-600 uppercase tracking-widest ml-1 flex items-center gap-2">
<select id="impGuild" required onchange="loadOpsForGuild(this.value)" class="w-full border border-blue-200 bg-white px-3 py-2 rounded-xl text-sm font-bold shadow-sm outline-none focus:ring-2 focus:ring-blue-500"> C.P. <i data-lucide="edit-2" class="w-3 h-3"></i>
</label>
<input type="text" id="impCP" required class="w-full border-2 border-slate-100 bg-white p-3 rounded-2xl text-sm font-black text-center outline-none focus:border-blue-500 transition-all shadow-sm">
</div>
</div>
<div class="grid grid-cols-1 md:grid-cols-2 gap-6 p-6 rounded-[1.5rem] border-2 border-blue-50 bg-blue-50/20 shadow-inner">
<div class="space-y-1">
<label class="text-[10px] font-black text-blue-600 uppercase tracking-widest ml-1">Gremio Especialista *</label>
<select id="impGuild" required onchange="loadOpsForGuild(this.value)" class="w-full border-2 border-white bg-white p-3 rounded-xl text-sm font-bold shadow-sm outline-none focus:ring-2 focus:ring-blue-500 transition-all">
<option value="">-- Seleccionar Gremio --</option> <option value="">-- Seleccionar Gremio --</option>
</select> </select>
</div> </div>
<div class="space-y-1"> <div class="space-y-1">
<label class="text-[9px] font-black text-blue-600 uppercase tracking-widest ml-1">Asignación de Operario</label> <label class="text-[10px] font-black text-slate-400 uppercase tracking-widest ml-1">Asignación Operario</label>
<select id="impOperator" class="w-full border border-blue-200 bg-white px-3 py-2 rounded-xl text-sm font-bold shadow-sm outline-none focus:ring-2 focus:ring-blue-500"> <select id="impOperator" class="w-full border-2 border-white bg-white p-3 rounded-xl text-sm font-bold shadow-sm outline-none focus:ring-2 focus:ring-blue-500 transition-all">
<option value="">-- Automática (Por defecto) --</option> <option value="">-- Automática (Por defecto) --</option>
</select> </select>
</div> </div>
</div> </div>
<div class="space-y-1"> <div class="space-y-4">
<label class="text-[9px] font-black text-slate-400 uppercase tracking-widest ml-1">Descripción de Avería</label>
<textarea id="impDesc" rows="2" class="w-full border border-slate-200 p-3 rounded-xl text-sm focus:border-blue-500 outline-none resize-none shadow-sm font-medium text-slate-600"></textarea>
</div>
<div class="grid grid-cols-1 md:grid-cols-2 gap-4">
<div class="space-y-1"> <div class="space-y-1">
<label class="text-[9px] font-black text-amber-600 uppercase tracking-widest ml-1">Notas Internas</label> <label class="text-[10px] font-black text-slate-400 uppercase tracking-widest ml-1">Detalle de la Avería</label>
<textarea id="impNotesInt" rows="1" class="w-full border border-amber-100 bg-amber-50/20 p-2 rounded-xl text-xs outline-none focus:border-amber-400 transition-all"></textarea> <textarea id="impDesc" rows="3" class="w-full border-2 border-slate-100 bg-slate-50/50 p-4 rounded-2xl text-sm focus:border-blue-500 focus:bg-white outline-none transition-all resize-none shadow-sm"></textarea>
</div> </div>
<div class="space-y-1">
<label class="text-[9px] font-black text-blue-600 uppercase tracking-widest ml-1">Notas Cliente</label> <div class="grid grid-cols-1 md:grid-cols-2 gap-4">
<textarea id="impNotesExt" rows="1" class="w-full border border-blue-100 bg-blue-50/20 p-2 rounded-xl text-xs outline-none focus:border-blue-400 transition-all"></textarea> <div class="space-y-1">
<label class="text-[10px] font-black text-amber-600 uppercase tracking-widest ml-1">Notas Internas de Oficina</label>
<textarea id="impNotesInt" rows="2" class="w-full border border-amber-100 bg-amber-50/30 p-3 rounded-xl text-xs outline-none focus:border-amber-400 transition-all"></textarea>
</div>
<div class="space-y-1">
<label class="text-[10px] font-black text-blue-600 uppercase tracking-widest ml-1">Notas para el Operario/Cliente</label>
<textarea id="impNotesExt" rows="2" class="w-full border border-blue-100 bg-blue-50/30 p-3 rounded-xl text-xs outline-none focus:border-blue-400 transition-all"></textarea>
</div>
</div> </div>
</div> </div>
<div class="flex flex-wrap md:flex-nowrap items-center gap-4 border-t pt-4"> <div class="flex items-center justify-between border-t pt-6">
<div class="flex-1 flex gap-4"> <div class="flex items-center gap-4">
<div class="space-y-1"> <div class="flex flex-col">
<label class="text-[8px] font-black text-slate-400 uppercase">Referencia</label> <span class="text-[9px] font-black text-slate-400 uppercase">Prioridad</span>
<input type="text" id="impRef" readonly class="w-24 bg-slate-100 p-1.5 rounded-lg text-[10px] font-bold text-center border-none text-slate-500"> <select id="impUrgent" class="border-none bg-transparent text-xs font-black text-slate-700 focus:ring-0 p-0">
</div> <option value="false">BAJA (Normal)</option>
<div class="space-y-1"> <option value="true">🚨 MUY URGENTE</option>
<label class="text-[8px] font-black text-slate-400 uppercase">Compañía</label>
<input type="text" id="impCompany" readonly class="w-32 bg-slate-100 p-1.5 rounded-lg text-[10px] font-black text-center border-none text-blue-700 truncate">
</div>
<div class="space-y-1">
<label class="text-[8px] font-black text-slate-400 uppercase">Prioridad</label>
<select id="impUrgent" class="w-24 bg-slate-100 p-1.5 rounded-lg text-[10px] font-black text-center border-none">
<option value="false">Normal</option>
<option value="true">🚨 URGENTE</option>
</select> </select>
</div> </div>
</div> </div>
<button type="submit" class="flex-none bg-emerald-600 hover:bg-emerald-700 text-white font-black px-8 py-3 rounded-2xl shadow-lg transition-all flex items-center gap-2 active:scale-95 text-sm uppercase tracking-tighter"> <button type="submit" class="bg-emerald-600 hover:bg-emerald-700 text-white font-black px-12 py-4 rounded-2xl shadow-xl shadow-emerald-100 transition-all flex items-center gap-3 active:scale-95 text-sm uppercase tracking-widest">
<i data-lucide="send" class="w-4 h-4"></i> TRASPASAR A CRM <i data-lucide="send" class="w-5 h-5"></i> Confirmar e Importar
</button> </button>
</div> </div>
</form> </form>