Conjunto de cambios ef6d66a en seiven para gestion_informacion
- Fecha y hora:
- 07/12/2016 16:57:40 (hace 7 años)
- Branches:
- master, carga
- Children:
- dc618c3
- Parents:
- 1366bd7
- Ubicación:
- gestion_informacion
- Ficheros:
-
- 2 editados
Leyenda
- No modificado
- Añadido
- Eliminado
-
gestion_informacion/ajax.py
rfc268ed ref6d66a 17 17 from django.apps import apps 18 18 from django.conf import settings 19 from django.core.files.storage import default_storage 20 from django.core.files.base import ContentFile 19 21 20 from base.messages import MSG_NOT_AJAX, MSG_NOT_DOWNLOAD_FILE, MSG_NOT_UPLOAD_FILE, MSG_CREATED_FILE_SUCCESS, \ 22 from base.messages import ( 23 MSG_NOT_AJAX, MSG_NOT_DOWNLOAD_FILE, MSG_NOT_UPLOAD_FILE, MSG_UPLOAD_FILE_SUCCESS, MSG_CREATED_FILE_SUCCESS, 21 24 MSG_CREATED_FILE_ERROR 25 ) 22 26 23 27 import logging … … 55 59 mod = request.GET.get('mod', None) 56 60 61 ## Filtro para la consulta de datos a descargar 57 62 filter = request.GET.get('filter', None) 58 63 … … 81 86 else: 82 87 sheet.write(0, c, cabecera['tag'], style) 83 sheet.col(c).width = 357 * (len(cabecera['tag']) + 1)88 sheet.col(c).width = int(256 * (len(cabecera['tag']) + 1)) 84 89 c += 1 85 90 … … 87 92 for cabecera in datos['cabecera'][1]: 88 93 sheet.write(1, i, cabecera['label'], font_bold) 89 sheet.col(i).width = 256 * (len(cabecera['label']) + 1)94 sheet.col(i).width = int(256 * (len(cabecera['label']) + 1)) 90 95 i += 1 91 96 … … 115 120 message = "%s. ERROR: %s" % (message, e) 116 121 return HttpResponse(json.dumps({'result': False, 'error': str(message)})) 122 123 124 @login_required 125 def cargar_archivo(request): 126 """! 127 Función que permite cargar datos en la aplicacion 128 129 @author Ing. Roldan Vargas (rvargas at cenditel.gob.ve) 130 @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> 131 @date 07-12-2016 132 @param request <b>{object}</b> Objeto que contiene la petición 133 @return Devuelve un HttpResponse con el JSON correspondiente al resultado en la carga de datos 134 """ 135 try: 136 if not request.is_ajax(): 137 return HttpResponse(json.dumps({'result': False, 'message': str(MSG_NOT_AJAX)})) 138 139 ## Nombre de la aplicación o módulo 140 app = request.POST.get('app', None) 141 142 ## Nombre del modelo en el cual se va a buscar la información a incluir en el archivo 143 mod = request.POST.get('mod', None) 144 145 ## Filtro para el registro de datos 146 filter = json.loads("{%s}" % request.POST.get('filter', '')) 147 148 ## Archivo con los datos a procesar 149 file = request.FILES['file'] 150 151 ## Codición que evalúa si se procede a registrar datos 152 if app and mod and file: 153 ruta = '%s/%s' % (settings.GESTION_INFORMACION_FILES, str(file)) 154 archivo = default_storage.save(ruta, ContentFile(file.read())) 155 156 modelo = apps.get_model(app, mod) 157 instance = modelo() 158 process = instance.gestion_process(archivo, **filter) 159 160 if process['result']: 161 return HttpResponse(json.dumps({'result': True, 'message': str(MSG_UPLOAD_FILE_SUCCESS)})) 162 163 return HttpResponse(json.dumps({'result': False, 'message': process['message']})) 164 165 return HttpResponse(json.dumps({'result': True, 'message': str(MSG_UPLOAD_FILE_SUCCESS)})) 166 except Exception as e: 167 message = MSG_NOT_UPLOAD_FILE 168 if settings.DEBUG: 169 message = "%s. ERROR: %s" % (message, e) 170 return HttpResponse(json.dumps({'result': False, 'error': str(message)})) -
gestion_informacion/urls.py
r98aa5f6 ref6d66a 24 24 urlpatterns += [ 25 25 url(r'^ajax/descargar_archivo/?$', gestion_ajax.descargar_archivo, name='descargar_archivo'), 26 url(r'^ajax/cargar_archivo/?$', gestion_ajax.cargar_archivo, name='cargar_archivo'), 26 27 ]
Nota: Vea TracChangeset
para ayuda en el uso del visor de conjuntos de cambios.