def numerar(request, solicitud_id): solicitud = Solicitud.objects.get(pk=solicitud_id) if len(solicitud.normativas_jurisdiccionales.all()) > 0: normativas_jurisdiccionales = ', '.join([n.numero_anio for n in solicitud.normativas_jurisdiccionales.all().order_by('numero_anio')]) else: normativas_jurisdiccionales = solicitud.normativa_jurisdiccional_migrada if not solicitud.is_numerable(): request.set_flash('warning', 'La solicitud no se puede numerar.') return HttpResponseRedirect(reverse('validezNacionalSolicitudIndex')) solicitud_establecimientos = solicitud.establecimientos.all() solicitud_anexos = solicitud.anexos.all() if request.method == 'POST': import time referencia = str(int(time.time())) solicitud.estado = EstadoSolicitud.objects.get(nombre=EstadoSolicitud.NUMERADO) solicitud.save() solicitud.registrar_estado() # solicitud-establecimientos for se in solicitud_establecimientos: v = ValidezNacional() v.tipo_unidad_educativa = 'Sede' v.unidad_educativa_id = se.establecimiento.id v.cue = se.establecimiento.cue v.solicitud_id = solicitud.id v.carrera = solicitud.carrera.nombre v.titulo_nacional = solicitud.titulo_nacional.nombre v.primera_cohorte = solicitud.primera_cohorte v.ultima_cohorte = solicitud.ultima_cohorte v.dictamen_cofev = solicitud.dictamen_cofev v.normativas_nacionales = solicitud.normativas_nacionales v.normativa_jurisdiccional = normativas_jurisdiccionales v.referencia = referencia v.save() # Necesito recuperar el ID en la siguiente línea v.nro_infd = v.calcular_nro_infd_establecimiento() v.save() MailHelper.notify_by_email(MailHelper.NUMERACION_SOLICITUD, v) # solicitud-anexos for sa in solicitud_anexos: v = ValidezNacional() v.tipo_unidad_educativa = 'Anexo' v.unidad_educativa_id = sa.anexo.id v.cue = sa.anexo.cue v.solicitud_id = solicitud.id v.carrera = solicitud.carrera.nombre v.titulo_nacional = solicitud.titulo_nacional.nombre v.primera_cohorte = solicitud.primera_cohorte v.ultima_cohorte = solicitud.ultima_cohorte v.dictamen_cofev = solicitud.dictamen_cofev v.normativas_nacionales = solicitud.normativas_nacionales v.normativa_jurisdiccional = normativas_jurisdiccionales v.referencia = referencia v.save() # Necesito recuperar el ID en la siguiente línea v.nro_infd = v.calcular_nro_infd_anexo() v.save() MailHelper.notify_by_email(MailHelper.NUMERACION_SOLICITUD, v) request.set_flash('success', 'Se ha generado la validez de títulos.') return HttpResponseRedirect(reverse('validezNacionalDetalleNumeracion', args=[solicitud.id, referencia])) return my_render(request, 'validez_nacional/solicitud/numerar.html', { 'solicitud': solicitud, 'solicitud_establecimientos': solicitud_establecimientos, 'solicitud_anexos': solicitud_anexos, 'normativas_jurisdiccionales': normativas_jurisdiccionales, })