From 69dc786caceb6969ca5918572045a3055c948a1d Mon Sep 17 00:00:00 2001 From: Juan Burgos Date: Fri, 7 Aug 2026 15:14:52 +0000 Subject: [PATCH] ajustes a la vista --- pdf/views.py | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/pdf/views.py b/pdf/views.py index ed64a08..45b63d6 100644 --- a/pdf/views.py +++ b/pdf/views.py @@ -52,7 +52,8 @@ def static_map_view(geojson_colec, sat_map): else: style_id = "light-v11" - width, height = 340, 340 + width, height = 400, 400 + padding = 100 # Procedimiento pendiente para extraer el token desde la configuración del sistema access_token = 'pk.eyJ1IjoianNidXJnb3N2IiwiYSI6ImNsaWhoN3ZtMTBxeHUzZm1xaGM0cGpxOXIifQ.ki3vldVB5MwZMqDSpLSjLg' @@ -60,7 +61,7 @@ def static_map_view(geojson_colec, sat_map): mapbox_url = ( f"https://api.mapbox.com/styles/v1/{username}/{style_id}/static/" f"geojson({encoded_geojson})/auto/{width}x{height}" - f"?access_token={access_token}" + f"?padding={padding}&access_token={access_token}" ) response = requests.get(mapbox_url) @@ -171,7 +172,7 @@ def export_resource_pdf(request, resourceid, printubic, satmap, printimgs, print if ruta_gis is not None and bool(int(printubic)) : if reduce(getitem, ruta_gis[:-1], resource_data)[ruta_gis[-1]]["@value"] : map_img = static_map_view(reduce(getitem, ruta_gis[:-1], resource_data)[ruta_gis[-1]]["@value"], bool(int(satmap))) - + resources = [{ 'resourceinstanceid': str(resource.resourceinstanceid), 'graph_id': str(resource.graph_id), @@ -210,23 +211,24 @@ def export_resource_pdf(request, resourceid, printubic, satmap, printimgs, print merger = PdfWriter() merger.append(PdfReader(io.BytesIO(gen_pdf_file))) - - root_path = Path(__file__).resolve().parent.parent if ruta_medios is not None and bool(int(printpdfs)) : for medio in reduce(getitem, ruta_medios[:-1], resource_data)[ruta_medios[-1]] : if medio['formato'] == 'application/pdf' : - medio_file = f'{root_path}/uploadedfiles/{medio["file"]}' - with open(medio_file,'rb') as pdf_file : - merger.append(pdf_file) - output_buffer = io.BytesIO() - merger.write(output_buffer) - merger.close() - else: - output_buffer = io.BytesIO() - merger.write(output_buffer) - merger.close() + try : + response = requests.get(f'{sprpcb_url}{medio["url"]}', timeout=10) + response.raise_for_status() + remote_pdf_stream = io.BytesIO(response.content) + merger.append(remote_pdf_stream) + remote_pdf_stream.close() + except requests.RequestException as e: + return HttpResponse(f"Error al incluir el archivo PDF: {e}", status=502) + + output_buffer = io.BytesIO() + merger.write(output_buffer) output_buffer.seek(0) + merger.close() + response = HttpResponse(output_buffer.read(), content_type='application/pdf') response['Content-Disposition'] = f'attachment; filename="{nombre_pdf}.pdf"' return response \ No newline at end of file