feat(8-mejoras): cancelar+motivo, brocker, etapas, calendario, modal cliente
1. Cancelar con motivo: Mis apartados y Escrituración piden motivo (modal reutilizado) 2. Origen BROCKER agregado en alta afluencia y captura rápida 3. Etapas oportunidades reordenadas: Agendo Cita → Afluencia → Cotizador 4. Cotizador: mensualidades diferibles (6, 12, 14, 18, 24 meses) 5. Calendario semanal por vendedor en Mi día 6. Hora en citas (datetime-local en vez de solo fecha) 7. Click en nombre → modal DetalleLeadModal (info + notas + historial)
This commit is contained in:
@@ -71,6 +71,8 @@ export default function CotizadorPage() {
|
||||
propuestaIndex,
|
||||
setPropuestaIndex,
|
||||
precioLista,
|
||||
numMensualidades,
|
||||
setNumMensualidades,
|
||||
numMeses,
|
||||
propuestas,
|
||||
restaurar,
|
||||
@@ -465,6 +467,33 @@ export default function CotizadorPage() {
|
||||
)}
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label htmlFor="mensualidades" className={etiquetaCampo}>
|
||||
Mensualidades
|
||||
</label>
|
||||
<select
|
||||
id="mensualidades"
|
||||
value={numMensualidades ?? ''}
|
||||
onChange={(e) => {
|
||||
const v = e.target.value
|
||||
setNumMensualidades(v === '' ? null : Number(v))
|
||||
}}
|
||||
className={campoInput}
|
||||
>
|
||||
<option value="">Calcular automáticamente</option>
|
||||
{[6, 12, 14, 18, 24].map((n) => (
|
||||
<option key={n} value={n}>
|
||||
{n} mensualidades
|
||||
</option>
|
||||
))}
|
||||
</select>
|
||||
{numMeses !== null && (
|
||||
<p className="mt-1 text-xs text-[#64748B] dark:text-[#94A3B8]">
|
||||
Se usarán {numMeses} mensualidades para el cálculo
|
||||
</p>
|
||||
)}
|
||||
</div>
|
||||
|
||||
<BuscadorCliente
|
||||
onSeleccion={(lead) => {
|
||||
setValue('nombre', lead.nombre, { shouldValidate: true })
|
||||
|
||||
Reference in New Issue
Block a user