Example #1
0
def consultas():
    if 'username' in session:
        formulario = ConsultarForm()
        filtro = formulario.consulta.data
        resultado = []
        if formulario.validate_on_submit():
            with open('clientes.csv') as planillaClientes:
                planilla_csv = csv.reader(planillaClientes)
                encabezado_csv = next(planilla_csv)
                cliente = next(planilla_csv, None)
                while cliente:
                    if filtro in cliente[3]:
                        resultado.append(cliente)
                    cliente = next(planilla_csv, None)
                if resultado == []:
                    flash('No hay resultados para tu búsqueda')
                else:
                    return render_template('resultado.html',
                                           encabezado_csv=encabezado_csv,
                                           resultado=resultado)
        return render_template('consultas.html',
                               form=formulario,
                               resultado=resultado)
    else:
        return render_template('sin_permiso.html')
Example #2
0
def consultas_pais():
    """ Permite al usuario realizar consultas por pais por medio del formulario, buscando en el archivo clientes, iterando cada cliente por pais (columna 3 del archivo), si el filtro coicide con el pais buscado lo guarda en resultado y lo renderiza en el template html. Si no encuentra (resultado == []) muestra mensaje al usuario.
    """

    if 'username' in session:
        formulario = ConsultarForm()
        filtro = formulario.consulta_pais.data
        resultado = []
        if formulario.validate_on_submit():
            with open('clientes.csv', newline='',
                      encoding='utf-8') as planillaClientes:
                planilla_csv = csv.reader(planillaClientes)
                encabezado_csv = next(planilla_csv)
                cliente = next(planilla_csv, None)
                while cliente:
                    if filtro in cliente[3]:
                        resultado.append(cliente)
                    cliente = next(planilla_csv, None)
                if resultado == []:
                    flash('No hay resultados para tu búsqueda')
                else:
                    return render_template('consultas_resultado.html',
                                           encabezado_csv=encabezado_csv,
                                           resultado=resultado,
                                           cantidad=len(resultado))
        return render_template('consultas.html',
                               form=formulario,
                               resultado=resultado)
    else:
        return render_template('sin_permiso.html')
Example #3
0
def consultar(request):
    if request.method == 'POST':
        form = ConsultarForm(request.POST)
        if form.is_valid():
            #request.session['fecha'] = form.cleaned_data['fecha']
            request.session['departamento'] = form.cleaned_data['departamento']
            request.session['contraparte'] = form.cleaned_data['contraparte']
            try:
                municipio = Municipio.objects.get(id=form.cleaned_data['municipio']) 
            except:
                municipio = None
            try:
                comarca = Comarca.objects.get(id=form.cleaned_data['comarca'])
            except:
                comarca = None

            request.session['municipio'] = municipio
            request.session['comarca'] = comarca

            #cosas de otros modelos!
            parametros = {'familia.escolaridad': {}, 'familia.composicion': {}, 
                          'genero.tomadecicion': {}, 'ingresos.principalesfuentes': {},
                          'ingresos.totalingreso': {}}
            parametros['familia.escolaridad']['beneficia'] = form.cleaned_data['escolaridad_beneficiario']
            parametros['familia.escolaridad']['conyugue'] = form.cleaned_data['escolaridad_conyugue']
            parametros['familia.composicion']['sexo'] = form.cleaned_data['familia_beneficiario']
            #desicion gasto mayor!
            #parametros['genero.tomadecicion']['aspectos'] = 1
            parametros['genero.tomadecicion']['respuesta'] =  form.cleaned_data['desicion_gasto_mayor']
            #ingresos
            parametros['ingresos.principalesfuentes']['fuente'] = form.cleaned_data['ingresos_fuente']#TODO: cambiarlo a fuente__in
            parametros['ingresos.totalingreso']['total__gte'] = form.cleaned_data['ingresos_total_min']
            parametros['ingresos.totalingreso']['total__lte'] = form.cleaned_data['ingresos_total_max']
            #dependientes
            parametros['familia.composicion']['dependientes__gte'] = form.cleaned_data['dependientes_min']
            parametros['familia.composicion']['dependientes__lte'] = form.cleaned_data['dependientes_max']
            #parametros['formas_propiedad.finca']['area'] = forms.cleaned_data['finca_area_total']
            #parametros['produccion.ganadomayor']['num_vacas'] = forms.cleaned_data['finca_num_vacas']
            #parametros['finca']['conssa'] = forms.cleaned_data['finca_conssa']
            #parametros['finca']['num_productos'] = forms.cleaned_data['finca_num']
            request.session['parametros'] = parametros

            if form.cleaned_data['next_url']:
                return HttpResponseRedirect(form.cleaned_data['next_url'])
            else:
                muestra_indicador =1
                return render_to_response('encuestas/consultar.html', locals(),
                              context_instance=RequestContext(request))
    else:
        form = ConsultarForm()
    return render_to_response('encuestas/consultar.html', locals(),
                              context_instance=RequestContext(request))