fix(escrituracion): fases reordenadas según solicitud
- Fases: Venta → Seguimiento → Integración → X Autorizar → Autorizado → X Escriturar → Escriturado → Titulado → Cancelo - Kanban y botones actualizados con el nuevo orden - obtenerColumnaEscrituracion actualizado - Backend FASES_APARTADO_PERMITIDAS actualizado
This commit is contained in:
@@ -31,11 +31,13 @@ export const ESTADOS_FINALES_APARTADO = [
|
|||||||
'FORMALIZADO',
|
'FORMALIZADO',
|
||||||
'CANCELO',
|
'CANCELO',
|
||||||
'FIRMA CLIENTE',
|
'FIRMA CLIENTE',
|
||||||
|
'VENTA',
|
||||||
'SEGUIMIENTO',
|
'SEGUIMIENTO',
|
||||||
'LLAMADA ESCRITURAS',
|
'INTEGRACION',
|
||||||
'X ESCRITURAR',
|
|
||||||
'BANCO/INFONAVIT',
|
|
||||||
'X AUTORIZAR',
|
'X AUTORIZAR',
|
||||||
|
'AUTORIZADO',
|
||||||
|
'X ESCRITURAR',
|
||||||
|
'TITULADO',
|
||||||
]
|
]
|
||||||
|
|
||||||
const ROLES_CON_EQUIPO = ['coordinador', 'corporativo', 'admin']
|
const ROLES_CON_EQUIPO = ['coordinador', 'corporativo', 'admin']
|
||||||
|
|||||||
@@ -193,23 +193,27 @@ export const ETIQUETA_FASE_APARTADO: Record<FaseApartado, string> = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export const FASES_ESCRITURACION = [
|
export const FASES_ESCRITURACION = [
|
||||||
|
'Venta',
|
||||||
'Seguimiento',
|
'Seguimiento',
|
||||||
'Llamada Escrituras',
|
'Integracion',
|
||||||
'X Escriturar',
|
|
||||||
'Banco/Infonavit',
|
|
||||||
'X Autorizar',
|
'X Autorizar',
|
||||||
|
'Autorizado',
|
||||||
|
'X Escriturar',
|
||||||
'Escriturado',
|
'Escriturado',
|
||||||
|
'Titulado',
|
||||||
'Cancelo',
|
'Cancelo',
|
||||||
] as const
|
] as const
|
||||||
export type FaseEscrituracion = (typeof FASES_ESCRITURACION)[number]
|
export type FaseEscrituracion = (typeof FASES_ESCRITURACION)[number]
|
||||||
|
|
||||||
export const ETIQUETA_FASE_ESCRITURACION: Record<FaseEscrituracion, string> = {
|
export const ETIQUETA_FASE_ESCRITURACION: Record<FaseEscrituracion, string> = {
|
||||||
|
'Venta': 'Venta',
|
||||||
'Seguimiento': 'Seguimiento',
|
'Seguimiento': 'Seguimiento',
|
||||||
'Llamada Escrituras': 'Llamada escrituras',
|
'Integracion': 'Integración',
|
||||||
'X Escriturar': 'X Escriturar',
|
|
||||||
'Banco/Infonavit': 'Banco/Infonavit',
|
|
||||||
'X Autorizar': 'X Autorizar',
|
'X Autorizar': 'X Autorizar',
|
||||||
|
'Autorizado': 'Autorizado',
|
||||||
|
'X Escriturar': 'X Escriturar',
|
||||||
'Escriturado': 'Escriturado',
|
'Escriturado': 'Escriturado',
|
||||||
|
'Titulado': 'Titulado',
|
||||||
'Cancelo': 'Canceló',
|
'Cancelo': 'Canceló',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -855,11 +855,14 @@ export default function MiDiaPage({ accionesSesion }: { accionesSesion: Acciones
|
|||||||
]
|
]
|
||||||
const columnasEscrituracion = [
|
const columnasEscrituracion = [
|
||||||
{ id: 'SEGUIMIENTO', titulo: 'Seguimiento', color: 'border-t-gray-400' },
|
{ id: 'SEGUIMIENTO', titulo: 'Seguimiento', color: 'border-t-gray-400' },
|
||||||
{ id: 'LLAMADA ESCRITURAS', titulo: 'Llamada Escrituras', color: 'border-t-blue-500' },
|
{ id: 'VENTA', titulo: 'Venta', color: 'border-t-gray-400' },
|
||||||
{ id: 'X ESCRITURAR', titulo: 'X Escriturar', color: 'border-t-yellow-500' },
|
{ id: 'SEGUIMIENTO', titulo: 'Seguimiento', color: 'border-t-blue-500' },
|
||||||
{ id: 'BANCO/INFONAVIT', titulo: 'Banco/Infonavit', color: 'border-t-orange-500' },
|
{ id: 'INTEGRACION', titulo: 'Integración', color: 'border-t-yellow-500' },
|
||||||
{ id: 'X AUTORIZAR', titulo: 'X Autorizar', color: 'border-t-green-500' },
|
{ id: 'X AUTORIZAR', titulo: 'X Autorizar', color: 'border-t-orange-500' },
|
||||||
|
{ id: 'AUTORIZADO', titulo: 'Autorizado', color: 'border-t-green-500' },
|
||||||
|
{ id: 'X ESCRITURAR', titulo: 'X Escriturar', color: 'border-t-emerald-500' },
|
||||||
{ id: 'ESCRITURADO', titulo: 'Escriturado', color: 'border-t-emerald-600' },
|
{ id: 'ESCRITURADO', titulo: 'Escriturado', color: 'border-t-emerald-600' },
|
||||||
|
{ id: 'TITULADO', titulo: 'Titulado', color: 'border-t-purple-600' },
|
||||||
{ id: 'CANCELO', titulo: 'Canceló', color: 'border-t-red-500' },
|
{ id: 'CANCELO', titulo: 'Canceló', color: 'border-t-red-500' },
|
||||||
]
|
]
|
||||||
const obtenerColumnaLead = (lead: LeadMiDia) => {
|
const obtenerColumnaLead = (lead: LeadMiDia) => {
|
||||||
@@ -891,14 +894,16 @@ export default function MiDiaPage({ accionesSesion }: { accionesSesion: Acciones
|
|||||||
}
|
}
|
||||||
const obtenerColumnaEscrituracion = (a: ApartadoMiDia) => {
|
const obtenerColumnaEscrituracion = (a: ApartadoMiDia) => {
|
||||||
const e = (a.estado ?? '').toUpperCase()
|
const e = (a.estado ?? '').toUpperCase()
|
||||||
|
if (e.includes('VENTA')) return 'VENTA'
|
||||||
if (e.includes('SEGUIMIENTO')) return 'SEGUIMIENTO'
|
if (e.includes('SEGUIMIENTO')) return 'SEGUIMIENTO'
|
||||||
if (e.includes('LLAMADA')) return 'LLAMADA ESCRITURAS'
|
if (e.includes('INTEGRACION')) return 'INTEGRACION'
|
||||||
if (e.includes('X ESCRIT') || e.includes('ESCRIT')) return 'X ESCRITURAR'
|
|
||||||
if (e.includes('BANCO') || e.includes('INFONAVIT')) return 'BANCO/INFONAVIT'
|
|
||||||
if (e.includes('X AUTORIZAR')) return 'X AUTORIZAR'
|
if (e.includes('X AUTORIZAR')) return 'X AUTORIZAR'
|
||||||
|
if (e.includes('AUTORIZADO')) return 'AUTORIZADO'
|
||||||
|
if (e.includes('X ESCRITURAR')) return 'X ESCRITURAR'
|
||||||
if (e.includes('ESCRITURADO')) return 'ESCRITURADO'
|
if (e.includes('ESCRITURADO')) return 'ESCRITURADO'
|
||||||
|
if (e.includes('TITULADO')) return 'TITULADO'
|
||||||
if (e.includes('CANCEL')) return 'CANCELO'
|
if (e.includes('CANCEL')) return 'CANCELO'
|
||||||
return 'SEGUIMIENTO'
|
return 'VENTA'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1370,9 +1375,10 @@ 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
|
||||||
// Solo fases activas (Cancelo y Escriturado son terminales)
|
// Solo fases activas (Cancelo y Escriturado son terminales)
|
||||||
|
// Fases activas de escrituración (excluye Cancelo y Escriturado que son terminales)
|
||||||
const apartadosEscrituracion = (resumen.todosApartados || resumen.misApartados || []).filter((a) => {
|
const apartadosEscrituracion = (resumen.todosApartados || resumen.misApartados || []).filter((a) => {
|
||||||
const e = (a.estado ?? '').toUpperCase()
|
const e = (a.estado ?? '').toUpperCase()
|
||||||
return e.includes('FIRMA') || e.includes('SEGUIMIENTO') || e.includes('LLAMADA') || e.includes('X ESCRITURAR') || e.includes('BANCO') || e.includes('INFONAVIT') || e.includes('X AUTORIZAR')
|
return e.includes('FIRMA') || e.includes('VENTA') || e.includes('SEGUIMIENTO') || e.includes('INTEGRACION') || e.includes('X AUTORIZAR') || e.includes('X ESCRITURAR')
|
||||||
})
|
})
|
||||||
return apartadosEscrituracion.length === 0 ? (
|
return apartadosEscrituracion.length === 0 ? (
|
||||||
<EstadoVacio mensaje="No hay apartados en escrituración" />
|
<EstadoVacio mensaje="No hay apartados en escrituración" />
|
||||||
@@ -1394,7 +1400,7 @@ export default function MiDiaPage({ accionesSesion }: { accionesSesion: Acciones
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="mt-3 flex flex-col gap-2 sm:flex-row sm:flex-wrap sm:items-center">
|
<div className="mt-3 flex flex-col gap-2 sm:flex-row sm:flex-wrap sm:items-center">
|
||||||
{(['Seguimiento', 'Llamada Escrituras', 'X Escriturar', 'Banco/Infonavit', 'X Autorizar', 'Escriturado', 'Cancelo'] as const).map((fase) => (
|
{(['Venta', 'Seguimiento', 'Integracion', 'X Autorizar', 'Autorizado', 'X Escriturar', 'Escriturado', 'Titulado', 'Cancelo'] as const).map((fase) => (
|
||||||
<button
|
<button
|
||||||
key={fase}
|
key={fase}
|
||||||
type="button"
|
type="button"
|
||||||
|
|||||||
Reference in New Issue
Block a user