fix(escrituracion): usar todosApartados para que aparezcan los terminales
- ResumenMiDia ahora incluye 'todosApartados' (todos los apartados incluyendo terminales como Firma Cliente, Escriturado, etc.) - Escrituración filtra sobre 'todosApartados' en vez de 'misApartados' - Sin esto, Firma Cliente era terminal → se excluía de misApartados → la pestaña Escrituración no lo encontraba
This commit is contained in:
@@ -143,6 +143,8 @@ export interface ResumenMiDia {
|
|||||||
misOportunidades: { porEtapa: Record<string, number>; items: OportunidadMiDia[] }
|
misOportunidades: { porEtapa: Record<string, number>; items: OportunidadMiDia[] }
|
||||||
/** MIS apartados (Vendedor = yo), en estados no finales del pipeline Enkontrol */
|
/** MIS apartados (Vendedor = yo), en estados no finales del pipeline Enkontrol */
|
||||||
misApartados: ApartadoMiDia[]
|
misApartados: ApartadoMiDia[]
|
||||||
|
/** Todos los apartados incluyendo terminales (para Escrituración) */
|
||||||
|
todosApartados: ApartadoMiDia[]
|
||||||
conteos: {
|
conteos: {
|
||||||
leadsNuevosSemana: number // míos, últimos 7 días naturales
|
leadsNuevosSemana: number // míos, últimos 7 días naturales
|
||||||
actividadesAbiertas: number // mías, Estado Abierto
|
actividadesAbiertas: number // mías, Estado Abierto
|
||||||
@@ -367,6 +369,18 @@ export async function resumenMiDia(
|
|||||||
|
|
||||||
// "Mis apartados": Vendedor = yo, estado no final del pipeline Enkontrol,
|
// "Mis apartados": Vendedor = yo, estado no final del pipeline Enkontrol,
|
||||||
// por fecha límite ascendente (sin fecha al final)
|
// por fecha límite ascendente (sin fecha al final)
|
||||||
|
// Todos los apartados incluyendo terminales (para pestaña Escrituración)
|
||||||
|
const todosApartados: ApartadoMiDia[] = miosApartados
|
||||||
|
.map((a) => ({
|
||||||
|
id: a.id,
|
||||||
|
nombre: a.nombre,
|
||||||
|
unidadCodigo: a.unidadCodigo,
|
||||||
|
estado: a.estado,
|
||||||
|
fechaLimite: a.fechaLimite,
|
||||||
|
ultimoCambio: null as { fechaISO: string; usuario: string | null; detalle: string } | null,
|
||||||
|
pendienteSync: a.pendienteSync,
|
||||||
|
}))
|
||||||
|
|
||||||
const misApartados: ApartadoMiDia[] = miosApartados
|
const misApartados: ApartadoMiDia[] = miosApartados
|
||||||
.map((a) => {
|
.map((a) => {
|
||||||
const cambio = cambiosApartados.get(a.id)
|
const cambio = cambiosApartados.get(a.id)
|
||||||
@@ -486,6 +500,7 @@ export async function resumenMiDia(
|
|||||||
apartadosPorVencer,
|
apartadosPorVencer,
|
||||||
misOportunidades: { porEtapa, items: itemsOportunidades },
|
misOportunidades: { porEtapa, items: itemsOportunidades },
|
||||||
misApartados,
|
misApartados,
|
||||||
|
todosApartados,
|
||||||
conteos,
|
conteos,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -93,6 +93,7 @@ export interface ResumenMiDia {
|
|||||||
apartadosPorVencer: ApartadoPorVencer[]
|
apartadosPorVencer: ApartadoPorVencer[]
|
||||||
misOportunidades: { porEtapa: Record<string, number>; items: OportunidadMiDia[] } // conteo + lista de trabajo
|
misOportunidades: { porEtapa: Record<string, number>; items: OportunidadMiDia[] } // conteo + lista de trabajo
|
||||||
misApartados: ApartadoMiDia[]
|
misApartados: ApartadoMiDia[]
|
||||||
|
todosApartados: ApartadoMiDia[]
|
||||||
conteos: {
|
conteos: {
|
||||||
leadsNuevosSemana: number
|
leadsNuevosSemana: number
|
||||||
actividadesAbiertas: number
|
actividadesAbiertas: number
|
||||||
|
|||||||
@@ -1221,7 +1221,7 @@ export default function MiDiaPage({ accionesSesion }: { accionesSesion: Acciones
|
|||||||
{(() => {
|
{(() => {
|
||||||
// Filtrar: solo apartados en fases de escrituración o Firma Cliente
|
// Filtrar: solo apartados en fases de escrituración o Firma Cliente
|
||||||
const FASES_ESCRITURACION_SET = new Set(['SEGUIMIENTO', 'LLAMADA ESCRITURAS', 'X ESCRITURAR', 'BANCO/INFONAVIT', 'X AUTORIZAR', 'ESCRITURADO', 'CANCELO', 'FIRMA CLIENTE', 'ALTA ENKONTROL'])
|
const FASES_ESCRITURACION_SET = new Set(['SEGUIMIENTO', 'LLAMADA ESCRITURAS', 'X ESCRITURAR', 'BANCO/INFONAVIT', 'X AUTORIZAR', 'ESCRITURADO', 'CANCELO', 'FIRMA CLIENTE', 'ALTA ENKONTROL'])
|
||||||
const apartadosEscrituracion = resumen.misApartados.filter((a) => {
|
const apartadosEscrituracion = (resumen.todosApartados || resumen.misApartados).filter((a) => {
|
||||||
const e = (a.estado ?? '').toUpperCase()
|
const e = (a.estado ?? '').toUpperCase()
|
||||||
return FASES_ESCRITURACION_SET.has(e) || e.includes('SEGUIMIENTO') || e.includes('LLAMADA') || e.includes('ESCRITUR') || e.includes('BANCO') || e.includes('AUTORIZAR') || e.includes('CANCELO') || e.includes('FIRMA')
|
return FASES_ESCRITURACION_SET.has(e) || e.includes('SEGUIMIENTO') || e.includes('LLAMADA') || e.includes('ESCRITUR') || e.includes('BANCO') || e.includes('AUTORIZAR') || e.includes('CANCELO') || e.includes('FIRMA')
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user