1 | # -*- coding: utf-8 -*- |
---|
2 | from django.shortcuts import * |
---|
3 | from django.contrib.auth.decorators import login_required |
---|
4 | from comun.utilidades import dictfetchall, codigos_armonizados_con_longitud |
---|
5 | from comun.constantes import IMPORTACIONES, EXPORTACIONES, \ |
---|
6 | ESTANDAR_CLASIFICACION, \ |
---|
7 | MAXIMO_PRINCIPALES_PRODUCTOS_ORIGEN, \ |
---|
8 | REPORTES_DISPONIBLES, MIL, MILLON |
---|
9 | from comun.models import Pais |
---|
10 | from django.utils.translation import ugettext_lazy as _l, ugettext as _ |
---|
11 | |
---|
12 | import os |
---|
13 | import json |
---|
14 | |
---|
15 | def dictfetchall(cursor): |
---|
16 | "Returns all rows from a cursor as a dict" |
---|
17 | desc = cursor.description |
---|
18 | return [ |
---|
19 | dict(zip([col[0] for col in desc], row)) |
---|
20 | for row in cursor.fetchall() |
---|
21 | ] |
---|
22 | |
---|
23 | def miCursorSql(): |
---|
24 | from django.db import connection |
---|
25 | micuro = connection.cursor() |
---|
26 | micuro.execute("select id,iso3166_2,iso3166_3 from comun_pais where anyo_inclusion is not null") |
---|
27 | return dictfetchall(micuro) |
---|
28 | |
---|
29 | def paisesjson(request): |
---|
30 | start = int(request.GET['jtStartIndex']) |
---|
31 | end = int(request.GET['jtStartIndex']) + int(request.GET['jtPageSize']) |
---|
32 | #paises = Pais.objects.filter(anyo_inclusion__isnull=False) |
---|
33 | |
---|
34 | ttarea = miCursorSql() |
---|
35 | for row in ttarea: |
---|
36 | row['iso3166_3']=_(row['iso3166_3']) |
---|
37 | |
---|
38 | cuantos = ttarea.__len__() |
---|
39 | ltarea = ttarea[start:end] |
---|
40 | jsota = {} |
---|
41 | registros = [] |
---|
42 | if (cuantos/10>1): |
---|
43 | proximo = True |
---|
44 | else: |
---|
45 | proximo = None |
---|
46 | |
---|
47 | jsota["meta"]= {"limit": 10, "next": proximo, "offset": 0, "previous": None, "total_count": cuantos} |
---|
48 | jsota["Result"]= "OK" |
---|
49 | jsota["TotalRecordCount"] = cuantos |
---|
50 | |
---|
51 | |
---|
52 | jsota["Records"]=ltarea |
---|
53 | |
---|
54 | return HttpResponse(json.dumps(jsota),content_type="application/json") |
---|
55 | |
---|
56 | |
---|
57 | def codigos_arancelarios(request): |
---|
58 | paises = request.POST['paises'] |
---|
59 | if paises == '': |
---|
60 | return render_to_response('aranceles/aranceles_consulta.html', context_instance=RequestContext(request)) |
---|
61 | |
---|
62 | paises = paises.split(",")[:-1] |
---|
63 | dpaises = Pais.objects.filter(iso3166_2__in = paises) |
---|
64 | |
---|
65 | return render_to_response('aranceles/aranceles.html', context_instance=RequestContext(request)) |
---|
66 | |
---|
67 | |
---|
68 | @login_required |
---|
69 | def aranceles(request): |
---|
70 | """ |
---|
71 | Vista inicial para filtros de aranceles |
---|
72 | """ |
---|
73 | |
---|
74 | return render_to_response('aranceles/aranceles.html', context_instance=RequestContext(request)) |
---|
75 | |
---|
76 | @login_required |
---|
77 | def aranceles_consulta(request): |
---|
78 | """ |
---|
79 | Vista inicial para filtros consulta de aranceles |
---|
80 | """ |
---|
81 | |
---|
82 | return render_to_response('aranceles/aranceles_consulta.html', context_instance=RequestContext(request)) |
---|