feat(afluencia): captura completa de perfil en alta de afluencia
Agrega al formulario ligero y a POST /api/leads: tipo de propiedad, medio de contacto, edad, estado civil, tipo de empleo, ocupacion, rango salarial, credito, tipo de economia, califica y lo quiere para. Selects obligatorios (estado civil, tipo de empleo, tipo de economia, califica) con las etiquetas sembradas como labels status en el tablero Leads de Monday.
This commit is contained in:
@@ -22,6 +22,19 @@ const crearLeadSchema = z.object({
|
||||
origen: z.string().trim().min(1).optional(),
|
||||
desarrollo: z.string().trim().min(1).optional(),
|
||||
notas: z.string().trim().min(1).optional(),
|
||||
// Campos de calificación de la afluencia (opcionales; los labels fijos del
|
||||
// front coinciden con los sembrados en Monday, no se validan contra el board)
|
||||
tipoPropiedad: z.string().trim().min(1).optional(),
|
||||
medioContacto: z.string().trim().min(1).optional(),
|
||||
edad: z.coerce.number().int().min(15).max(120).optional(),
|
||||
estadoCivil: z.string().trim().min(1).optional(),
|
||||
tipoEmpleo: z.string().trim().min(1).optional(),
|
||||
ocupacion: z.string().trim().min(1).optional(),
|
||||
rangoSalarial: z.string().trim().min(1).optional(),
|
||||
credito: z.string().trim().min(1).optional(),
|
||||
tipoEconomia: z.string().trim().min(1).optional(),
|
||||
califica: z.string().trim().min(1).optional(),
|
||||
loQuierePara: z.string().trim().min(1).optional(),
|
||||
})
|
||||
|
||||
const cambiarEstadoSchema = z.object({
|
||||
@@ -112,6 +125,17 @@ export async function crearLead(
|
||||
origenLabel: datos.origen,
|
||||
desarrolloLabel: datos.desarrollo,
|
||||
notas: datos.notas,
|
||||
tipoPropiedadLabel: datos.tipoPropiedad,
|
||||
medioContacto: datos.medioContacto,
|
||||
edad: datos.edad,
|
||||
estadoCivilLabel: datos.estadoCivil,
|
||||
tipoEmpleoLabel: datos.tipoEmpleo,
|
||||
ocupacion: datos.ocupacion,
|
||||
rangoSalarial: datos.rangoSalarial,
|
||||
creditoLabel: datos.credito,
|
||||
tipoEconomiaLabel: datos.tipoEconomia,
|
||||
calificaLabel: datos.califica,
|
||||
loQuierePara: datos.loQuierePara,
|
||||
})
|
||||
|
||||
let oportunidadId: string | null = null
|
||||
|
||||
Reference in New Issue
Block a user