diff --git a/solicitudes/templates/usuario_solicitud/modificar_docs_convocatoria.html b/solicitudes/templates/usuario_solicitud/modificar_docs_convocatoria.html index 429acaed28b8161289717dcdd81032a3a69d1b85..a3f50e97e90bf43681e6c1f82000fcd95d5630d3 100644 --- a/solicitudes/templates/usuario_solicitud/modificar_docs_convocatoria.html +++ b/solicitudes/templates/usuario_solicitud/modificar_docs_convocatoria.html @@ -52,11 +52,17 @@ {% else %}

La respuesta a este documento no existe.

{% endif %} + {% if convocatoria.fecha_convocatoria %}
{{ documentoRespForm.file }}
+ {% else %} +
+ +
+ {% endif %} {% else %} @@ -86,11 +92,17 @@ {% else %}

La respuesta a este documento no existe.

{% endif %} + {% if convocatoria.fecha_convocatoria %}
{{ documentoRespForm.file }}
+ {% else %} +
+ +
+ {% endif %} {% endif %} diff --git a/solicitudes/views.py b/solicitudes/views.py index b1402efa4657b8d9d6c36b6e9ede7c1703e1677c..1b7285da17b71c5b56bb13b4a9e329875961531c 100644 --- a/solicitudes/views.py +++ b/solicitudes/views.py @@ -185,6 +185,10 @@ def documentos_convocatorias(request, modalidad_id): #si ya existe la solicitud se muestra la vista para modificar los documentos print(solicitud.id) if solicitud.id: + convocatoria = Convocatoria.objects.all().first() + fecha_convocatoria = convocatoria.fecha_convocatoria if convocatoria else False + if fecha_convocatoria == False: + messages.error(request, "Convocatoria cerrada.") return render(request, 'usuario_solicitud/modificar_docs_convocatoria.html', context) #si no existe la solicitud se muestra la vista para crear la solicitud else: diff --git a/solicitudes/viewsAdmin.py b/solicitudes/viewsAdmin.py index b2430b47e9ef0da1798126a40ff5ed5e151354a4..6605f5398326e7ccfb20923891d7d48bc3963843 100644 --- a/solicitudes/viewsAdmin.py +++ b/solicitudes/viewsAdmin.py @@ -23,7 +23,7 @@ from usuarios.viewsAdmin import BusquedaEnCamposQuerySet from usuarios.models import Usuario, Institucion, Carrera, Municipio from modalidades.models import ciclo_actual from .forms import FiltroForm, EstadInfoSelectForm -from modalidades.models import Modalidad +from modalidades.models import Modalidad, Convocatoria from .models import * from usuarios.models import Solicitante @@ -512,16 +512,23 @@ def documentos_solicitante(request, pk): #Existieron documentos con error y otros fueron aprobados - if seleccionDenegados != None : - #Si la cantidad de documentos recahzados es igual a la cantidad de los documentos totales de la modalidad - #entonces se le manda al solicitante la notificación, de lo contrario no se manda nada - if len(seleccionDenegados) == len(documentosResp): - notif.nueva(solicitante, f'Todos sus documentos para la modalidad de "{modalidad.nombre}" han sido rechazados. Por favor verifíquelos y re súbalos.', 'solicitudes:documentos_convocatoria', urlArgs=[solicitud.modalidad_id]) - #Si hay algun elemento denegado entonces se notifica al usuario - else: - notif.nueva(solicitante, f'Algunos de sus documentos para la modalidad de "{modalidad.nombre}" han sido rechazados. Por favor, verifíquelos y re súbalos.', 'solicitudes:documentos_convocatoria', urlArgs=[solicitud.modalidad_id]) - #No es necesario actualizar la info de la solicitud ya que las signals ligadas a los documentos respuesta - #lo hacen automaticamente + if seleccionDenegados != None : + #Si la fecha de la convocatoria sigue abierta y el solicitante tuvo documentos erróneos + convocatoria = Convocatoria.objects.all().first() + fecha_convocatoria = convocatoria.fecha_convocatoria if convocatoria else False + if fecha_convocatoria: + #Si la cantidad de documentos recahzados es igual a la cantidad de los documentos totales de la modalidad + #entonces se le manda al solicitante la notificación, de lo contrario no se manda nada + if len(seleccionDenegados) == len(documentosResp): + notif.nueva(solicitante, f'Todos sus documentos para la modalidad de "{modalidad.nombre}" han sido rechazados. Por favor verifíquelos.', 'solicitudes:documentos_convocatoria', urlArgs=[solicitud.modalidad_id]) + #Si hay algun elemento denegado entonces se notifica al usuario + else: + notif.nueva(solicitante, f'Algunos de sus documentos para la modalidad de "{modalidad.nombre}" han sido rechazados. Por favor verifíquelos.', 'solicitudes:documentos_convocatoria', urlArgs=[solicitud.modalidad_id]) + #No es necesario actualizar la info de la solicitud ya que las signals ligadas a los documentos respuesta + #lo hacen automaticamente + #Si la fecha de la convocatoria ya se cerró y la documentación del solicitante tuvo errores + else: + notif.nueva(solicitante, f'Estimado solicitante, alguno de sus documentos no cumplió con lo establecido en la convocatoria, le invitamos a ser participe en la próxima convocatoria.', 'solicitudes:historial') #Todos los documentos fueron aceptados elif seleccionDenegados == None and seleccionAceptados != None: #Si la cantidad de documentos aceptados es igual a la cantidad de los documentos totales de la modalidad