partkeepr

fork of partkeepr
git clone https://git.e1e0.net/partkeepr.git
Log | Files | Refs | Submodules | README | LICENSE

commit 033a21cf87061a46ed4e14d3df4d2b59f2267c10
parent c7e6ce25f67755504385c42b3b76d6735cd3c1f3
Author: Timo A. Hummel <felicitus@felicitus.org>
Date:   Wed, 24 Jan 2018 23:53:25 +0100

Added remarks renderer to extract remarks from all projects

Diffstat:
Msrc/PartKeepr/FrontendBundle/Resources/public/js/Components/Project/ProjectReportResultGrid.js | 3+++
Asrc/PartKeepr/FrontendBundle/Resources/public/js/Components/Project/Renderers/RemarksRenderer.js | 40++++++++++++++++++++++++++++++++++++++++
Msrc/PartKeepr/FrontendBundle/Resources/views/index.html.twig | 1+
3 files changed, 44 insertions(+), 0 deletions(-)

diff --git a/src/PartKeepr/FrontendBundle/Resources/public/js/Components/Project/ProjectReportResultGrid.js b/src/PartKeepr/FrontendBundle/Resources/public/js/Components/Project/ProjectReportResultGrid.js @@ -45,6 +45,9 @@ Ext.define("PartKeepr.Components.Project.ProjectReportResultGrid", { }, { header: i18n("Remarks"), dataIndex: 'remarks', + renderers: [{ + rtype: "projectReportRemarks" + }], flex: 1 }, { header: i18n("Production Remarks"), diff --git a/src/PartKeepr/FrontendBundle/Resources/public/js/Components/Project/Renderers/RemarksRenderer.js b/src/PartKeepr/FrontendBundle/Resources/public/js/Components/Project/Renderers/RemarksRenderer.js @@ -0,0 +1,40 @@ +Ext.define("PartKeepr.Components.ProjectReport.Renderers.RemarksRenderer", { + extend: "PartKeepr.Components.Grid.Renderers.AbstractRenderer", + + alias: 'columnRenderer.projectReportRemarks', + + renderer: function (value, metaData, record, rowIndex, colIndex, store, view, renderObj) { + return renderObj.getProjectParts(record); + }, + getProjectParts: function (rec) { + var report = rec.getReport(), + i, j, project, projectPart, projectPartQuantities = []; + + for (i = 0; i < report.reportProjects().getCount(); i++) + { + project = report.reportProjects().getAt(i).getProject(); + + for (j = 0; j < project.parts().getCount(); j++) + { + projectPart = project.parts().getAt(j); + + if (projectPart.getPart().getId() === rec.getPart().getId()) + { + if (projectPart.get("remarks") !== "" && projectPart.get("remarks") !== null) + { + projectPartQuantities.push(project.get("name") + ": " + projectPart.get("remarks")); + } + } + } + } + + return projectPartQuantities.join("&#013;&#010;") + }, + + statics: { + rendererName: i18n("Project Report Remark Renderer"), + rendererDescription: i18n("Renders the remarks field"), + + restrictToEntity: ["PartKeepr.ProjectBundle.Entity.ProjectReport"] + } +}); diff --git a/src/PartKeepr/FrontendBundle/Resources/views/index.html.twig b/src/PartKeepr/FrontendBundle/Resources/views/index.html.twig @@ -145,6 +145,7 @@ '@PartKeeprFrontendBundle/Resources/public/js/Data/store/UserProvidersStore.js' '@PartKeeprFrontendBundle/Resources/public/js/Components/Project/Renderers/MetaPartRenderer.js' '@PartKeeprFrontendBundle/Resources/public/js/Components/Project/Renderers/QuantityRenderer.js' + '@PartKeeprFrontendBundle/Resources/public/js/Components/Project/Renderers/RemarksRenderer.js' '@PartKeeprFrontendBundle/Resources/public/js/Models/ProjectReportList.js' '@PartKeeprFrontendBundle/Resources/public/js/Models/SystemInformationRecord.js' '@PartKeeprFrontendBundle/Resources/public/js/Models/StatisticSample.js'