source: seiven/api_client/services.py @ ca8b5aa

Last change on this file since ca8b5aa was ca8b5aa, checked in by Ing. Roldan D. Vargas G <rvargas@…>, 6 años ago

funciones para el servicio de consulta a SIDEPRO. Incorporación de funciones en plantillas de consulta del módulo productivo

  • Propiedad mode establecida a 100644
File size: 2.8 KB
Línea 
1"""
2Sistema Estadístico Integral de Venezuela - (SEIVEN)
3
4Copyleft (@) 2015 CENDITEL nodo Mérida - https://mpv.cenditel.gob.ve/seiven
5"""
6## @namespace productivo.services
7#
8# Contiene los métodos para consumir servicios REST
9# @author Ing. Roldan Vargas (rvargas at cenditel.gob.ve)
10# @author <a href='http://www.cenditel.gob.ve'>Centro Nacional de Desarrollo e Investigación en Tecnologías Libres
11# (CENDITEL) nodo Mérida - Venezuela</a>
12# @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
13from __future__ import unicode_literals
14
15import json
16
17from .models import AccessToken
18import requests
19
20consult_api = False
21params = {}
22
23def api_anho_registro():
24    global consult_api
25    access_credentials = AccessToken.objects.filter(activo=True)
26
27    if access_credentials:
28        token_type = access_credentials[0].token_type
29        token = access_credentials[0].access_token
30        url = access_credentials[0].url_access + "api/anhos"
31
32        consult_api = requests.get(url=url, headers={'Authorization': '%s %s' % (token_type, token)})
33    return json.loads(consult_api.text)
34
35def api_estados():
36    global consult_api
37    access_credentials = AccessToken.objects.filter(activo=True)
38
39    if access_credentials:
40        token_type = access_credentials[0].token_type
41        token = access_credentials[0].access_token
42        url = access_credentials[0].url_access + "api/estados"
43
44        consult_api = requests.get(url=url, headers={'Authorization': '%s %s' % (token_type, token)})
45
46    return json.loads(consult_api.text)
47
48def api_unidad_economica(rif=None, nombre=None, estado=None, anho=None, id_list=None):
49    global consult_api
50    access_credentials = AccessToken.objects.filter(activo=True)
51
52    if access_credentials:
53        token_type = access_credentials[0].token_type
54        token = access_credentials[0].access_token
55        url = access_credentials[0].url_access + "api/unidad-economica"
56
57        ## Actualiza los datos de consulta por rif si se ha especificado
58        params.update({'rif': rif} if rif else {})
59        ## Actualiza los datos de consulta por nombre de la unidad económica si se ha especificado
60        params.update({'nombre': nombre} if nombre else {})
61        ## Actualiza los datos de consulta por estado si se ha especificado
62        params.update({'estado': estado} if estado else {})
63        ## Actualiza los datos de consulta por año de registro si se ha especificado
64        params.update({'anho': anho} if anho else {})
65        ## Actualiza los datos de consulta por lista de ids si se han especificado
66        params.update({'id_list': id_list} if id_list else {})
67
68        consult_api = requests.get(url=url, headers={'Authorization': '%s %s' % (token_type, token)}, params=params)
69
70    return  json.loads(consult_api.text)
Nota: Vea TracBrowser para ayuda de uso del navegador del repositorio.