1 | # -*- coding: utf-8 -*- |
---|
2 | """ |
---|
3 | Sistema de Consulta Pública |
---|
4 | |
---|
5 | Copyleft (@) 2017 CENDITEL nodo Mérida - https://planificacion.cenditel.gob.ve/trac/wiki/ModeladoTopicos_2017 |
---|
6 | """ |
---|
7 | ## @package base.functions |
---|
8 | # |
---|
9 | # Clases genéricas de la consulta |
---|
10 | # @author Rodrigo Boet (rboet 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 | from __future__ import unicode_literals |
---|
16 | from consulta.models import Consulta,TipoPregunta |
---|
17 | import requests |
---|
18 | import copy |
---|
19 | |
---|
20 | def cargar_tipo_pregunta(): |
---|
21 | """! |
---|
22 | Función que permite cargar los tipos de preguntas que existen |
---|
23 | |
---|
24 | @author Rodrigo Boet (rboet at cenditel.gob.ve) |
---|
25 | @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> |
---|
26 | @date 15-02-2017 |
---|
27 | @return Devuelve una tupla con los tipos de pregunta |
---|
28 | """ |
---|
29 | |
---|
30 | lista = ('', 'Seleccione...'), |
---|
31 | |
---|
32 | try: |
---|
33 | for tipo_pregunta in TipoPregunta.objects.all(): |
---|
34 | lista += (tipo_pregunta.id, tipo_pregunta.tipo), |
---|
35 | except Exception as e: |
---|
36 | pass |
---|
37 | |
---|
38 | return lista |
---|
39 | |
---|
40 | def cargar_consulta(): |
---|
41 | """! |
---|
42 | Función que permite cargar las consultas |
---|
43 | |
---|
44 | @author Rodrigo Boet (rboet at cenditel.gob.ve) |
---|
45 | @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> |
---|
46 | @date 22-02-2017 |
---|
47 | @return Devuelve una tupla con las consultas |
---|
48 | """ |
---|
49 | |
---|
50 | lista = ('', 'Seleccione...'), |
---|
51 | |
---|
52 | try: |
---|
53 | for consulta in Consulta.objects.all(): |
---|
54 | lista += (consulta.id, consulta.nombre_consulta), |
---|
55 | except Exception as e: |
---|
56 | pass |
---|
57 | |
---|
58 | return lista |
---|
59 | |
---|
60 | |
---|
61 | def cargar_ministerios(): |
---|
62 | """! |
---|
63 | Función que permite cargar los ministerios |
---|
64 | |
---|
65 | @author Antonio Araujo (aaraujo at cenditel.gob.ve) |
---|
66 | @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> |
---|
67 | @date 15-03-2017 |
---|
68 | @return Devuelve una tupla con los ministerios |
---|
69 | """ |
---|
70 | |
---|
71 | # TODO: especificar la URL del servicio a traves de una configuracion y gestion |
---|
72 | # de error en solicitud http |
---|
73 | url = 'http://192.168.12.152:8080/services_sipes/entes_planificadores/views/servicios_webs?display_id=page_1' |
---|
74 | r = requests.get(url) |
---|
75 | |
---|
76 | if not r.status_code == 200: |
---|
77 | print "ERROR:" |
---|
78 | return ('', 'ocurrio error...'), |
---|
79 | |
---|
80 | data = r.json() |
---|
81 | # tupla de entes |
---|
82 | tuplaNameEntity = ('', 'Ministerios '), |
---|
83 | uniqueEntities = [] |
---|
84 | nidEntities = [] |
---|
85 | |
---|
86 | for dicc in data: |
---|
87 | tmpEntity = dicc['name_ente'] |
---|
88 | tmpNidEntity = dicc['nid'] |
---|
89 | if tmpEntity.startswith('Ministerio') and tmpEntity not in uniqueEntities: |
---|
90 | uniqueEntities.append(tmpEntity) |
---|
91 | nidEntities.append(tmpNidEntity) |
---|
92 | else: |
---|
93 | continue |
---|
94 | |
---|
95 | for i in range(0, len(uniqueEntities)) : |
---|
96 | tuplaNameEntity += (nidEntities[i], uniqueEntities[i]), |
---|
97 | |
---|
98 | return tuplaNameEntity |
---|
99 | |
---|
100 | |
---|
101 | def cargar_vicepresidencias(): |
---|
102 | """! |
---|
103 | Función que permite cargar las vicepresidencias |
---|
104 | |
---|
105 | @author Antonio Araujo (aaraujo at cenditel.gob.ve) |
---|
106 | @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> |
---|
107 | @date 15-03-2017 |
---|
108 | @return Devuelve una tupla con las vicepresidencias |
---|
109 | """ |
---|
110 | |
---|
111 | # TODO: especificar la URL del servicio a traves de una configuracion y gestion |
---|
112 | # de error en solicitud http |
---|
113 | url = 'http://192.168.12.152:8080/services_sipes/entes_planificadores/views/servicios_webs?display_id=page_1' |
---|
114 | r = requests.get(url) |
---|
115 | if not r.status_code == 200: |
---|
116 | print "ERROR:" |
---|
117 | return ('', 'ocurrio error...'), |
---|
118 | |
---|
119 | data = r.json() |
---|
120 | |
---|
121 | # tupla de sectores |
---|
122 | tuplaSector = ('', 'Vicepresidencias'), |
---|
123 | uniqueSectors = [] |
---|
124 | nidEntities = [] |
---|
125 | |
---|
126 | for dicc in data: |
---|
127 | tmpSector = dicc['sector'] |
---|
128 | tmpNidEntity = dicc['nid'] |
---|
129 | if tmpSector.startswith('Vicepresidencia') and tmpSector not in uniqueSectors: |
---|
130 | uniqueSectors.append(tmpSector) |
---|
131 | nidEntities.append(tmpNidEntity) |
---|
132 | else: |
---|
133 | continue |
---|
134 | |
---|
135 | for i in range(0, len(uniqueSectors)) : |
---|
136 | tuplaSector += (nidEntities[i], uniqueSectors[i]), |
---|
137 | |
---|
138 | print "####################################" |
---|
139 | print tuplaSector |
---|
140 | print "####################################" |
---|
141 | return tuplaSector |
---|
142 | |
---|
143 | |
---|
144 | def cargar_ambitos(): |
---|
145 | """! |
---|
146 | Función que permite cargar los ambitos |
---|
147 | |
---|
148 | @author Antonio Araujo (aaraujo at cenditel.gob.ve) |
---|
149 | @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> |
---|
150 | @date 22-03-2017 |
---|
151 | @return Devuelve una tupla con los ambitos |
---|
152 | """ |
---|
153 | |
---|
154 | # TODO: especificar la URL del servicio a traves de una configuracion y gestion |
---|
155 | # de error en solicitud http |
---|
156 | url = 'http://192.168.12.152:8080/services_sipes/entes_planificadores/views/lista_ambitos_y_sectores?display_id=ambitos' |
---|
157 | r = requests.get(url) |
---|
158 | if not r.status_code == 200: |
---|
159 | print "ERROR:" |
---|
160 | return ('', 'ocurrio error...'), |
---|
161 | |
---|
162 | data = r.json() |
---|
163 | |
---|
164 | tuplaScope = ('', 'Seleccione...'), |
---|
165 | |
---|
166 | for dicc in data: |
---|
167 | if dicc['parent_id'] == '0' : |
---|
168 | tuplaScope += (dicc['id'], dicc['nombre']), |
---|
169 | |
---|
170 | return tuplaScope |
---|
171 | |
---|
172 | def cargar_sectores(): |
---|
173 | """! |
---|
174 | Función que permite cargar los sectores |
---|
175 | |
---|
176 | @author Antonio Araujo (aaraujo at cenditel.gob.ve) |
---|
177 | @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> |
---|
178 | @date 22-03-2017 |
---|
179 | @return Devuelve una tupla con los ambitos |
---|
180 | """ |
---|
181 | |
---|
182 | # TODO: especificar la URL del servicio a traves de una configuracion y gestion |
---|
183 | # de error en solicitud http |
---|
184 | url = 'http://192.168.12.152:8080/services_sipes/entes_planificadores/views/lista_ambitos_y_sectores?display_id=ambitos' |
---|
185 | r = requests.get(url) |
---|
186 | if not r.status_code == 200: |
---|
187 | print "ERROR:" |
---|
188 | return ('', 'ocurrio error...'), |
---|
189 | |
---|
190 | data = r.json() |
---|
191 | tuplaSector = ('', 'Seleccione...'), |
---|
192 | |
---|
193 | for dicc in data: |
---|
194 | if dicc['parent_id'] != '0' : |
---|
195 | tuplaSector += (dicc['parent_id'], dicc['nombre']), |
---|
196 | |
---|
197 | return tuplaSector |
---|
198 | |
---|
199 | |
---|
200 | def cargar_entes(): |
---|
201 | #data = cargar_entes |
---|
202 | #jsonn = {'x': "xxxx", 'y': "yyyy"} |
---|
203 | #a = 'http://192.168.12.152:8080/services_sipes/entes_planificadores/views/servicios_webs?display_id=page_2&parent=1405.json' |
---|
204 | #data2 = requests.get('http://192.168.12.82/proyectos/usuarios.json').json() |
---|
205 | #print data |
---|
206 | #data = json.loads(jsonn.read()) |
---|
207 | #return render(request,self.template_name, {'data':data}) |
---|
208 | #url = 'http://192.168.12.82/proyectos/usuarios.json' |
---|
209 | #url = 'http://192.168.12.152:8080/services_sipes/entes_planificadores/views/servicios_webs?display_id=page_2&parent=1405' |
---|
210 | url = 'http://192.168.12.152:8080/services_sipes/entes_planificadores/views/servicios_webs?display_id=page_2&parent=1405' |
---|
211 | |
---|
212 | r = requests.get(url) |
---|
213 | if not r.status_code == 200: |
---|
214 | print "ERROR:" |
---|
215 | return ('', 'ocurrio error...'), |
---|
216 | data = r.json() |
---|
217 | |
---|
218 | return data |
---|
219 | ############# |
---|
220 | #url = 'http://192.168.12.152:8080/services_sipes/entes_planificadores/views/servicios_webs?display_id=page_1' |
---|
221 | #url = 'http://192.168.12.152:8080/services_sipes/entes_planificadores/views/servicios_webs?display_id=page_2&parent=1405' |
---|
222 | #url = 'http://192.168.12.152:8080/services_sipes/entes_planificadores/views/servicios_webs?display_id=page_2' |
---|
223 | |
---|
224 | #r = requests.get(url) |
---|
225 | #if not r.status_code == 200: |
---|
226 | # print "ERROR:" |
---|
227 | # return ('', 'ocurrio error...'), |
---|
228 | |
---|
229 | #data = r.json() |
---|
230 | |
---|
231 | #for dicc in data: |
---|
232 | # print dicc |
---|
233 | |
---|
234 | #print "++++++++++++++++++++++++++++++++++" |
---|
235 | #print data |
---|
236 | #print "++++++++++++++++++++++++++++++++++" |
---|
237 | |
---|
238 | |
---|
239 | # tupla de entes |
---|
240 | #tuplaEntes = ('', 'Entes adscritos'), |
---|
241 | #uniqueEntess = [] |
---|
242 | #nidEntities = [] |
---|
243 | |
---|