bloque 4: campanas por segmentos con medicion (modulo skeen_campanas: segmentos reutilizables con conteo verificado, campanas por WhatsApp y correo con programacion, prueba previa, limite por minuto, pausa por errores, consentimiento por canal y atribucion de citas) + encuesta al salir con NPS (campo propio, envio automatico y recordatorio, reporte con tendencia y desglose); apagado por defecto
This commit is contained in:
@@ -163,6 +163,12 @@ def limpiar_respuestas(campos, respuestas):
|
||||
out[clave] = int(valor)
|
||||
except (TypeError, ValueError):
|
||||
out[clave] = None
|
||||
elif tipo == 'nps':
|
||||
try:
|
||||
n = int(valor)
|
||||
out[clave] = n if 0 <= n <= 10 else None
|
||||
except (TypeError, ValueError):
|
||||
out[clave] = None
|
||||
elif tipo in ('firma', 'foto', 'archivo'):
|
||||
out[clave] = bool(valor)
|
||||
else:
|
||||
@@ -209,6 +215,18 @@ def validar_respuestas(plantilla, campos, respuestas, fotos_claves,
|
||||
except (TypeError, ValueError):
|
||||
errores.append('%s debe ser un número del 1 al 10' % etiqueta)
|
||||
continue
|
||||
if tipo == 'nps':
|
||||
if valor in (None, ''):
|
||||
if obligatorio:
|
||||
errores.append('Falta responder: %s' % etiqueta)
|
||||
else:
|
||||
try:
|
||||
n = int(valor)
|
||||
if not (0 <= n <= 10):
|
||||
errores.append('%s debe estar entre 0 y 10' % etiqueta)
|
||||
except (TypeError, ValueError):
|
||||
errores.append('%s debe ser un número del 0 al 10' % etiqueta)
|
||||
continue
|
||||
if tipo == 'numero':
|
||||
if valor in (None, ''):
|
||||
if obligatorio:
|
||||
|
||||
Reference in New Issue
Block a user