From af738c165b2c9b38181c05ca60c19840df8fef65 Mon Sep 17 00:00:00 2001 From: Juan Burgos Date: Mon, 3 Aug 2026 23:51:58 +0000 Subject: [PATCH] =?UTF-8?q?correcci=C3=B3n=20de=20plantilla=20personalizad?= =?UTF-8?q?a?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 3 +- media_js_reports/export-pdf-report.js | 35 ++++ templates_views_report-templates/default.htm | 183 ------------------- 3 files changed, 37 insertions(+), 184 deletions(-) create mode 100644 media_js_reports/export-pdf-report.js delete mode 100644 templates_views_report-templates/default.htm diff --git a/README.md b/README.md index eeca73c..78f54b4 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,8 @@ cp -r ../sprpcb-exportpdf-func/templates_reports ./mi_proyecto/templates/reports ### 5. Copiar los archivos necesarios para crear una nueva plantilla de reporte que contendrĂ¡ los botones necesarios: ```shell cp -r ../sprpcb-exportpdf-func/reportes ./mi_proyecto/reportes -cp -r ../sprpcb-exportpdf-func/templates_views_report-templates ./mi_proyecto/templates/views/report-templates +cp ../sprpcb-exportpdf-func/templates_views_report-templates/export-pdf-report.htm ./mi_proyecto/templates/views/report-templates/ +cp ../sprpcb-exportpdf-func/media_js_reports/export-pdf-report.js ./mi_proyecto/media/js/reports/ ``` ### 6. Registrar la plantilla personalizada de proyecto que agrega los botones necesarios: diff --git a/media_js_reports/export-pdf-report.js b/media_js_reports/export-pdf-report.js new file mode 100644 index 0000000..8735fde --- /dev/null +++ b/media_js_reports/export-pdf-report.js @@ -0,0 +1,35 @@ +define([ + 'knockout', + 'viewmodels/report', + 'templates/views/report-templates/export-pdf-report.htm' +], function(ko, ReportViewModel, exportPdfReportTemplate) { + return ko.components.register('export-pdf-report', { + viewModel: function(params) { + params.configKeys = []; + var self = this; + + ReportViewModel.apply(this, [params]); + + //console.log('Params:', params); + this.anexarUbic = ko.observable(false); + this.anexarImagenes = ko.observable(false); + this.anexarPdfs = ko.observable(false); + const boolToStr = (bool) => bool ? "1" : "0"; + + self.resourceId = ko.observable( + params.report?.report_json?.resourceinstanceid || null + ); + + self.exportPDF = function() { + var id = self.resourceId(); + if (id) { + var url = '/export/pdf/' + id + '/' + boolToStr(self.anexarUbic()) + '/' + boolToStr(self.anexarImagenes()) + '/' + boolToStr(self.anexarPdfs()) + '/'; + window.open(url, '_blank'); + } else { + alert('No se encontrĂ³ el ID del recurso.'); + } + }; + }, + template: exportPdfReportTemplate, + }); +}); diff --git a/templates_views_report-templates/default.htm b/templates_views_report-templates/default.htm deleted file mode 100644 index c08065c..0000000 --- a/templates_views_report-templates/default.htm +++ /dev/null @@ -1,183 +0,0 @@ -{% load i18n %} - - -{% block report %} - - -{% block report_title_bar %} - -
- - -
-
-
- - -
-

- - -

- -
- -
-
-
-{% endblock report_title_bar %} - - - -
- - {% block header %} - {% endblock header %} - - {% block body %} - -
- - -
- - -
- - -
-
- - -
-
- -
- - -
-
- {% endblock body %} - - - {% block related_resources %} - - {% endblock related_resources %} - - {% block footer %} - {% endblock footer %} -
-{% endblock report %} - - - -{% block summary %} -
- - -
-

-

- - -
-

- - -

-
-
-
- -
-
-
- - -
- -
- - -
-
-
-{% endblock summary %} - - - - - - -{% block header_form %} -{% endblock header_form %} -