- Timestamp:
- Dec 22, 2015, 12:31:57 PM (8 years ago)
- Branches:
- master
- Children:
- 3576269
- Parents:
- e79e549
- Location:
- apps/simulacion/sigesic
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
apps/simulacion/sigesic/ajax.py
r1d976e9 r3af6473 26 26 from django.utils.translation import ugettext_lazy as _ 27 27 from apps.comun.constantes import MSG_NOT_AJAX 28 from apps.simulacion.sigesic.models import Producto 28 from apps.simulacion.sigesic.models import Producto, UnidadEconomica, Socio 29 29 from apis.chains.sigesic_graph_builder import build_graph 30 30 … … 103 103 ) 104 104 105 print gen_graph106 107 105 return HttpResponse(json.dumps({'resultado': True, 'narriba': narriba, 'nabajo': nabajo})) 108 106 … … 113 111 except Exception, e: 114 112 return HttpResponse(json.dumps({'resultado': False, 'error': e})) 113 114 115 @login_required() 116 def composicion_accionaria(request): 117 """! 118 Función que permite mostrar datos de la composicion accionaria de una Unidad Economica para determinar los 119 factores hegemonicos 120 121 @author Ing. Roldan Vargas (rvargas at cenditel.gob.ve) 122 @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> 123 @date 22-12-2015 124 @param request <b>{object}</b> Objeto que contiene la petición 125 @return Devuelve respuesta al sistema con los resultados de la composicion accionaria 126 """ 127 try: 128 if not request.is_ajax(): 129 return HttpResponse(json.dumps({'resultado': False, 'error': MSG_NOT_AJAX})) 130 131 rif = request.GET.get('rif', None) 132 133 socios = Socio.objects.using('sigesic').filter(ue_rif__rif=rif) 134 135 lista_socios, lista_empresas, lista_empresas_asociadas = [], [], [] 136 137 ## Datos de los factores hegemonicos 138 for socio in socios: 139 datos_socio = { 140 'rif_pasaporte': socio.rif_pasaporte, 141 'nombre': socio.nombre, 142 'acciones': socio.porcentaje, 143 'rif_empresa': socio.ue_rif.rif, 144 'nombre_empresa': socio.ue_rif.nombre, 145 'nivel': '0 Nivel Base' 146 } 147 148 lista_socios.append(datos_socio) 149 150 if socio.rif_pasaporte: 151 factor_hegemonico = Socio.objects.using('sigesic').filter(rif_pasaporte=socio.rif_pasaporte)#.exclude(pk=socio.pk) 152 153 for factor in factor_hegemonico: 154 datos_socio = { 155 'rif_pasaporte': factor.rif_pasaporte, 156 'nombre': factor.nombre, 157 'acciones': factor.porcentaje, 158 'rif_empresa': factor.ue_rif.rif, 159 'nombre_empresa': factor.ue_rif.nombre, 160 'nivel': '' 161 } 162 163 if socio.rif_pasaporte <> factor.rif_pasaporte: 164 lista_socios.append(datos_socio) 165 166 if factor.ue_rif.rif not in lista_empresas: 167 lista_empresas.append(factor.ue_rif.rif) 168 169 # Datos de las empresas asociadas 170 if lista_empresas: 171 for empresa in lista_empresas: 172 ue = UnidadEconomica.objects.using('sigesic').get(rif=empresa) 173 for s in Socio.objects.using('sigesic').filter(ue_rif=ue): 174 lista_empresas_asociadas.append({ 175 'rif_pasaporte': s.rif_pasaporte, 176 'nombre': s.nombre, 177 'rif_empresa': ue.rif, 178 'nombre_empresa': ue.nombre 179 }) 180 181 182 if lista_socios: 183 return HttpResponse(json.dumps({'resultado': True, 'lista_socios': lista_socios, 184 'lista_empresas_asociadas': lista_empresas_asociadas})) 185 186 return HttpResponse(json.dumps({ 187 'resultado': False, 'error': _(u"La Composicion accionaria de las Unidades Economicas que comprenden la " 188 u"cadena productiva no tienen en comun ningun accionista " 189 u"(persona natural y/o juridica)") 190 })) 191 192 except Exception, e: 193 return HttpResponse(json.dumps({'resultado': False, 'error': e})) -
apps/simulacion/sigesic/urls.py
r1d976e9 r3af6473 28 28 url(r'^ajax/anhos_registro_productos/?$', 'apps.simulacion.sigesic.ajax.anhos_registro_productos', name='anhos_pr'), 29 29 url(r'^ajax/generar_xml_sigesic/?$', 'apps.simulacion.sigesic.ajax.genera_xml_sigesic', name='generar_xml_sigesic'), 30 url(r'^ajax/composicion_accionaria/?$', 'apps.simulacion.sigesic.ajax.composicion_accionaria', 31 name='composicion_accionaria'), 30 32 ]
Note: See TracChangeset
for help on using the changeset viewer.