Ejemplo n.º 1
0
def index(request):
    if request.method == 'GET':
        form_filter = SolicitudFormFilters(request.GET)
    else:
        form_filter = SolicitudFormFilters()
    q = build_query(form_filter, 1, request)

    try:
        if request.GET['export'] == '1':
            return reporte_solicitudes(request, q)
    except KeyError:
        pass


    ambito = request.get_perfil().ambito
    perfil_jurisdiccional = ambito.tipo.nombre == Ambito.TIPO_JURISDICCION
    perfil_establecimiento = ambito.tipo.nombre == Ambito.TIPO_ESTABLECIMIENTO
    perfil_anexo = ambito.tipo.nombre == Ambito.TIPO_ANEXO


    if perfil_jurisdiccional or perfil_establecimiento or perfil_anexo:
        form_filter.fields['jurisdiccion'].queryset = form_filter.fields['jurisdiccion'].queryset.filter(id=request.get_perfil().jurisdiccion().id)
        if perfil_jurisdiccional:
            q = q.filter(jurisdiccion__id=request.get_perfil().jurisdiccion().id)
        elif perfil_establecimiento:
            establecimiento = Establecimiento.objects.get(ambito__path=ambito.path)
            q = q.filter(establecimientos__establecimiento__id=establecimiento.id)
        elif perfil_anexo:
            anexo = Anexo.objects.get(ambito__path=ambito.path)
            q = q.filter(anexos__anexo__id=anexo.id)
    
    paginator = Paginator(q, ITEMS_PER_PAGE)
    try:
        page_number = int(request.GET['page'])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    objects = page.object_list

    return my_render(request, 'validez_nacional/solicitud/index.html', {
        'form_filters': form_filter,
        'objects': objects,
        'paginator': paginator,
        'page': page,
        'page_number': page_number,
        'pages_range': range(1, paginator.num_pages + 1),
        'next_page': page_number + 1,
        'prev_page': page_number - 1,
        'export_url': Reporte.build_export_url(request.build_absolute_uri()),
        've_acciones': ambito.tipo.nombre not in [Ambito.TIPO_ESTABLECIMIENTO, Ambito.TIPO_ANEXO]
    })
Ejemplo n.º 2
0
def index(request):
    """
    Búsqueda de usuarios
    """
    if request.method == "GET":
        form_filter = UsuarioFormFilters(request.GET)
    else:
        form_filter = UsuarioFormFilters()
    q = build_query(form_filter, 1)

    if request.get_perfil().rol.padre is not None:
        # No puede ver a TODOS los usuarios
        q = q.filter(perfiles__ambito__path__istartswith=request.get_perfil().ambito.path)
        q = q.filter(perfiles__rol__path__istartswith=request.get_perfil().rol.path)
        q = Usuario.objects.filter(id__in=q)

    try:
        if request.GET["export"] == "1":
            return reporte_usuarios(request, q)
    except KeyError:
        pass

    paginator = Paginator(q, ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET["page"])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    objects = page.object_list
    for u in objects:
        u.deletable = u.is_deletable() and request.get_perfil().can_modificar_usuario(u)
    return my_render(
        request,
        "seguridad/usuario/index.html",
        {
            "form_filters": form_filter,
            "objects": objects,
            "paginator": paginator,
            "page": page,
            "page_number": page_number,
            "pages_range": range(1, paginator.num_pages + 1),
            "next_page": page_number + 1,
            "prev_page": page_number - 1,
            "export_url": Reporte.build_export_url(request.build_absolute_uri()),
            "usuario_activo_id": request.get_perfil().usuario.id,
        },
    )
Ejemplo n.º 3
0
def detalle_numeracion(request, solicitud_id, referencia):
    solicitud = Solicitud.objects.get(pk=solicitud_id)
    validez = ValidezNacional.objects.filter(solicitud=solicitud, referencia=referencia)    

    if 'export' in request.GET:
        return reporte_detalle_numeracion(request, validez)
            
    return my_render(request, 'postitulos/solicitud/detalle_numeracion.html', {
        'solicitud': solicitud,
        'validez': validez,
        'export_url': Reporte.build_export_url(request.build_absolute_uri()),
    })
Ejemplo n.º 4
0
def consulta_institucional(request):

    ambito = request.get_perfil().ambito
    perfil_establecimiento = ambito.tipo.nombre == Ambito.TIPO_ESTABLECIMIENTO
    perfil_anexo = ambito.tipo.nombre == Ambito.TIPO_ANEXO

    if perfil_establecimiento:
        establecimiento = Establecimiento.objects.get(ambito__path=ambito.path)
        anexos = establecimiento.anexos.all()
    elif perfil_anexo:
        establecimiento = Establecimiento.objects.get(anexos__ambito__path__istartswith=ambito.path)
        anexos = establecimiento.anexos.all()
        
    if request.method == 'GET':
        form_filter = ValidezInstitucionalFormFilters(request.GET, establecimiento=establecimiento)
    else:
        form_filter = ValidezInstitucionalFormFilters(establecimiento=establecimiento)
    q = build_query_institucional(form_filter, 1, request)

    """
    try:
        if request.GET['export'] == '1':
            return reporte_solicitudes(request, q)
    except KeyError:
        pass
    """
    paginator = Paginator(q, ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET['page'])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    
    objects = page.object_list
    return my_render(request, 'validez_nacional/solicitud/consulta_institucional.html', {
        'form_filters': form_filter,
        'objects': objects,
        'paginator': paginator,
        'page': page,
        'page_number': page_number,
        'pages_range': range(1, paginator.num_pages + 1),
        'next_page': page_number + 1,
        'prev_page': page_number - 1,
        'export_url': Reporte.build_export_url(request.build_absolute_uri()),
    })
Ejemplo n.º 5
0
def index(request):
    """
    Búsqueda de dependencias
    """
    if request.method == "GET":
        form_filter = DependenciaFuncionalFormFilters(request.GET)
    else:
        form_filter = DependenciaFuncionalFormFilters()
    q = build_query(form_filter, 1)
    q = q.filter(ambito__path__istartswith=request.get_perfil().ambito.path)

    try:
        if request.GET["export"] == "1":
            return reporte_dependencias_funcionales(request, q)
    except KeyError:
        pass

    paginator = Paginator(q, ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET["page"])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    objects = page.object_list
    if request.get_perfil().jurisdiccion() is not None:
        form_filter.fields["jurisdiccion"].queryset = Jurisdiccion.objects.filter(
            id=request.get_perfil().jurisdiccion().id
        )

    return my_render(
        request,
        "registro/dependencia_funcional/index.html",
        {
            "form_filters": form_filter,
            "objects": objects,
            "paginator": paginator,
            "page": page,
            "page_number": page_number,
            "pages_range": range(1, paginator.num_pages + 1),
            "next_page": page_number + 1,
            "prev_page": page_number - 1,
            "export_url": Reporte.build_export_url(request.build_absolute_uri()),
        },
    )
Ejemplo n.º 6
0
def index(request, anio):
    if int(anio) not in ANIOS_DISPONIBLES:
        raise Exception('Año no disponible para consulta')
    """
    Consulta de títulos
    """
    if request.method == 'GET':
        form_filter = OfertaNacionalFormFilters(request.GET, anio=anio)
    else:
        form_filter = OfertaNacionalFormFilters(anio=anio)

    q = build_query(form_filter, 1, request)
    """
    try:
        if request.GET['export'] == '1':
            return reporte_oferta_nacional(request, q, anio)
    except KeyError:
        pass
    """

    import itertools
    paginator = Paginator(list(itertools.chain(q[0], q[1], q[2])), ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET['page'])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    objects = page.object_list

    return my_render(request, 'oferta_nacional/index.html', {
        'anio': anio,
        'form_filters': form_filter,
        'objects': objects,
        'paginator': paginator,
        'page': page,
        'page_number': page_number,
        'pages_range': range(1, paginator.num_pages + 1),
        'next_page': page_number + 1,
        'prev_page': page_number - 1,
        'export_url': Reporte.build_export_url(request.build_absolute_uri()),
    })
Ejemplo n.º 7
0
def index(request):
    """
    Búsqueda de titulos
    """
    jur = request.get_perfil().jurisdiccion()
    if request.method == 'GET':
        form_filter = CarreraJurisdiccionalCohorteFormFilters(request.GET, jurisdiccion=jur)
    else:
        form_filter = CarreraJurisdiccionalCohorteFormFilters(jurisdiccion=jur)
    q = build_query(form_filter, 1, request)

    try:
        if request.GET['export'] == '1':
            return reporte_cohortes_jurisdiccionales(request, q)
    except KeyError:
        pass
        
    paginator = Paginator(q, ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET['page'])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    objects = page.object_list
    
    
    return my_render(request, 'titulos/cohorte/index.html', {
        'form_filters': form_filter,
        'objects': objects,
        'paginator': paginator,
        'page': page,
        'page_number': page_number,
        'pages_range': range(1, paginator.num_pages + 1),
        'next_page': page_number + 1,
        'prev_page': page_number - 1,
        'export_url': Reporte.build_export_url(request.build_absolute_uri()),
    })
Ejemplo n.º 8
0
def index(request):
    
    if request.method == 'GET':
        form_filter = SolicitudFormFilters(request.GET)
    else:
        form_filter = SolicitudFormFilters()
    q = build_query(form_filter, 1, request)

    try:
        if request.GET['export'] == '1':
            return reporte_solicitudes(request, q)
    except KeyError:
        pass
        
    if request.get_perfil().jurisdiccion():
        q = q.filter(jurisdiccion__id=request.get_perfil().jurisdiccion().id)
    paginator = Paginator(q, ITEMS_PER_PAGE)
    try:
        page_number = int(request.GET['page'])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages
    
    page = paginator.page(page_number)
    objects = page.object_list

    return my_render(request, 'postitulos/solicitud/index.html', {
        'form_filters': form_filter,
        'objects': objects,
        'paginator': paginator,
        'page': page,
        'page_number': page_number,
        'pages_range': range(1, paginator.num_pages + 1),
        'next_page': page_number + 1,
        'prev_page': page_number - 1,
        'export_url': Reporte.build_export_url(request.build_absolute_uri()),
    })
Ejemplo n.º 9
0
def index(request):
	"""
	Consulta de títulos
	"""
	if request.method == 'GET':
		form_filter = ConsultaValidezFormFilters(request.GET)
	else:
		form_filter = ConsultaValidezFormFilters()
	
	q = build_query(form_filter, 1, request)
	
	try:
		if request.GET['export'] == '1':
			return reporte_consulta_validez(request, q)
	except KeyError:
		pass
	
	paginator = Paginator(q, ITEMS_PER_PAGE)
	try:
		page_number = int(request.GET['page'])
	except (KeyError, ValueError):
		page_number = 1
	# chequear los límites
	if page_number < 1:
		page_number = 1
	elif page_number > paginator.num_pages:
		page_number = paginator.num_pages
	
	page = paginator.page(page_number)
	objects = page.object_list
	return my_render(request, 'consulta_validez/index.html', {
		'form_filters': form_filter,
		'objects': objects,
		'paginator': paginator,
		'page': page,
		'page_number': page_number,
		'pages_range': range(1, paginator.num_pages + 1),
		'next_page': page_number + 1,
		'prev_page': page_number - 1,
		'export_url': Reporte.build_export_url(request.build_absolute_uri()),
	})
def index(request):
    " Búsqueda de orientaciones "
    if request.method == "GET":
        form_filter = NormativaJurisdiccionalFormFilters(request.GET)
    else:
        form_filter = NormativaJurisdiccionalFormFilters()
    q = build_query(form_filter, 1, request)

    if "export" in request.GET:
        return reporte_normativas_jurisdiccionales(request, q)

    paginator = Paginator(q, ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET["page"])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    objects = page.object_list
    return my_render(
        request,
        "titulos/normativa_jurisdiccional/index.html",
        {
            "form_filters": form_filter,
            "objects": objects,
            "paginator": paginator,
            "page": page,
            "page_number": page_number,
            "pages_range": range(1, paginator.num_pages + 1),
            "next_page": page_number + 1,
            "prev_page": page_number - 1,
            "export_url": Reporte.build_export_url(request.build_absolute_uri()),
        },
    )
def index(request):
    " Búsqueda de orientaciones "
    if request.method == 'GET':
        form_filter = NormativaPostituloJurisdiccionalFormFilters(request.GET)
    else:
        form_filter = NormativaPostituloJurisdiccionalFormFilters()
    q = build_query(form_filter, 1, request)

    if 'export' in request.GET:
	    return reporte_normativas_jurisdiccionales(request, q)

    paginator = Paginator(q, ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET['page'])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    objects = page.object_list
    return my_render(request, 'postitulos/normativa_jurisdiccional/index.html', {
        'form_filters': form_filter,
        'objects': objects,
        'paginator': paginator,
        'page': page,
        'page_number': page_number,
        'pages_range': range(1, paginator.num_pages + 1),
        'next_page': page_number + 1,
        'prev_page': page_number - 1,
		'export_url': Reporte.build_export_url(request.build_absolute_uri()),
    })
Ejemplo n.º 12
0
def index(request):

    jurisdiccion = request.get_perfil().jurisdiccion()
    if jurisdiccion is not None:  # el usuario puede ser un referente o el admin de títulos
        jurisdiccion_id = jurisdiccion.id
    else:
        try:
            jurisdiccion_id = request.GET['jurisdiccion']
            if request.GET['jurisdiccion'] == '':
                jurisdiccion_id = None
        except KeyError:
            jurisdiccion_id = None

    try:
        departamento_id = request.GET['departamento']
        if request.GET['departamento'] == '':
            departamento_id = None
    except KeyError:
        departamento_id = None
    
    """
    Búsqueda de extensiones áulicas
    """
    if request.method == 'GET':
        form_filter = ExtensionAulicaFormFilters(request.GET, jurisdiccion_id=jurisdiccion_id, departamento_id=departamento_id)
    else:
        form_filter = ExtensionAulicaFormFilters(jurisdiccion_id=jurisdiccion_id, departamento_id=departamento_id)
    q = build_query(form_filter, 1, request)

    try:
        if request.GET['export'] == '1':
            return reporte_extensiones_aulicas(request, q)
    except KeyError:
        pass

    jurisdiccion = request.get_perfil().jurisdiccion()
    if jurisdiccion is not None:
        form_filter.fields["establecimiento"].queryset = Establecimiento.objects.filter(dependencia_funcional__jurisdiccion__id=jurisdiccion.id)
    form_filter.fields["establecimiento"].queryset = Establecimiento.objects.filter(ambito__path__istartswith=request.get_perfil().ambito.path)
    paginator = Paginator(q, ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET['page'])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    page = paginator.page(page_number)
    objects = page.object_list
    return my_render(request, 'registro/extension_aulica/index.html', {
        'form_filters': form_filter,
        'objects': objects,
        'paginator': paginator,
        'page': page,
        'page_number': page_number,
        'pages_range': range(1, paginator.num_pages + 1),
        'next_page': page_number + 1,
        'prev_page': page_number - 1,
        'export_url': Reporte.build_export_url(request.build_absolute_uri()),
    })
Ejemplo n.º 13
0
def index(request):

    jurisdiccion = request.get_perfil().jurisdiccion()

    if jurisdiccion is not None:  # el usuario puede ser un referente o el admin de títulos
        jurisdiccion_id = jurisdiccion.id
    else:
        try:
            jurisdiccion_id = request.GET["jurisdiccion"]
            if request.GET["jurisdiccion"] == "":
                jurisdiccion_id = None
        except KeyError:
            jurisdiccion_id = None

    try:
        departamento_id = request.GET["departamento"]
        if request.GET["departamento"] == "":
            departamento_id = None
    except KeyError:
        departamento_id = None

    """
    Búsqueda de establecimientos
    """
    if request.method == "GET":
        form_filter = EstablecimientoFormFilters(
            request.GET, jurisdiccion_id=jurisdiccion_id, departamento_id=departamento_id
        )
    else:
        form_filter = EstablecimientoFormFilters(jurisdiccion_id=jurisdiccion_id, departamento_id=departamento_id)
    q = build_query(form_filter, 1, request)

    try:
        if request.GET["export"] == "1":
            return reporte_establecimientos(request, q)
    except KeyError:
        pass

    paginator = Paginator(q, ITEMS_PER_PAGE)

    try:
        page_number = int(request.GET["page"])
    except (KeyError, ValueError):
        page_number = 1
    # chequear los límites
    if page_number < 1:
        page_number = 1
    elif page_number > paginator.num_pages:
        page_number = paginator.num_pages

    if jurisdiccion is not None:
        form_filter.fields["dependencia_funcional"].queryset = DependenciaFuncional.objects.filter(
            jurisdiccion=jurisdiccion
        )
    page = paginator.page(page_number)
    objects = page.object_list
    return my_render(
        request,
        "registro/establecimiento/index.html",
        {
            "form_filters": form_filter,
            "objects": objects,
            "paginator": paginator,
            "page": page,
            "page_number": page_number,
            "pages_range": range(1, paginator.num_pages + 1),
            "next_page": page_number + 1,
            "prev_page": page_number - 1,
            "export_url": Reporte.build_export_url(request.build_absolute_uri()),
        },
    )