Conjunto 3546d14 en seiven
- Fecha y hora:
- 14/11/2017 14:11:18 (hace 7 años)
- Branches:
- master
- Children:
- d1d2c2c
- Parents:
- f591439
- Ficheros:
-
- 2 añadidos
- 6 editados
Leyenda
- No modificado
- Añadido
- Eliminado
-
economico/models.py
rf591439 r3546d14 841 841 return {'result': result, 'message': message} 842 842 843 def gestion_query(self, *args, **kwargs): 844 """! 845 Método que permite realizar una consulta de datos en base a la selección del formulario 846 847 @author Edgar A. Linares (elinares at cenditel.gob.ve) 848 @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> 849 @date 30-10-2017 850 @param self <b>{object}</b> Objeto que instancia la clase 851 @param args <b>{tupla}</b> Tupla con argumentos opcionales 852 @param kwargs <b>{dic}</b> Diccionario con filtros opcionales 853 @return Devuelve el resultado de la acción con su correspondiente mensaje 854 """ 855 values, pib, demanda, produccion, actividad, sector = {}, None, None, None, None, None 856 anhos_base, anho_b, errors, result, message, is_nominal = [], None, '', False, '', False 857 is_demanda, is_produccion, is_actividad, is_sector = False, False, False, False 858 859 ## Verifica cuál es el modelo que se va a consultar 860 if any('nominal' in index for index in kwargs): 861 is_nominal = True 862 if any('pibdemanda' in index for index in kwargs): 863 is_demanda = True 864 elif any('pibproduccion' in index for index in kwargs): 865 is_produccion = True 866 elif any('pibactividad' in index for index in kwargs): 867 is_actividad = True 868 elif any('pibsector' in index for index in kwargs): 869 is_sector = True 870 prod = [] 871 try: 872 if is_nominal: 873 pib = PIB.objects.filter(anho__gte = kwargs['anho__gte'], anho__lte = kwargs['anho__lte']) 874 else: 875 pib = PIB.objects.filter(anho_base = kwargs['anho_base'], anho__gte = kwargs['anho__gte'], anho__lte = kwargs['anho__lte']) 876 if is_demanda: 877 demanda = PIBDemanda.objects.filter(pib__in = pib) 878 values['demanda'] = demanda 879 if is_produccion: 880 values['produccion'] = PIBProduccion.objects.filter(pib__in = pib) 881 for p in values['produccion']: 882 prod.append(p) 883 884 result = True 885 message = "Consulta exitosa de datos" 886 887 except Exception as e: 888 errors += "- %s\n" % str(e) 889 890 if errors: 891 result = False 892 message = str(_("Error al obtener los datos.")) 893 894 return {'result': result, 'message': message, 'values': prod} 843 895 844 896 @python_2_unicode_compatible -
economico/templates/consulta/economico.consulta.menu.area.html
r98c5f0b r3546d14 8 8 $("#url_precios").attr("href", "precios"); 9 9 $("#url_demanda_global").attr("href", "demanda-global"); 10 $("#url_pib").attr("href", "pib"); 10 11 }); 11 12 </script> -
economico/templates/economico.pib.html
re156b7a r3546d14 22 22 </div> 23 23 </div> 24 <div class="row separador-row"> 25 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2" align="right"> 26 <label for="{{ form.tipo.auto_id }}" class="control-label"> 27 {{ form.tipo.label }}:</label> 28 </div> 29 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2"> {{ form.tipo }}</div> 30 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2" align="right"> 31 <label for="{{ form.dominio.auto_id }}" class="control-label"> 32 {{ form.dominio.label }}:</label> 33 </div> 34 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">{{ form.dominio }}</div> 35 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 anho_base" align="right"> 36 <label for="{{ form.anho_base.auto_id }}" class="control-label"> 37 {{ form.anho_base.label }}:</label> 38 </div> 39 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 anho_base">{{ form.anho_base }}</div> 40 </div> 41 <div class="row separador-row periodo" style='display:none;'> 42 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 col-xs-offset-4 col-sm-offset-4 col-md-offset-4 col-lg-offset-4"> 43 </div> 44 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 trimestral" style='display:none;'> 45 <label class="control-label">{% trans 'Trimestral' %}:</label> 46 </div> 47 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2"> 48 <label class="control-label">{% trans 'Año' %}:</label> 49 </div> 50 </div> 51 <div class="row separador-row periodo" style='display:none;'> 52 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 col-xs-offset-2 col-sm-offset-2 col-md-offset-2 col-lg-offset-2" align="right"> 53 </div> 54 <div class="col-xs-1 col-sm-1 col-md-1 col-lg-1"> 55 <label class="control-label">{% trans 'Período' %}:</label> 56 </div> 57 <div class="col-xs-1 col-sm-1 col-md-1 col-lg-1" align="right"> 58 <label class="control-label">{{ form.periodo_trimestre_ini.label }}:</label> 59 </div> 60 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 trimestral" style='display:none;'> 61 {{ form.periodo_trimestre_ini }} 62 </div> 63 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">{{ form.periodo_anho_ini }}</div> 64 </div> 65 <div class="row separador-row periodo" style='display:none;'> 66 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 col-xs-offset-4 col-sm-offset-4 col-md-offset-4 col-lg-offset-4" align="right"> 67 <label class="control-label">{{ form.periodo_trimestre_fin.label }}:</label> 68 </div> 69 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 trimestral" style='display:none;'> 70 {{ form.periodo_trimestre_fin }} 71 </div> 72 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">{{ form.periodo_anho_fin }}</div> 24 <div align="center"> 25 {% include 'base/base.pib.html' %} 73 26 </div> 74 27 <!-- --> -
economico/views.py
rf591439 r3546d14 345 345 @return Devuelve el response con la página del sub-menu de consulta para el área económica 346 346 """ 347 return render(request, 'economico.consulta.pib.html', {}) 347 form = PIBForm() 348 349 return render(request, 'economico.consulta.pib.html', { 350 'form':form 351 }) 348 352 349 353 @login_required -
gestion_informacion/ajax.py
r369ef90 r3546d14 173 173 174 174 return HttpResponse(json.dumps({'result': False, 'message': str(message)})) 175 176 @login_required 177 def consultar_datos(request): 178 """! 179 Función que permite realizar consultas de datos, en base al modelo y opciones de filtrado 180 181 @author Ing. Roldan Vargas (rvargas at cenditel.gob.ve) 182 @author Edgar A. Linares (elinares at cenditel.gob.ve) 183 @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> 184 @date 30-10-2017 185 @param request <b>{object}</b> Objeto que contiene la petición 186 @return Devuelve un HttpResponse con el JSON correspondiente al estado de la petición 187 """ 188 message = '' 189 ## Nombre de la aplicación o módulo 190 app = request.GET.get('app', None) 191 192 ## Nombre del modelo al cual se realizará la consulta 193 mod = request.GET.get('mods', None) 194 195 filter = request.GET.get('filter', None) 196 197 if filter: 198 filter = json.loads(filter) 199 200 if app and mod: 201 modelo = apps.get_model(app, mod) 202 instance = modelo() 203 consulta = instance.gestion_query(**filter) 204 print("Consulta: ", consulta) 205 206 return HttpResponse(json.dumps({ 207 'result': consulta['result'], 208 'message': consulta['message'], 209 'values': consulta['values'] 210 })) 211 212 message = "No existe la aplicación o el modelo" 213 return HttpResponse(json.dumps({'result': False, 'message': str(message)})) -
gestion_informacion/urls.py
r2037da0 r3546d14 14 14 from django.conf.urls import url 15 15 16 from .ajax import descargar_archivo, cargar_datos 16 from .ajax import descargar_archivo, cargar_datos, consultar_datos 17 17 18 18 __licence__ = "GNU Public License v2" … … 24 24 url(r'^ajax/descargar_archivo/?$', descargar_archivo, name='cm_descargar_archivo'), 25 25 url(r'^ajax/cargar_datos/?$', cargar_datos, name='cm_cargar_datos'), 26 url(r'^ajax/consultar_datos/?$', consultar_datos, name='consultar_datos'), 26 27 ]
Nota: Vea TracChangeset
para ayuda en el uso del visor de conjuntos de cambios.