Pueden personalizar y mejorar lo siguiente en función finalizar_propuesta_preinsc de src/siu/modelo/transacciones/preinscripcion.php:
// Turno asignado
$turno_asignado = catalogo::consultar('preinscripcion', 'get_turno_presentacion', $parametros_turno);
// Turnos
$turnos = $this->get_listado_turnos();
if (empty($hay_faltantes) && empty($faltan_requisitos) && (empty($turnos) || (!empty($turnos) && !empty($turno_asignado)))) {
//cambio de estado para poder procesar estado copiada a gestion P
$estado = catalogo::consultar('preinscripcion', 'cambiar_estado_preinscripcion_3w', $datos);
kernel::sesion()->borrar('mensaje_error');
unset($this->datos_preinsc);
$mensaje = ($estado == 'N') ? kernel::traductor()->trans('preinscripcion.reabierta_ok'): kernel::traductor()->trans('preinscripcion.cerrada_ok') ;
kernel::sesion()->set('mensaje_ok', $mensaje);
} else {
if (!empty($hay_faltantes)) {
$link_datos_censales = 'datos_censales';
$mensaje = kernel::traductor()->trans('preinscripcion.falta_datos_censales', ['%link%' => $link_datos_censales]);
}
if (!empty($faltan_requisitos)) {
$br=(!empty($mensaje))?'</br>':'' ;
$mensaje .= $br. kernel::traductor()->trans('preinscripcion.faltan_requisitos') . implode(', ', $faltan_requisitos);
}
// Si hay turnos de presentación de documentación, pero no se seleccionó ninguno
if (!empty($turnos) && empty($turno_asignado)) {
$br=(!empty($mensaje))?'</br>':'' ;
$mensaje .= $br. kernel::traductor()->trans('preinscripcion.falta_turno');
}
kernel::sesion()->set('mensaje_error', $mensaje);
}
En la función propuestas de php/nucleo/_lib/guarani_ficha_preinscripcion_nucleo.php, la podes personalizar en personalizacion/php/nucleo/_lib/guarani_ficha_preinscripcion.php:
if ($this->origen == preinscripcion::origen_autogestion) {
$turnos = siu\guarani::preinscripcion()->get_listado_turnos();
// Si hay turnos
if (!empty($turnos)) {
$this->turno_presentacion($datos);
}
}
Pruebenlo bien antes de ponerlo en producción.
Saludos.