feat(mi-dia): captura rapida arriba de actividades, filtro admin por vendedor, hora en notas, orden Intento->Contactado y kanban de oportunidades alineado

This commit is contained in:
2026-09-25 09:21:23 +00:00
parent 8a2584438d
commit 8a5db114ec
5 changed files with 113 additions and 36 deletions

View File

@@ -13,7 +13,7 @@
export const VOCABULARIO = {
// Estados de la columna status del board Leads: ESTADOS_LEAD_PERMITIDOS del
// API + NUEVO (captura) y DESCARTADO (terminal)
FASES_LEAD: ['NUEVO', 'CONTACTADO', 'Intento de contacto', 'INTERESADO', 'AGENDA CITA', 'CALIFICADO', 'DESCARTADO'],
FASES_LEAD: ['NUEVO', 'Intento de contacto', 'CONTACTADO', 'INTERESADO', 'AGENDA CITA', 'CALIFICADO', 'DESCARTADO'],
// Etapas del funnel de Oportunidades (labels REALES de la columna status 'Estado')
FASES_OPORTUNIDAD: ['Agendo Cita', 'Afluencia', 'Cotizador', 'Aparto', 'No Asistio', 'Abandono'],
// Fases del pipeline Enkontrol del tablero Apartado (labels REALES de la

View File

@@ -85,6 +85,8 @@ export interface ActividadMiDia {
tipo: string
fecha: string
estado: string
/** Captura (lead/oportunidad/apartado) a la que pertenece la actividad; null si no está ligada */
leadCapturaId: string | null
}
export interface ApartadoPorVencer {
@@ -450,6 +452,7 @@ export function resumenMiDiaLocal(
tipo: a.tipo,
fecha: a.fechaVencimiento ? a.fechaVencimiento.toISOString().slice(0, 10) : '',
estado: a.estado,
leadCapturaId: a.leadCapturaId,
}))
const todasMisActividades: ActividadMiDia[] = actividadesAbiertasOrdenadas
const misActividadesHoy: ActividadMiDia[] = actividadesAbiertasOrdenadas