1 | # -*- coding: utf-8 -*- |
---|
2 | """ |
---|
3 | Sistema Automatizado de Planificación Integral Comunal SAPIC |
---|
4 | |
---|
5 | Copyleft (@) 2017 CENDITEL nodo Mérida - Copyleft (@) 2017 CENDITEL nodo Mérida - https://planificacion.cenditel.gob.ve/trac/wiki/WikiStart#a5.-SistemaAutomatizadodePlanificaciónIntegralComunalSAPIC |
---|
6 | """ |
---|
7 | ## @package explicacion_situacional.views.caracterizacionFisicaViews |
---|
8 | # |
---|
9 | # Vistas correspondientes a la explicacion situacional |
---|
10 | # @author Ing. Leonel Paolo Hernandez Macchiarulo (lhernandez at cenditel.gob.ve) |
---|
11 | # @author <a href='http://www.cenditel.gob.ve'>Centro Nacional de Desarrollo e Investigación en TecnologÃas Libres |
---|
12 | # (CENDITEL) nodo Mérida - Venezuela</a> |
---|
13 | # @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> |
---|
14 | # @version 1.0 |
---|
15 | |
---|
16 | from django.views.generic import ( |
---|
17 | TemplateView, |
---|
18 | ) |
---|
19 | |
---|
20 | from django.contrib import messages |
---|
21 | from utils.views import LoginRequeridoPerAuth |
---|
22 | |
---|
23 | from explicacion_situacional.modelsEncuestas.modelsConsultas import ( |
---|
24 | Consulta, |
---|
25 | ) |
---|
26 | |
---|
27 | from explicacion_situacional.modelsEncuestas.modelsParticipacion import ( |
---|
28 | RespuestaSino, RespuestaOpciones, |
---|
29 | RespuestaAbierta, RespuestaUbicacion |
---|
30 | ) |
---|
31 | |
---|
32 | |
---|
33 | |
---|
34 | class CaracterizacionEconomicaView(LoginRequeridoPerAuth, TemplateView): |
---|
35 | """! |
---|
36 | Clase que muestra el templates de la caracterización economica de la comunidad |
---|
37 | |
---|
38 | @author Ing. Erwin Leonel P. (eparedes at cenditel.gob.ve) |
---|
39 | @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> |
---|
40 | @date 30-005-2017 |
---|
41 | @version 1.0.0 |
---|
42 | """ |
---|
43 | template_name = "caracterizacion.economica.html" |
---|
44 | group_required = [u"Administradores", u"Voceros", u"Integrantes"] |
---|
45 | |
---|
46 | def get_context_data(self, **kwargs): |
---|
47 | """! |
---|
48 | Metodo que permite cargar de nuevo valores en los datos de contexto de la vista |
---|
49 | |
---|
50 | @author Lully Troconis (ltroconis at cenditel.gob.ve) |
---|
51 | @author Manuel Zambrano |
---|
52 | @copyright <a href='âhttp://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> |
---|
53 | @date 03-07-2018 |
---|
54 | @date 10-09-2018 |
---|
55 | @param self <b>{object}</b> Objeto que instancia la clase |
---|
56 | @param kwargs <b>{object}</b> Objeto que contiene los datos de contexto |
---|
57 | @return Retorna los datos de contexto |
---|
58 | """ |
---|
59 | consulta = None |
---|
60 | si_no, opciones, abierta, ubicacion, consultas = [], [], [], [], [] |
---|
61 | try: |
---|
62 | servicios_pks = [pk_val for pk_val in range(2,3)] |
---|
63 | for pk in servicios_pks: |
---|
64 | consulta = Consulta.objects.select_related().get(pk=pk) |
---|
65 | respuesta_si_no = list(RespuestaSino.objects.filter(user=self.request.user, pregunta__consulta=consulta)) |
---|
66 | si_no = si_no + respuesta_si_no |
---|
67 | respuesta_opciones = list(RespuestaOpciones.objects.filter(user = self.request.user,opcion__pregunta__consulta = consulta)) |
---|
68 | opciones = opciones + respuesta_opciones |
---|
69 | respuesta_abierta = list(RespuestaAbierta.objects.filter(user = self.request.user, pregunta__consulta = consulta)) |
---|
70 | abierta = abierta + respuesta_abierta |
---|
71 | respuesta_ubicacion = list(RespuestaUbicacion.objects.filter(user = self.request.user, pregunta__consulta = consulta)) |
---|
72 | ubicacion = ubicacion + respuesta_ubicacion |
---|
73 | if respuesta_si_no or respuesta_abierta or respuesta_ubicacion or respuesta_opciones: |
---|
74 | consultas.append(pk) |
---|
75 | kwargs['si_no'] = si_no |
---|
76 | kwargs['opciones'] = opciones |
---|
77 | kwargs['abierta'] = abierta |
---|
78 | kwargs['ubicacion'] = ubicacion |
---|
79 | kwargs['consultas'] = consultas |
---|
80 | except Exception as e: |
---|
81 | print("Ocurrió un error durante la consulta" + str(e)) |
---|
82 | |
---|
83 | return super(CaracterizacionEconomicaView, self).get_context_data(**kwargs) |
---|