sendung-lib 0.0.10 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"sendung-lib.mjs","sources":["../../../projects/sendung-lib/src/lib/sendung-lib.service.ts","../../../projects/sendung-lib/src/lib/sendung-lib.component.ts","../../../projects/sendung-lib/src/lib/services/locale.de.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/info-cell/info-cell.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/info-cell/info-cell.component.html","../../../projects/sendung-lib/src/lib/services/form.service.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/radioaktiv-cell/radioaktiv-cell.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/radioaktiv-cell/radioaktiv-cell.component.html","../../../projects/sendung-lib/src/lib/components/colli-ereignisse/colli-info-cell/colli-info-cell.component.ts","../../../projects/sendung-lib/src/lib/components/colli-ereignisse/colli-info-cell/colli-info-cell.component.html","../../../projects/sendung-lib/src/lib/components/colli-ereignisse/colli-ereignisse.component.ts","../../../projects/sendung-lib/src/lib/components/colli-ereignisse/colli-ereignisse.component.html","../../../projects/sendung-lib/src/lib/components/sendung-ereignisse/sendung-ereignisse-info-cell/sendung-ereignisse-info-cell.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-ereignisse/sendung-ereignisse-info-cell/sendung-ereignisse-info-cell.component.html","../../../projects/sendung-lib/src/lib/components/sendung-ereignisse/sendung-ereignisse.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-ereignisse/sendung-ereignisse.component.html","../../../projects/sendung-lib/src/lib/components/gefahrgut/gefahrgut.component.ts","../../../projects/sendung-lib/src/lib/components/gefahrgut/gefahrgut.component.html","../../../projects/sendung-lib/src/lib/components/sendungskette/empfaenger-details/empfaenger-details.component.ts","../../../projects/sendung-lib/src/lib/components/sendungskette/empfaenger-details/empfaenger-details.component.html","../../../projects/sendung-lib/src/lib/components/sendungskette/sendungskette.component.ts","../../../projects/sendung-lib/src/lib/components/sendungskette/sendungskette.component.html","../../../projects/sendung-lib/src/lib/components/dispo-detail/dispo-detail.component.ts","../../../projects/sendung-lib/src/lib/components/dispo-detail/dispo-detail.component.html","../../../projects/sendung-lib/src/lib/components/colli-uebersicht/colli-uebersicht.component.ts","../../../projects/sendung-lib/src/lib/components/colli-uebersicht/colli-uebersicht.component.html","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/aktuelle-daten/aktuelle-daten.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/aktuelle-daten/aktuelle-daten.component.html","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/korrektur-daten/korrektur-daten.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/korrektur-daten/korrektur-daten.component.html","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/korrektur-button-cell/korrektur-button-cell.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/korrektur-button-cell/korrektur-button-cell.component.html","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-information.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-information.component.html","../../../projects/sendung-lib/src/public-api.ts","../../../projects/sendung-lib/src/sendung-lib.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SendungLibService {\r\n\r\n constructor() { }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-sendung-lib',\r\n standalone: true,\r\n imports: [],\r\n template: ``,\r\n styles: ``\r\n})\r\nexport class SendungLibComponent {\r\n\r\n}\r\n","// Example locale file for English, give this to your locale team to translate\r\n\r\nexport const AG_GRID_LOCALE_DE = {\r\n // Set Filter\r\n selectAll: '(Select All)',\r\n selectAllSearchResults: '(Select All Search Results)',\r\n searchOoo: 'Search...',\r\n blanks: '(Blanks)',\r\n noMatches: 'No matches',\r\n\r\n // Number Filter & Text Filter\r\n filterOoo: 'Filter...',\r\n equals: 'Gleich',\r\n notEqual: 'Ungleich',\r\n empty: 'Choose One',\r\n\r\n // Number Filter\r\n lessThan: 'Kleiner als',\r\n greaterThan: 'Größer als',\r\n lessThanOrEqual: 'Kleiner oder gleich',\r\n greaterThanOrEqual: 'Größer oder gleich',\r\n inRange: 'In range',\r\n inRangeStart: 'von',\r\n inRangeEnd: 'bis',\r\n\r\n // Text Filter\r\n contains: 'Enthält',\r\n notContains: 'Enthält nicht',\r\n startsWith: 'Startet mit',\r\n endsWith: 'Ended mit',\r\n\r\n // Date Filter\r\n dateFormatOoo: 'yyyy-mm-dd',\r\n\r\n // Filter Conditions\r\n andCondition: 'UND',\r\n orCondition: 'ODER',\r\n\r\n // Filter Buttons\r\n applyFilter: 'Apply',\r\n resetFilter: 'Reset',\r\n clearFilter: 'Clear',\r\n cancelFilter: 'Cancel',\r\n\r\n // Filter Titles\r\n textFilter: 'Text Filter',\r\n numberFilter: 'Number Filter',\r\n dateFilter: 'Date Filter',\r\n setFilter: 'Set Filter',\r\n\r\n // Side Bar\r\n columns: 'Columns',\r\n filters: 'Filters',\r\n\r\n // columns tool panel\r\n pivotMode: 'Pivot Mode',\r\n groups: 'Row Groups',\r\n rowGroupColumnsEmptyMessage: 'Drag here to set row groups',\r\n values: 'Values',\r\n valueColumnsEmptyMessage: 'Drag here to aggregate',\r\n pivots: 'Column Labels',\r\n pivotColumnsEmptyMessage: 'Drag here to set column labels',\r\n\r\n // Header of the Default Group Column\r\n group: 'Group',\r\n\r\n // Other\r\n loadingOoo: 'Loading...',\r\n noRowsToShow: 'No Rows To Show',\r\n enabled: 'Enabled',\r\n\r\n // Menu\r\n pinColumn: 'Pin Column',\r\n pinLeft: 'Pin Left',\r\n pinRight: 'Pin Right',\r\n noPin: 'No Pin',\r\n valueAggregation: 'Value Aggregation',\r\n autosizeThiscolumn: 'Autosize This Column',\r\n autosizeAllColumns: 'Autosize All Columns',\r\n groupBy: 'Group by',\r\n ungroupBy: 'Un-Group by',\r\n resetColumns: 'Reset Columns',\r\n expandAll: 'Expand All',\r\n collapseAll: 'Close All',\r\n copy: 'Copy',\r\n ctrlC: 'Ctrl+C',\r\n copyWithHeaders: 'Copy With Headers',\r\n paste: 'Paste',\r\n ctrlV: 'Ctrl+V',\r\n export: 'Export',\r\n csvExport: 'CSV Export',\r\n excelExport: 'Excel Export (.xlsx)',\r\n excelXmlExport: 'Excel Export (.xml)',\r\n\r\n // Enterprise Menu Aggregation and Status Bar\r\n sum: 'Sum',\r\n min: 'Min',\r\n max: 'Max',\r\n none: 'None',\r\n count: 'Count',\r\n avg: 'Average',\r\n filteredRows: 'Filtered',\r\n selectedRows: 'Selected',\r\n totalRows: 'Total Rows',\r\n totalAndFilteredRows: 'Rows',\r\n more: 'More',\r\n to: 'to',\r\n of: 'of',\r\n page: 'Page',\r\n nextPage: 'Next Page',\r\n lastPage: 'Last Page',\r\n firstPage: 'First Page',\r\n previousPage: 'Previous Page',\r\n\r\n // Enterprise Menu (Charts)\r\n pivotChartAndPivotMode: 'Pivot Chart & Pivot Mode',\r\n pivotChart: 'Pivot Chart',\r\n chartRange: 'Chart Range',\r\n\r\n columnChart: 'Column',\r\n groupedColumn: 'Grouped',\r\n stackedColumn: 'Stacked',\r\n normalizedColumn: '100% Stacked',\r\n\r\n barChart: 'Bar',\r\n groupedBar: 'Grouped',\r\n stackedBar: 'Stacked',\r\n normalizedBar: '100% Stacked',\r\n\r\n pieChart: 'Pie',\r\n pie: 'Pie',\r\n doughnut: 'Doughnut',\r\n\r\n line: 'Line',\r\n\r\n xyChart: 'X Y (Scatter)',\r\n scatter: 'Scatter',\r\n bubble: 'Bubble',\r\n\r\n areaChart: 'Area',\r\n area: 'Area',\r\n stackedArea: 'Stacked',\r\n normalizedArea: '100% Stacked',\r\n\r\n histogramChart: 'Histogram',\r\n\r\n // Charts\r\n pivotChartTitle: 'Pivot Chart',\r\n rangeChartTitle: 'Range Chart',\r\n settings: 'Settings',\r\n data: 'Data',\r\n format: 'Format',\r\n categories: 'Categories',\r\n defaultCategory: '(None)',\r\n series: 'Series',\r\n xyValues: 'X Y Values',\r\n paired: 'Paired Mode',\r\n axis: 'Axis',\r\n navigator: 'Navigator',\r\n color: 'Color',\r\n thickness: 'Thickness',\r\n xType: 'X Type',\r\n automatic: 'Automatic',\r\n category: 'Category',\r\n number: 'Number',\r\n time: 'Time',\r\n xRotation: 'X Rotation',\r\n yRotation: 'Y Rotation',\r\n ticks: 'Ticks',\r\n width: 'Width',\r\n height: 'Height',\r\n length: 'Length',\r\n padding: 'Padding',\r\n spacing: 'Spacing',\r\n chart: 'Chart',\r\n title: 'Title',\r\n titlePlaceholder: 'Chart title - double click to edit',\r\n background: 'Background',\r\n font: 'Font',\r\n top: 'Top',\r\n right: 'Right',\r\n bottom: 'Bottom',\r\n left: 'Left',\r\n labels: 'Labels',\r\n size: 'Size',\r\n minSize: 'Minimum Size',\r\n maxSize: 'Maximum Size',\r\n legend: 'Legend',\r\n position: 'Position',\r\n markerSize: 'Marker Size',\r\n markerStroke: 'Marker Stroke',\r\n markerPadding: 'Marker Padding',\r\n itemSpacing: 'Item Spacing',\r\n itemPaddingX: 'Item Padding X',\r\n itemPaddingY: 'Item Padding Y',\r\n layoutHorizontalSpacing: 'Horizontal Spacing',\r\n layoutVerticalSpacing: 'Vertical Spacing',\r\n strokeWidth: 'Stroke Width',\r\n offset: 'Offset',\r\n offsets: 'Offsets',\r\n tooltips: 'Tooltips',\r\n callout: 'Callout',\r\n markers: 'Markers',\r\n shadow: 'Shadow',\r\n blur: 'Blur',\r\n xOffset: 'X Offset',\r\n yOffset: 'Y Offset',\r\n lineWidth: 'Line Width',\r\n normal: 'Normal',\r\n bold: 'Bold',\r\n italic: 'Italic',\r\n boldItalic: 'Bold Italic',\r\n predefined: 'Predefined',\r\n fillOpacity: 'Fill Opacity',\r\n strokeOpacity: 'Line Opacity',\r\n histogramBinCount: 'Bin count',\r\n columnGroup: 'Column',\r\n barGroup: 'Bar',\r\n pieGroup: 'Pie',\r\n lineGroup: 'Line',\r\n scatterGroup: 'X Y (Scatter)',\r\n areaGroup: 'Area',\r\n histogramGroup: 'Histogram',\r\n groupedColumnTooltip: 'Grouped',\r\n stackedColumnTooltip: 'Stacked',\r\n normalizedColumnTooltip: '100% Stacked',\r\n groupedBarTooltip: 'Grouped',\r\n stackedBarTooltip: 'Stacked',\r\n normalizedBarTooltip: '100% Stacked',\r\n pieTooltip: 'Pie',\r\n doughnutTooltip: 'Doughnut',\r\n lineTooltip: 'Line',\r\n groupedAreaTooltip: 'Area',\r\n stackedAreaTooltip: 'Stacked',\r\n normalizedAreaTooltip: '100% Stacked',\r\n scatterTooltip: 'Scatter',\r\n bubbleTooltip: 'Bubble',\r\n histogramTooltip: 'Histogram',\r\n noDataToChart: 'No data available to be charted.',\r\n pivotChartRequiresPivotMode: 'Pivot Chart requires Pivot Mode enabled.'\r\n};\r\n","import {Component, OnInit, TemplateRef} from '@angular/core';\r\nimport {BsModalRef, BsModalService, ModalModule, ModalOptions} from \"ngx-bootstrap/modal\";\r\nimport {IAfterGuiAttachedParams, ICellRendererParams} from \"ag-grid-community\";\r\nimport {Lightbox} from \"ngx-lightbox\";\r\nimport {faInfoCircle, faImage} from '@fortawesome/free-solid-svg-icons';\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\nimport {NgClass} from \"@angular/common\";\r\nimport {ICellRendererAngularComp} from \"ag-grid-angular\";\r\n\r\n@Component({\r\n selector: 'lib-info-cell',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent,\r\n ModalModule,\r\n NgClass\r\n ],\r\n templateUrl: './info-cell.component.html',\r\n styleUrl: './info-cell.component.css'\r\n})\r\nexport class InfoCellComponent implements ICellRendererAngularComp, OnInit{\r\n public modalRef: BsModalRef;\r\n faInfoCircle = faInfoCircle;\r\n faImage = faImage;\r\n public params;\r\n public highlight: boolean = false;\r\n public alvImage: string[];\r\n public alvText: string;\r\n private _albums = [];\r\n\r\n constructor(private modalService: BsModalService, private lightbox: Lightbox) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.checkValues(this.params.data.hinweisEmpfaenger);\r\n this.checkValues(this.params.data.hinweisOperativ);\r\n this.alvImage = this.params.data.alvImage;\r\n this.alvText = this.params.data.alvText;\r\n }\r\n\r\n afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\r\n }\r\n\r\n refresh(params: ICellRendererParams): boolean {\r\n return false;\r\n }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.params = params;\r\n }\r\n\r\n displayInfos(template: TemplateRef<void>): void {\r\n const config: ModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n animated: true,\r\n ignoreBackdropClick: true,\r\n };\r\n this.modalRef = this.modalService.show(template, config);\r\n }\r\n\r\n checkValues(values: any) {\r\n if (values === null) {\r\n return 'Keine Hinweise vorhanden!';\r\n } else {\r\n this.highlight = true;\r\n return values;\r\n }\r\n }\r\n\r\n showEmpfaengerName(param: any) {\r\n const name1 = param.data.empfaengerName1 !== null ? param.data.empfaengerName1 : '';\r\n const name2 = param.data.empfaengerName2 !== null ? param.data.empfaengerName2 : '';\r\n const name3 = param.data.empfaengerName3 !== null ? param.data.empfaengerName3 : '';\r\n return name1 + ' ' + name2 + ' ' + name3;\r\n }\r\n\r\n public zoomImg(imgsrcArray: string[]) {\r\n this._albums = [];\r\n imgsrcArray.map((imgsrc) => {\r\n const src = imgsrc;\r\n const album = {\r\n src: src\r\n };\r\n this._albums.push(album);\r\n });\r\n\r\n this.lightbox.open(this._albums, 0);\r\n }\r\n\r\n}\r\n","<div (click)=\"displayInfos(template)\" class=\"customCss\">\r\n <fa-icon [ngClass]=\"highlight ? 'highlight' : 'notHighlighted'\" [icon]=\"faInfoCircle\"></fa-icon>\r\n</div>\r\n\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title pull-left\">Hinweise</h5>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">&times;</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Empfänger:</span><br>\r\n {{ this.showEmpfaengerName(params) }}<br>\r\n {{ params.data.empfaengerStrasse }} &nbsp; {{ params.data.empfaengerHausnr }}<br>\r\n {{ params.data.empfaengerPlz }} &nbsp; {{ params.data.empfaengerOrt }}<br>\r\n {{ params.data.empfaengerLand }}<br>\r\n <hr>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Operative Hinweise: </span>\r\n <p>{{ this.checkValues(params.data.hinweisEmpfaenger) }}</p>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Empfänger Hinweise: </span>\r\n <p>{{ this.checkValues(params.data.hinweisOperativ) }}</p>\r\n </div>\r\n @if (alvImage?.length > 0) {\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold; margin-right: 1rem\">ALV-Infos</span>\r\n <fa-icon (click)=\"zoomImg(alvImage)\" [icon]=\"faImage\" size=\"lg\"></fa-icon>\r\n <p>{{ alvText }}</p>\r\n </div>\r\n }\r\n</ng-template>\r\n\r\n","import {Injectable} from '@angular/core';\r\nimport {BehaviorSubject} from 'rxjs';\r\nimport {Dienst} from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FormService {\r\n public submittedForm = new BehaviorSubject(null);\r\n\r\n public dienste = new BehaviorSubject(null);\r\n public dienste$ = this.dienste.asObservable();\r\n\r\n public allowedDienste = new BehaviorSubject([]);\r\n public oldDienst;\r\n\r\n public shipmentInfo = new BehaviorSubject([]);\r\n\r\n public selbstabholer = new BehaviorSubject(false);\r\n public selbstAbh;\r\n\r\n\r\n constructor() {\r\n this.allowedDienste.subscribe((allowedDienste: Dienst[]) => {\r\n allowedDienste.forEach((oldDienst: Dienst) => {\r\n this.oldDienst = oldDienst\r\n })\r\n });\r\n this.selbstabholer.subscribe((selbstAbh: boolean) => {\r\n this.selbstAbh = selbstAbh;\r\n })\r\n }\r\n\r\n getSubmittedForm(form) {\r\n let formsValue = form;\r\n let dienstKorrektur = {};\r\n\r\n if (formsValue.dienste !== null) {\r\n dienstKorrektur =\r\n {\r\n diensttypId: formsValue.dienste.id,\r\n datumUhrzeit: formsValue.datumUhrzeit\r\n }\r\n } else if(this.selbstAbh) {\r\n dienstKorrektur =\r\n {\r\n diensttypId: 83,\r\n datumUhrzeit: formsValue.datumUhrzeit\r\n }\r\n }\r\n else {\r\n dienstKorrektur;\r\n }\r\n\r\n let reqBody: any = {\r\n sendungId: null,\r\n dienstKorrektur: dienstKorrektur,\r\n colli: formsValue.colli,\r\n paletten: formsValue.palette,\r\n gesamtgewicht: formsValue.gewicht\r\n };\r\n\r\n this.submittedForm.next(reqBody);\r\n }\r\n\r\n setDienste(dienste) {\r\n this.dienste.next(dienste);\r\n };\r\n}\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {GridApi, IAfterGuiAttachedParams} from \"ag-grid-community\";\r\nimport {Dienst, ShipmentInfo} from \"../../../models\";\r\nimport {FormService} from \"../../../services/form.service\";\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\n\r\n@Component({\r\n selector: 'lib-radioaktiv-cell',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent\r\n ],\r\n templateUrl: './radioaktiv-cell.component.html',\r\n styleUrl: './radioaktiv-cell.component.css'\r\n})\r\nexport class RadioaktivCellComponent implements OnInit{\r\n\r\n public params: any;\r\n public gridApi: GridApi;\r\n\r\n public isRadioActive: boolean = false;\r\n\r\n constructor(private formService: FormService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.formService.shipmentInfo.subscribe((shipmentInfoDetail: ShipmentInfo[]) => {\r\n shipmentInfoDetail?.forEach((info: ShipmentInfo) => {\r\n info.dienste?.forEach((dienst: Dienst) => {\r\n if (dienst.dienstart === 'I' && dienst.code === 'GGVS3' || dienst.code === 'GGVS8') {\r\n this.isRadioActive = true;\r\n }\r\n });\r\n });\r\n });\r\n }\r\n\r\n agInit(params: any): void {\r\n this.params = params;\r\n this.gridApi = params.api;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n }\r\n\r\n refresh(): boolean {\r\n return true;\r\n }\r\n\r\n afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\r\n }\r\n\r\n}\r\n","@if (isRadioActive) {\r\n <img class=\"image-size\" src=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA3NS45NCA3NS45NyI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZWQwMWM7fS5jbHMtMntmaWxsOiMwMTAxMDE7fTwvc3R5bGU+PC9kZWZzPjxnIGlkPSJFYmVuZV8yIiBkYXRhLW5hbWU9IkViZW5lIDIiPjxnIGlkPSJFYmVuZV8xLTIiIGRhdGEtbmFtZT0iRWJlbmUgMSI+PGVsbGlwc2UgY2xhc3M9ImNscy0xIiBjeD0iMzcuOTciIGN5PSIzNy45OCIgcng9IjM3Ljk3IiByeT0iMzcuOTgiLz48cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik0zOCw3Mi41N2EzNC41OCwzNC41OCwwLDAsMS0yNC40NC01OUEzNC41NywzNC41NywwLDAsMSw2Mi40MSw2Mi40NCwzNC4zNCwzNC4zNCwwLDAsMSwzOCw3Mi41N1pNMzgsNi4xMkEzMS44NywzMS44NywwLDEsMCw2OS44MywzOCwzMS44OSwzMS44OSwwLDAsMCwzOCw2LjEyWiIvPjxjaXJjbGUgY2xhc3M9ImNscy0yIiBjeD0iMzcuOTciIGN5PSIzNy45OCIgcj0iNS42Ii8+PHBhdGggY2xhc3M9ImNscy0yIiBkPSJNMzgsNDYuNTdhOC43Nyw4Ljc3LDAsMCwxLTQuNTktMS4zbC04LjY4LDE1YTI2LjA1LDI2LjA1LDAsMCwwLDI2LjUzLDBsLTguNjgtMTVBOC43MSw4LjcxLDAsMCwxLDM4LDQ2LjU3WiIvPjxwYXRoIGNsYXNzPSJjbHMtMiIgZD0iTTMzLjgyLDMwLjE0bC04LjY4LTE1QTI2LjEyLDI2LjEyLDAsMCwwLDExLjg4LDM3LjMySDI5LjI1QTguNzMsOC43MywwLDAsMSwzMy44MiwzMC4xNFoiLz48cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik00Ni42OSwzNy4zMkg2NC4wNkEyNi4xNCwyNi4xNCwwLDAsMCw1MC44LDE1LjFsLTguNjgsMTVBOC43NSw4Ljc1LDAsMCwxLDQ2LjY5LDM3LjMyWiIvPjwvZz48L2c+PC9zdmc+\">\r\n}\r\n\r\n\r\n\r\n","import {Component, OnInit, TemplateRef} from '@angular/core';\r\nimport {ICellRendererAngularComp} from \"ag-grid-angular\";\r\nimport {BsModalRef, BsModalService, ModalOptions} from \"ngx-bootstrap/modal\";\r\nimport {IAfterGuiAttachedParams, ICellRendererParams} from \"ag-grid-community\";\r\nimport {faInfoCircle} from '@fortawesome/free-solid-svg-icons';\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\n\r\n@Component({\r\n selector: 'lib-colli-info-cell',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent\r\n ],\r\n templateUrl: './colli-info-cell.component.html',\r\n styleUrl: './colli-info-cell.component.css'\r\n})\r\nexport class ColliInfoCellComponent implements OnInit, ICellRendererAngularComp {\r\n modalRef: BsModalRef;\r\n faInfoCircle = faInfoCircle;\r\n public params: ICellRendererParams;\r\n\r\n\r\n constructor(private modalService: BsModalService) {}\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\r\n }\r\n\r\n refresh(params: ICellRendererParams): boolean {\r\n return false;\r\n }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.params = params;\r\n }\r\n\r\n displayInfos(template: TemplateRef<any>): void {\r\n const config: ModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n animated: true,\r\n ignoreBackdropClick: true,\r\n };\r\n this.modalRef = this.modalService.show(template, config);\r\n }\r\n\r\n showDimensions(values: any) {\r\n const laenge = values.laenge !== null ? values.laenge : '0';\r\n const breite = values.breite !== null ? values.breite : '0';\r\n const hoehe = values.hoehe !== null ? values.hoehe : '0';\r\n const volumen = values.volumen !== null ? values.volumen : '0';\r\n\r\n return laenge + ' ' + ' x ' + breite + ' ' + ' x ' + hoehe + ' ' + ' / ' + volumen;\r\n }\r\n\r\n checkValues(values: any) {\r\n if (values === '' || values === undefined || values === null) {\r\n return '-';\r\n } else {\r\n return values;\r\n }\r\n }\r\n}\r\n","<div (click)=\"displayInfos(template)\" class=\"customCss\">\r\n <fa-icon [icon]=\"faInfoCircle\"></fa-icon>\r\n</div>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title pull-left\">Hinweise</h5>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">&times;</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Länge / Breite / Höhe / m³: </span><br>\r\n {{ this.showDimensions(params.data) }}\r\n <hr>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Bearbeiter: </span><br>\r\n {{ this.checkValues(params.data.bearbeiter) }}\r\n <hr>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Text: </span><br>\r\n {{ this.checkValues(params.data.text) }}\r\n </div>\r\n</ng-template>\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {Observable} from \"rxjs\";\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\nimport {ColliInfoCellComponent} from \"./colli-info-cell/colli-info-cell.component\";\r\nimport {ColliEvent} from \"../../models\";\r\n\r\n@Component({\r\n selector: 'lib-colli-ereignisse',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './colli-ereignisse.component.html',\r\n styleUrl: './colli-ereignisse.component.css'\r\n})\r\nexport class ColliEreignisseComponent implements OnInit {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public show: boolean;\r\n\r\n public locale = AG_GRID_LOCALE_DE;\r\n\r\n @Input() colliEvent: Observable<ColliEvent[]>;\r\n\r\n // @Input() set colliEvent(data: Observable<any>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if (this.gridApi) {\r\n // if (data) {\r\n // data.subscribe((colliEvent) => {\r\n // this.gridApi.setGridOption('rowData', colliEvent);\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true,\r\n cellClass: 'locked-col'\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'scantyp',\r\n headerName: 'Typ',\r\n minWidth: 100\r\n },\r\n {\r\n field: 'tournr',\r\n headerName: 'Tournr',\r\n maxWidth: 100\r\n },\r\n {\r\n field: 'statustyp',\r\n headerName: 'CE'\r\n },\r\n {\r\n field: 'depotnr',\r\n headerName: 'DepotNr',\r\n maxWidth: 120\r\n },\r\n {\r\n field: 'barcode',\r\n headerName: 'Barcode',\r\n minWidth: 250\r\n },\r\n {\r\n valueGetter: this.sliceTime,\r\n headerName: 'Datum/Zeit',\r\n minWidth: 150,\r\n sort: 'desc'\r\n },\r\n {\r\n field: 'geraetenummer',\r\n headerName: 'Gerät',\r\n maxWidth: 200\r\n },\r\n {\r\n field: 'istRutsche',\r\n headerName: 'Rutsche',\r\n maxWidth: 130\r\n },\r\n {\r\n field: 'storno',\r\n headerName: 'Storno',\r\n maxWidth: 100\r\n },\r\n {\r\n headerName: 'Hinweise',\r\n cellRenderer: ColliInfoCellComponent,\r\n maxWidth: 150\r\n },\r\n ];\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.colliEvent) {\r\n this.colliEvent.subscribe((colliEvent) => {\r\n this.gridApi.setGridOption('rowData', colliEvent);\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n }\r\n\r\n sliceTime(params: any) {\r\n return params.data?.zeitpunkt?.slice(0, 16);\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body\">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n [enableCellTextSelection]=\"true\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, OnInit, TemplateRef} from '@angular/core';\r\nimport {ICellRendererAngularComp} from \"ag-grid-angular\";\r\nimport {BsModalRef, BsModalService, ModalOptions} from \"ngx-bootstrap/modal\";\r\nimport {faInfoCircle} from '@fortawesome/free-solid-svg-icons';\r\nimport {IAfterGuiAttachedParams, ICellRendererParams} from \"ag-grid-community\";\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-sendung-ereignisse-info-cell',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent\r\n ],\r\n templateUrl: './sendung-ereignisse-info-cell.component.html',\r\n styleUrl: './sendung-ereignisse-info-cell.component.css'\r\n})\r\nexport class SendungEreignisseInfoCellComponent implements ICellRendererAngularComp, OnInit {\r\n public modalRef: BsModalRef;\r\n public params;\r\n faInfoCircle = faInfoCircle;\r\n public sendungsereignis;\r\n\r\n constructor(private modalService: BsModalService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sendungsereignis = this.params.data;\r\n }\r\n\r\n afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\r\n }\r\n\r\n refresh(params: ICellRendererParams): boolean {\r\n return false;\r\n }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.params = params;\r\n }\r\n\r\n displayInfos(template: TemplateRef<any>): void {\r\n const config: ModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n animated: true,\r\n ignoreBackdropClick: true,\r\n };\r\n this.modalRef = this.modalService.show(template, config);\r\n }\r\n}\r\n","<div (click)=\"displayInfos(template)\" class=\"customCss\">\r\n @if (sendungsereignis.statustypId === 12) {\r\n <fa-icon [icon]=\"faInfoCircle\"></fa-icon>\r\n }\r\n</div>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title pull-left\">Informationseintrag</h5>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">&times;</span>\r\n </button>\r\n </div>\r\n\r\n <div class=\"modal-body text-left\">\r\n {{ sendungsereignis.text }}\r\n </div>\r\n</ng-template>\r\n","import {Component, Input} from '@angular/core';\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {faCaretDown, faCaretUp} from '@fortawesome/free-solid-svg-icons';\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {Observable} from \"rxjs\";\r\nimport {Sendungsereignisse} from \"../../models\";\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\nimport {\r\n SendungEreignisseInfoCellComponent\r\n} from \"./sendung-ereignisse-info-cell/sendung-ereignisse-info-cell.component\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-sendung-ereignisse',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './sendung-ereignisse.component.html',\r\n styleUrl: './sendung-ereignisse.component.css'\r\n})\r\nexport class SendungEreignisseComponent {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public carretUp = faCaretUp;\r\n public carretDown = faCaretDown;\r\n public show: boolean;\r\n public locale = AG_GRID_LOCALE_DE;\r\n public isCollapsed: boolean = false;\r\n\r\n @Input() sendungsereignisse: Observable<Sendungsereignisse[]>;\r\n\r\n // @Input() set sendungsereignisse(data: Observable<Sendungsereignisse[]>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if(this.gridApi) {\r\n // if(data) {\r\n // data.subscribe((sendungsereignisse) => {\r\n // this.gridApi.setGridOption('rowData', sendungsereignisse)\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true, cellClass: 'locked-col'\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'statustyp',\r\n headerName: 'SE',\r\n },\r\n {\r\n headerName: 'Info',\r\n cellRenderer: SendungEreignisseInfoCellComponent,\r\n maxWidth: 80\r\n },\r\n {\r\n field: 'statusgrundtyp',\r\n headerName: 'Substatus',\r\n },\r\n {\r\n field: 'storno',\r\n headerName: 'Storno'\r\n },\r\n {\r\n field: 'bearbeiter',\r\n headerName: 'Bearbeiter',\r\n },\r\n {\r\n field: 'wiedereinstreudatum',\r\n headerName: 'WE',\r\n },\r\n {\r\n valueGetter: this.slicedTime,\r\n headerName: 'Datum/Zeit',\r\n sort: 'desc'\r\n }\r\n ];\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.sendungsereignisse) {\r\n this.sendungsereignisse.subscribe((sendungsereignisse) => {\r\n this.gridApi.setGridOption('rowData', sendungsereignisse)\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n }\r\n\r\n slicedTime(params: any) {\r\n return params.data?.zeitpunkt?.slice(0, 16);\r\n }\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body\">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {Observable} from \"rxjs\";\r\nimport {Gefahrgut} from \"../../models\";\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {faCaretDown, faCaretUp} from '@fortawesome/free-solid-svg-icons';\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-gefahrgut',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './gefahrgut.component.html',\r\n styleUrl: './gefahrgut.component.css'\r\n})\r\nexport class GefahrgutComponent {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public carretUp = faCaretUp;\r\n public carretDown = faCaretDown;\r\n public show: boolean;\r\n public isCollapsed: boolean = false;\r\n public locale = AG_GRID_LOCALE_DE;\r\n\r\n @Input() dangerous_goods: Observable<Gefahrgut[]>;\r\n\r\n // @Input() set dangerous_goods(data: Observable<Gefahrgut[]>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if (this.gridApi) {\r\n // if (data) {\r\n // data.subscribe((gefahrgut) => {\r\n // this.gridApi.setGridOption('rowData', gefahrgut)\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true,\r\n cellClass: 'locked-col'\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'unnr',\r\n headerName: 'UN',\r\n },\r\n {\r\n field: 'gewicht',\r\n headerName: 'Kg',\r\n },\r\n {\r\n field: 'klasse',\r\n headerName: 'Klasse',\r\n },\r\n {\r\n field: 'stoffbezeichnung',\r\n headerName: 'Stoffbezeichnung',\r\n },\r\n {\r\n field: 'nebengefahren',\r\n headerName: 'Nebengefahr',\r\n }\r\n ]\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.dangerous_goods) {\r\n this.dangerous_goods.subscribe((gefahrgut) => {\r\n this.gridApi.setGridOption('rowData', gefahrgut)\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n }\r\n\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body \">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, TemplateRef} from '@angular/core';\r\nimport {BsModalRef, BsModalService, ModalOptions} from \"ngx-bootstrap/modal\";\r\nimport {ICellRendererParams} from \"ag-grid-community\";\r\nimport {ICellRendererAngularComp} from \"ag-grid-angular\";\r\nimport {faInfoCircle} from '@fortawesome/free-solid-svg-icons';\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-empfaenger-details',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent\r\n ],\r\n templateUrl: './empfaenger-details.component.html',\r\n styleUrl: './empfaenger-details.component.css'\r\n})\r\nexport class EmpfaengerDetailsComponent implements ICellRendererAngularComp {\r\n\r\n public modalRef: BsModalRef;\r\n faInfoCircle = faInfoCircle;\r\n public params: ICellRendererParams;\r\n\r\n constructor(private modalService: BsModalService) {\r\n }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.params = params;\r\n }\r\n\r\n refresh(params: ICellRendererParams): boolean {\r\n return false;\r\n }\r\n\r\n displayInfos(template: TemplateRef<any>): void {\r\n const config: ModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n animated: true,\r\n ignoreBackdropClick: true,\r\n };\r\n this.modalRef = this.modalService.show(template, config);\r\n }\r\n\r\n showEmpfaengerName(param: any) {\r\n const name1 = param.data.empfaengerName1 !== null ? param.data.empfaengerName1 : '';\r\n const name2 = param.data.empfaengerName2 !== null ? param.data.empfaengerName2 : '';\r\n const name3 = param.data.empfaengerName3 !== null ? param.data.empfaengerName3 : '';\r\n return name1 + ' ' + name2 + ' ' + name3;\r\n }\r\n\r\n}\r\n","<div style=\"cursor: pointer\" (click)=\"displayInfos(template)\" class=\"customCss\">\r\n <fa-icon [icon]=\"faInfoCircle\"></fa-icon>\r\n</div>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title pull-left\">Empfänger</h5>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">&times;</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n {{ this.showEmpfaengerName(params) }}<br>\r\n {{ params.data.empfaengerStrasse }} &nbsp; {{ params.data.empfaengerHausnr }}<br>\r\n {{ params.data.empfaengerPlz }} &nbsp; {{ params.data.empfaengerOrt }}<br>\r\n {{ params.data.empfaengerLand }}<br>\r\n </div>\r\n</ng-template>\r\n","import {Component, Input} from '@angular/core';\r\nimport {Dienst, Scannungen, ShipmentInfo} from \"../../models\";\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {Observable} from \"rxjs\";\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {faCaretDown, faCaretUp} from '@fortawesome/free-solid-svg-icons';\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\nimport {EmpfaengerDetailsComponent} from \"./empfaenger-details/empfaenger-details.component\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-sendungskette',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './sendungskette.component.html',\r\n styleUrl: './sendungskette.component.css'\r\n})\r\nexport class SendungsketteComponent {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public carretUp = faCaretUp;\r\n public carretDown = faCaretDown;\r\n public show: boolean;\r\n public locale = AG_GRID_LOCALE_DE;\r\n public isCollapsed: boolean = false;\r\n\r\n @Input() sendungskette: Observable<ShipmentInfo[]>;\r\n\r\n // @Input() set sendungskette(data: Observable<ShipmentInfo[]>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if (this.gridApi) {\r\n // if (data) {\r\n // data.subscribe((shipmentInfo) => {\r\n // this.gridApi.setGridOption('rowData', shipmentInfo)\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'absender',\r\n headerName: 'Versender',\r\n },\r\n {\r\n field: 'erfassungstag',\r\n headerName: 'Ü-Datum',\r\n },\r\n {\r\n field: 'sendungsnr',\r\n headerName: 'Sendungsnr',\r\n\r\n },\r\n {\r\n field: 'langreferenz',\r\n headerName: 'RefNr',\r\n\r\n },\r\n {\r\n headerName: 'Empfänger',\r\n cellRenderer: EmpfaengerDetailsComponent,\r\n },\r\n {\r\n field: 'colli',\r\n headerName: 'Col/Pal',\r\n maxWidth: 100,\r\n valueGetter: this.getColAndPal\r\n },\r\n {\r\n field: 'gesamtgewicht',\r\n headerName: 'Gewicht',\r\n },\r\n {\r\n headerName: 'Dienste',\r\n valueGetter: this.showDienste,\r\n },\r\n {\r\n headerName: 'Depot',\r\n valueGetter: this.showDepotNr,\r\n maxWidth: 100\r\n },\r\n {\r\n headerName: 'Tournr',\r\n valueGetter: this.showTourNr,\r\n maxWidth: 100\r\n },\r\n ];\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.sendungskette) {\r\n this.sendungskette.subscribe((shipmentInfo) => {\r\n this.gridApi.setGridOption('rowData', shipmentInfo)\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n }\r\n\r\n getColAndPal(params) {\r\n const colli = params.data.colli;\r\n const paletten = params.data.paletten;\r\n return colli + '/' + paletten;\r\n }\r\n\r\n showDienste(param: any) {\r\n const dienste = [];\r\n param.data?.dienste?.map((dienst: Dienst) => {\r\n if (dienst.anzeigeKuerzel !== null) {\r\n dienste.push(dienst.anzeigeKuerzel);\r\n }\r\n });\r\n return dienste.join(', ');\r\n }\r\n\r\n showDepotNr(param: any) {\r\n let depotnr = null;\r\n\r\n param.data?.scannungen?.map((scannungen: Scannungen) => {\r\n depotnr = scannungen.depotnr;\r\n });\r\n return depotnr;\r\n }\r\n\r\n showTourNr(param: any) {\r\n let tournr = '';\r\n\r\n param.data?.scannungen?.map((scannungen: Scannungen) => {\r\n tournr = scannungen.tournr;\r\n });\r\n return tournr;\r\n }\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body \">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n [enableCellTextSelection]=\"true\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, Input} from '@angular/core';\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {DispoDetails} from \"../../models\";\r\nimport {Observable} from \"rxjs\";\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\n\r\n@Component({\r\n selector: 'lib-dispo-detail',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './dispo-detail.component.html',\r\n styleUrl: './dispo-detail.component.css'\r\n})\r\nexport class DispoDetailComponent {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public show: boolean;\r\n public locale = AG_GRID_LOCALE_DE;\r\n\r\n @Input() dispoDetails: Observable<DispoDetails[]>;\r\n\r\n // @Input() set dispoDetails(data: Observable<DispoDetails[]>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if(this.gridApi) {\r\n // if(data) {\r\n // data.subscribe((dispoDetails) => {\r\n // this.gridApi.setGridOption('rowData', dispoDetails)\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true, cellClass: 'locked-col'\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'tournr',\r\n valueGetter: this.editedTourNr,\r\n },\r\n {\r\n field: 'tourSektor',\r\n headerName: 'Toursektor',\r\n },\r\n {\r\n field: 'tourSektor',\r\n headerName: 'Soll-Stopp',\r\n },\r\n {\r\n field: 'ausliefertag',\r\n headerName: 'Datum',\r\n sort: 'desc'\r\n },\r\n {\r\n field: 'gewicht',\r\n headerName: 'Kg',\r\n }\r\n ]\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.dispoDetails) {\r\n this.dispoDetails.subscribe((dispoDetails) => {\r\n this.gridApi.setGridOption('rowData', dispoDetails)\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n\r\n }\r\n\r\n editedTourNr(param: any) {\r\n let tournr = param.data.tournr;\r\n return tournr ? tournr.slice(0, 1) + '-' + tournr.slice(1) : '';\r\n }\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body \">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n [enableCellTextSelection]=\"true\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, Input} from '@angular/core';\r\nimport {ColliUbersicht} from \"../../models/colliubersichtModel\";\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {Observable} from \"rxjs\";\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\n\r\n@Component({\r\n selector: 'lib-colli-uebersicht',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './colli-uebersicht.component.html',\r\n styleUrl: './colli-uebersicht.component.css'\r\n})\r\nexport class ColliUebersichtComponent {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public locale = AG_GRID_LOCALE_DE;\r\n\r\n @Input() colliUbersicht: Observable<ColliUbersicht[]>;\r\n\r\n // @Input() set colliUbersicht(data: Observable<ColliUbersicht[]>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if (this.gridApi) {\r\n // if (data) {\r\n // data.subscribe((colliUebersicht) => {\r\n // this.gridApi.setGridOption('rowData', this.filterData(colliUebersicht))\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true,\r\n cellClass: 'locked-col',\r\n };\r\n\r\n this.columnDef = [\r\n {field: 'barcode', headerName: 'Barcode', minWidth: 250},\r\n {field: 'scantypDateKWA', headerName: 'KWA', minWidth: 150},\r\n {field: 'scantypDateUBN', headerName: 'UBN', minWidth: 150},\r\n {field: 'scantypDateKWE', headerName: 'KWE', minWidth: 150},\r\n {field: 'scantypDateRWE', headerName: 'RWE', minWidth: 150},\r\n {field: 'scantypDateBLD', headerName: 'BLD', minWidth: 150},\r\n {field: 'scantypDateSTW', headerName: 'STW', minWidth: 150},\r\n {field: 'scantypDateINV', headerName: 'INV', minWidth: 150},\r\n {field: 'scantypDateAUS', headerName: 'AUS', minWidth: 150},\r\n {field: 'scantypDateOFL', headerName: 'OFL', minWidth: 150},\r\n ];\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.colliUbersicht) {\r\n this.colliUbersicht.subscribe((colliUebersicht) => {\r\n this.gridApi.setGridOption('rowData', this.filterData(colliUebersicht))\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n }\r\n\r\n\r\n filterData(data: ColliUbersicht[]): ColliUbersicht[] {\r\n const resultArray: ColliUbersicht[] = [];\r\n data?.forEach(item => {\r\n const newItem: ColliUbersicht = {\r\n barcode: item.barcode,\r\n scantypDateKWA: this.formatTime(item.scantypDateKWA),\r\n scantypDateUBN: this.formatTime(item.scantypDateUBN),\r\n scantypDateKWE: this.formatTime(item.scantypDateKWE),\r\n scantypDateRWE: this.formatTime(item.scantypDateRWE),\r\n scantypDateBLD: this.formatTime(item.scantypDateBLD),\r\n scantypDateSTW: this.formatTime(item.scantypDateSTW),\r\n scantypDateINV: this.formatTime(item.scantypDateINV),\r\n scantypDateAUS: this.formatTime(item.scantypDateAUS),\r\n scantypDateOFL: this.formatTime(item.scantypDateOFL)\r\n };\r\n resultArray.push(newItem);\r\n });\r\n return resultArray;\r\n }\r\n\r\n formatTime(dateTime: string): string {\r\n if (!dateTime) return null;\r\n const [datePart, timePart] = dateTime.split(' ');\r\n const [hours, minutes, seconds] = timePart.split(':').map(part => parseInt(part));\r\n const formattedHours = hours < 10 ? `0${hours}` : hours.toString();\r\n const formattedSeconds = seconds < 10 ? `0${seconds}` : seconds.toString();\r\n const formattedMins = minutes < 10 ? `0${minutes}` : minutes.toString();\r\n return `${datePart} ${formattedHours}:${formattedMins}:${formattedSeconds}`;\r\n\r\n }\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body\">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n [enableCellTextSelection]=\"true\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, Input} from '@angular/core';\r\nimport {Dienst, ShipmentInfo} from \"../../../../models\";\r\nimport {FormService} from \"../../../../services/form.service\";\r\nimport {faBoxOpen, faPallet, faCogs, faWeightHanging} from '@fortawesome/free-solid-svg-icons';\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-aktuelle-daten',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent\r\n ],\r\n templateUrl: './aktuelle-daten.component.html',\r\n styleUrl: './aktuelle-daten.component.css'\r\n})\r\nexport class AktuelleDatenComponent {\r\n faBoxOpen = faBoxOpen;\r\n faPallet = faPallet;\r\n faCogs = faCogs;\r\n faWeightHanging = faWeightHanging;\r\n\r\n dienste: Dienst[] = [];\r\n displayDiensteToCorrect: Dienst[];\r\n\r\n @Input() shipmentInfoDetails: ShipmentInfo;\r\n @Input() allowedDienste: Dienst[];\r\n\r\n public colli;\r\n public palette;\r\n public gewicht;\r\n public displayDienste;\r\n\r\n constructor(private formService: FormService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.shipmentInfoDetails.dienste !== null) {\r\n this.shipmentInfoDetails.dienste.forEach((dienste: Dienst) => {\r\n this.dienste.push(dienste);\r\n });\r\n }\r\n\r\n setTimeout(() => {\r\n console.log(this.allowedDienste)\r\n }, 3000)\r\n\r\n let filteredAllowed = this.allowedDienste.map((allowedDienst: Dienst) => {\r\n return allowedDienst.bezeichnung;\r\n });\r\n this.displayDiensteToCorrect = this.dienste.filter((displayDienste: Dienst) => filteredAllowed.includes(displayDienste.bezeichnung));\r\n\r\n this.formService.allowedDienste.next(this.displayDiensteToCorrect);\r\n\r\n this.colli = this.shipmentInfoDetails.colli;\r\n this.palette = this.shipmentInfoDetails.paletten;\r\n this.gewicht = this.shipmentInfoDetails.gesamtgewicht;\r\n this.displayDienste = this.shipmentInfoDetails.dienste;\r\n\r\n }\r\n\r\n showDienste(param: any) {\r\n const dienste = [];\r\n param.map((dienst: Dienst) => {\r\n if (dienst.anzeigeKuerzel !== null) {\r\n dienste.push(dienst.anzeigeKuerzel);\r\n }\r\n });\r\n return dienste.join(', ');\r\n }\r\n}\r\n","<p>Aktuelle Werte</p>\r\n<div class=\"d-flex justify-content-between\">\r\n <div class=\"p-2\">\r\n <fa-icon [icon]=\"faBoxOpen\" class=\"iconSize\"></fa-icon>\r\n {{ colli }}\r\n </div>\r\n <div class=\"p-2\">\r\n <fa-icon [icon]=\"faPallet\" class=\"iconSize\"></fa-icon>\r\n {{ palette }}\r\n </div>\r\n <div class=\"p-2\">\r\n <fa-icon [icon]=\"faWeightHanging\" class=\"iconSize\"></fa-icon>\r\n {{ gewicht }} Kg\r\n </div>\r\n <div class=\"p-2\">\r\n <fa-icon [icon]=\"faCogs\" class=\"iconSize icon-stack mr-2\"></fa-icon>\r\n @if (displayDiensteToCorrect.length !== 0) {\r\n <span>{{ showDienste(dienste) }}</span>\r\n } @else {\r\n <span>{{ showDienste(dienste) }}</span>\r\n }\r\n </div>\r\n</div>\r\n","import {ChangeDetectorRef, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {Dienst, ShipmentInfo} from \"../../../../models\";\r\nimport {faBoxOpen, faPallet, faCogs, faClock, faWeightHanging} from '@fortawesome/free-solid-svg-icons';\r\nimport {FormBuilder, FormsModule} from \"@angular/forms\";\r\nimport {FormService} from \"../../../../services/form.service\";\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\nimport {NgClass} from \"@angular/common\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-korrektur-daten',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent,\r\n FormsModule,\r\n NgClass\r\n ],\r\n templateUrl: './korrektur-daten.component.html',\r\n styleUrl: './korrektur-daten.component.css'\r\n})\r\nexport class KorrekturDatenComponent implements OnInit {\r\n// Icons\r\n public faBoxOpen = faBoxOpen;\r\n public faPallet = faPallet;\r\n public faCogs = faCogs;\r\n public faClock = faClock;\r\n public faWeightHanging = faWeightHanging;\r\n\r\n public showTimePicker: boolean = true;\r\n public setDeliveryTime: boolean = false;\r\n public isColPalValid: boolean = true;\r\n public isGewichtValid: boolean = true;\r\n public displayError: boolean = false;\r\n\r\n public colli: number = 0;\r\n public palette: number = 0;\r\n public totalColliAndPalette: number = 0;\r\n public emptyString: string = '';\r\n\r\n public selectedDropdownDienst: Dienst;\r\n\r\n public diensttypId: number;\r\n public selectedDienst: string;\r\n public timeToDisplay;\r\n public selbstabholer: boolean = false;\r\n\r\n public keepWeight: string = '';\r\n public keepColli: number;\r\n public keepPalette: number;\r\n\r\n @Input() shipmentInfoDetails: ShipmentInfo;\r\n @Input() dienste: Dienst[];\r\n @Output() submitCloseModalEvent = new EventEmitter<any>();\r\n\r\n constructor(private fb: FormBuilder, private cd: ChangeDetectorRef, private formService: FormService) {\r\n this.setTime();\r\n }\r\n\r\n setTime() {\r\n let now = new Date();\r\n let hours = ('0' + now.getHours()).slice(-2);\r\n let minutes = ('0' + now.getMinutes()).slice(-2);\r\n let str = hours + ':' + minutes;\r\n this.timeToDisplay = str;\r\n }\r\n\r\n activateAbholer(event: any) {\r\n this.selbstabholer = event.currentTarget.checked;\r\n this.formService.selbstabholer.next(this.selbstabholer);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.totalColliAndPalette = this.shipmentInfoDetails.colli + this.shipmentInfoDetails.paletten;\r\n this.keepWeight = this.shipmentInfoDetails.gesamtgewicht;\r\n this.keepColli = this.shipmentInfoDetails.colli;\r\n this.keepPalette = this.shipmentInfoDetails.paletten;\r\n\r\n // Wenn der User keine Dienstkorrektur durchführt, dann wird der aktuelle Dienst übernommen\r\n this.shipmentInfoDetails.dienste.map((currentDienst) => {\r\n if (currentDienst.anzeigeKuerzel !== null) {\r\n this.dienste.forEach((allowedDienste) => {\r\n if (allowedDienste.code === currentDienst.code) {\r\n this.selectedDropdownDienst = currentDienst;\r\n this.getDienstData(this.selectedDropdownDienst);\r\n }\r\n });\r\n }\r\n });\r\n\r\n this.filterSaturdayFromCombobox();\r\n this.sortedDienste(this.dienste);\r\n }\r\n\r\n public filterSaturdayFromCombobox(): void {\r\n this.dienste.map((dienst: Dienst, index: number) => {\r\n if (dienst.code === 'SAMSTAG') {\r\n this.dienste.splice(index, 1);\r\n }\r\n });\r\n }\r\n\r\n checkTotalOfColliAndPalette(inputtype, value) {\r\n\r\n if (value.model === '' && inputtype === 'colli') {\r\n this.shipmentInfoDetails.colli = 0;\r\n } else if (value.model === '' && inputtype === 'palette') {\r\n this.shipmentInfoDetails.paletten = 0;\r\n }\r\n\r\n if (this.isCorrectedValuesNotNull()) {\r\n this.colli = +this.shipmentInfoDetails.colli;\r\n this.palette = +this.shipmentInfoDetails.paletten;\r\n const correctedColliAndPalette = this.colli + this.palette;\r\n\r\n this.totalColliAndPalette === correctedColliAndPalette ? this.isColPalValid = true : this.isColPalValid = false;\r\n this.cd.detectChanges();\r\n\r\n } else {\r\n this.isColPalValid = false;\r\n this.cd.detectChanges();\r\n }\r\n }\r\n\r\n isCorrectedValuesNotNull(): boolean {\r\n const colli = this.shipmentInfoDetails.colli;\r\n const palette = this.shipmentInfoDetails.paletten;\r\n\r\n const colliValidate = colli !== null && colli >= 0;\r\n const palValidate = palette !== null && palette >= 0;\r\n\r\n return colliValidate && palValidate;\r\n }\r\n\r\n onSubmit(isCorrectedValue: any): void {\r\n if (isCorrectedValue) {\r\n this.shipmentInfoDetails.datumUhrzeit = this.formatedDateString(new Date());\r\n\r\n const requestObject = {\r\n colli: this.shipmentInfoDetails.colli,\r\n palette: this.shipmentInfoDetails.paletten,\r\n gewicht: this.shipmentInfoDetails.gesamtgewicht,\r\n dienste: this.selectedDropdownDienst,\r\n diensttypid: this.selectedDropdownDienst.id,\r\n datumUhrzeit: this.shipmentInfoDetails.datumUhrzeit\r\n };\r\n\r\n this.formService.getSubmittedForm(requestObject);\r\n } else {\r\n this.shipmentInfoDetails.gesamtgewicht = this.keepWeight;\r\n this.shipmentInfoDetails.colli = this.keepColli;\r\n this.shipmentInfoDetails.paletten = this.keepPalette;\r\n }\r\n this.submitCloseModalEvent.emit(isCorrectedValue);\r\n }\r\n\r\n getDienstData(event: any) {\r\n this.selectedDienst = event?.code;\r\n this.selectedDienst === 'SONDER' ? this.setDeliveryTime = true : this.setDeliveryTime = false;\r\n this.diensttypId = event?.id;\r\n }\r\n\r\n sortedDienste(dienste): void {\r\n dienste.map((dienst: Dienst) => {\r\n switch (dienst.code) {\r\n case 'PLUS8':\r\n dienst.sortId = 1;\r\n break;\r\n case 'PLUS9':\r\n dienst.sortId = 2;\r\n break;\r\n case 'FRUEH':\r\n dienst.sortId = 3;\r\n break;\r\n case 'VORMITTAG':\r\n dienst.sortId = 4;\r\n break;\r\n case 'NORMAL':\r\n dienst.sortId = 5;\r\n break;\r\n case 'ABEND':\r\n dienst.sortId = 6;\r\n break;\r\n case 'SONDER':\r\n dienst.sortId = 7;\r\n break;\r\n }\r\n });\r\n\r\n this.dienste.sort((a, b) => a.sortId - b.sortId);\r\n }\r\n\r\n formatedDateString(event: Date): string {\r\n const month = (event.getMonth() + 1);\r\n const parsingDate = event.getDate() <= 9 ? '0' + event.getDate() : event.getDate();\r\n const parsingMonth = month <= 9 ? '0' + month : month;\r\n const date = parsingDate + '.' + parsingMonth + '.' + event.getFullYear() + ' ' + this.timeToDisplay + ':00';\r\n\r\n return date;\r\n }\r\n\r\n public checkChange(event) {\r\n let pointToComma = event.target.value.replace(/(\\d),(?=\\d)/g, '$1.');\r\n let inputAsInt = Number(pointToComma);\r\n if (inputAsInt >= 0 && inputAsInt < 25000) {\r\n this.displayError = false;\r\n this.isGewichtValid = true;\r\n this.cd.detectChanges();\r\n return this.shipmentInfoDetails.gesamtgewicht = inputAsInt.toString();\r\n } else {\r\n this.displayError = true;\r\n this.isGewichtValid = false;\r\n this.cd.detectChanges();\r\n return this.shipmentInfoDetails.gesamtgewicht;\r\n }\r\n }\r\n}\r\n","<p>Korrigierte Werte</p>\r\n<form class=\"text-left border border-light\" #addresForm=\"ngForm\">\r\n <div class=\"d-flex justify-content-between\">\r\n\r\n <fa-icon [icon]=\"faBoxOpen\" class=\"iconSizeBox mr-2\"></fa-icon>\r\n <input type=\"text\" id=\"colli\" class=\"form-control inputWidth mr-2\" placeholder=\"Anzahl Colli\" name=\"colli\"\r\n #colli='ngModel'\r\n [(ngModel)]=\"shipmentInfoDetails.colli\" (change)=\"checkTotalOfColliAndPalette('colli', colli)\">\r\n\r\n <fa-icon [icon]=\"faPallet\" class=\"iconSize mr-2\"></fa-icon>\r\n <input type=\"text\" id=\"palette\" class=\"form-control inputWidth mr-2\" placeholder=\"Anzahl Paletten\" name=\"paletten\"\r\n #paletten='ngModel'\r\n [(ngModel)]=\"shipmentInfoDetails.paletten\" (change)=\"checkTotalOfColliAndPalette('palette', paletten)\">\r\n </div>\r\n\r\n <div class=\"d-flex justify-content-between mt-2\">\r\n <fa-icon [icon]=\"faWeightHanging\" class=\"iconSize mr-2\"></fa-icon>\r\n <input type=\"text\" id=\"gewicht\" class=\"form-control inputWidth mr-2\" placeholder=\"Gewicht in Kg\" name=\"gewicht\"\r\n #gewicht='ngModel'\r\n (change)=\"checkChange($event)\"\r\n [ngClass]=\"{'displayErrorBorder': this.displayError === true}\"\r\n [ngModel]=\"shipmentInfoDetails.gesamtgewicht\">\r\n\r\n <fa-icon [icon]=\"faCogs\" class=\"iconSize mr-2\"></fa-icon>\r\n <select class=\"form-control inputWidth mr-2\" id=\"dienste\" [attr.disabled]=\"selbstabholer? '': null\" name=\"dienstt\"\r\n #dienstt='ngModel' [(ngModel)]=\"selectedDropdownDienst\" (ngModelChange)=\"getDienstData($event)\">\r\n <option disabled [value]=\"selectedDropdownDienst\">Dienst auswählen</option>\r\n @for (dienst of dienste; track dienst) {\r\n <option [ngValue]=\"dienst\">{{ dienst.bezeichnung }}</option>\r\n }\r\n </select>\r\n </div>\r\n\r\n @if (setDeliveryTime) {\r\n <div class=\"d-flex deliveryTime\">\r\n <fa-icon [icon]=\"faClock\" class=\"iconSize mr-2\"></fa-icon>\r\n <input type=\"time\" class=\"form-control\" id=\"datumUhrzeit\" name=\"uhrzeit\" #uhrzeit='ngModel'\r\n [(ngModel)]=\"timeToDisplay\">\r\n </div>\r\n }\r\n\r\n @if (!selectedDienst) {\r\n <div>\r\n <input class=\"selbstabholerCheckbox\" type=\"checkbox\" id=\"Selbstabholer\" name=\"Selbstabholer\"\r\n (change)=\"activateAbholer($event)\">\r\n <label for=\"Selbstabholer\">Selbstabholer</label>\r\n </div>\r\n }\r\n\r\n <div class=\"d-flex flex-row-reverse mt-5\">\r\n <div class=\"p-2\">\r\n <button class=\"btn btn-block btn-success\" [disabled]=\"!isColPalValid! || !isGewichtValid\"\r\n (click)=\"onSubmit(true)\">Speichern\r\n </button>\r\n </div>\r\n <div class=\"p-2\">\r\n <button class=\"btn btn-block btn-danger\" (click)=\"onSubmit(false)\">Abbrechen</button>\r\n </div>\r\n </div>\r\n @if (!isColPalValid || !isGewichtValid) {\r\n <span class=\"text-danger\">\r\n <p>Fehler! Bitte überprüfen Sie Ihre Eingaben. Colli und Paletten Stimmen nicht überein oder das eingegebene Gewicht befindet sich nicht zwischen 0 und 25000 kg. </p>\r\n </span>\r\n }\r\n</form>\r\n","import {Component, OnDestroy, TemplateRef} from '@angular/core';\r\nimport {GridApi, IAfterGuiAttachedParams, ICellRendererParams} from \"ag-grid-community\";\r\nimport {BsModalRef, BsModalService, ModalOptions} from \"ngx-bootstrap/modal\";\r\nimport {FormService} from \"../../../../services/form.service\";\r\nimport {faPencilAlt} from '@fortawesome/free-solid-svg-icons';\r\nimport {ICellRendererAngularComp} from \"ag-grid-angular\";\r\nimport {AktuelleDatenComponent} from \"../aktuelle-daten/aktuelle-daten.component\";\r\nimport {KorrekturDatenComponent} from \"../korrektur-daten/korrektur-daten.component\";\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\nimport {Dienst} from \"../../../../models\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-korrektur-button-cell',\r\n standalone: true,\r\n imports: [\r\n AktuelleDatenComponent,\r\n KorrekturDatenComponent,\r\n FaIconComponent\r\n ],\r\n templateUrl: './korrektur-button-cell.component.html',\r\n styleUrl: './korrektur-button-cell.component.css'\r\n})\r\nexport class KorrekturButtonCellComponent implements ICellRendererAngularComp {\r\n public faPencilAlt = faPencilAlt;\r\n public params: ICellRendererParams;\r\n public gridApi: GridApi;\r\n modalRef: BsModalRef;\r\n public dienste: Dienst[];\r\n\r\n\r\n constructor(private modalService: BsModalService, private formService: FormService) {\r\n console.log('this.formService.dienste$: ', this.formService.dienste$)\r\n this.formService.dienste$.subscribe((dienste: Dienst[]) => {\r\n console.log('DIENSTE: ', dienste)\r\n if (dienste) {\r\n this.dienste = dienste\r\n }\r\n });\r\n }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.params = params;\r\n this.gridApi = params.api;\r\n }\r\n\r\n openModal(template: TemplateRef<any>): void {\r\n const config: ModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n animated: true,\r\n ignoreBackdropClick: true,\r\n };\r\n this.modalRef = this.modalService.show(template, config);\r\n }\r\n\r\n closeModal(event: any) {\r\n this.modalRef.hide();\r\n }\r\n\r\n refresh(): boolean {\r\n return true;\r\n }\r\n\r\n afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\r\n }\r\n\r\n public close() {\r\n this.modalRef.hide();\r\n }\r\n}\r\n","<fa-icon (click)=\"openModal(template)\" style=\"cursor: pointer; position: center\" [icon]=\"faPencilAlt\"></fa-icon>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\">Sendungskorrektur</h4>\r\n\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <div class=\"\">\r\n <lib-aktuelle-daten [shipmentInfoDetails]=\"params.data\" [allowedDienste]=\"dienste\"></lib-aktuelle-daten>\r\n </div>\r\n <hr>\r\n <div class=\"\">\r\n <lib-korrektur-daten\r\n (submitCloseModalEvent)=\"closeModal($event)\"\r\n [shipmentInfoDetails]=\"params.data\"\r\n [dienste]=\"dienste\">\r\n </lib-korrektur-daten>\r\n </div>\r\n </div>\r\n</ng-template>\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\nimport {CollapseModule} from \"ngx-bootstrap/collapse\";\r\nimport {TabsModule} from \"ngx-bootstrap/tabs\";\r\nimport {ColliEvent, Dienst, DispoDetails, Gefahrgut, Sendungsereignisse, ShipmentInfo} from \"../../models\";\r\nimport {ColDef, GridApi, GridOptions, GridReadyEvent} from \"ag-grid-community\";\r\nimport {Observable} from \"rxjs\";\r\nimport {ColliUbersicht} from \"../../models/colliubersichtModel\";\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\nimport {faCaretDown, faCaretUp} from '@fortawesome/free-solid-svg-icons';\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {FormService} from \"../../services/form.service\";\r\nimport {InfoCellComponent} from \"./info-cell/info-cell.component\";\r\nimport {RadioaktivCellComponent} from \"./radioaktiv-cell/radioaktiv-cell.component\";\r\nimport {ColliEreignisseComponent} from \"../colli-ereignisse/colli-ereignisse.component\";\r\nimport {SendungEreignisseComponent} from \"../sendung-ereignisse/sendung-ereignisse.component\";\r\nimport {GefahrgutComponent} from \"../gefahrgut/gefahrgut.component\";\r\nimport {SendungsketteComponent} from \"../sendungskette/sendungskette.component\";\r\nimport {DispoDetailComponent} from \"../dispo-detail/dispo-detail.component\";\r\nimport {ColliUebersichtComponent} from \"../colli-uebersicht/colli-uebersicht.component\";\r\nimport {KorrekturButtonCellComponent} from \"./sendung-korrektur/korrektur-button-cell/korrektur-button-cell.component\";\r\n\r\n@Component({\r\n selector: 'lib-sendung-information',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular,\r\n CollapseModule,\r\n TabsModule,\r\n FaIconComponent,\r\n ColliEreignisseComponent,\r\n SendungEreignisseComponent,\r\n GefahrgutComponent,\r\n SendungsketteComponent,\r\n DispoDetailComponent,\r\n ColliUebersichtComponent\r\n ],\r\n templateUrl: './sendung-information.component.html',\r\n styleUrl: './sendung-information.component.css'\r\n})\r\nexport class SendungInformationComponent implements OnInit {\r\n\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public isCollapsed: boolean = true;\r\n public locale = AG_GRID_LOCALE_DE;\r\n public overlayLoadingTemplate;\r\n public carretUp = faCaretUp;\r\n public carretDown = faCaretDown;\r\n public show: boolean;\r\n\r\n @Output() sendCorrectedValues = new EventEmitter<any>();\r\n @Input() colliEvent$: Observable<ColliEvent[]>;\r\n @Input() sendungsereignisse$: Observable<Sendungsereignisse[]>;\r\n @Input() dangerousGoods$: Observable<Gefahrgut[]>;\r\n @Input() sendungskette$: Observable<ShipmentInfo[]>;\r\n @Input() dispoDetails$: Observable<DispoDetails[]>;\r\n @Input() colliUbersicht$: Observable<ColliUbersicht[]>;\r\n\r\n @Input() shipmentInfoDetails: Observable<any[]>;\r\n @Input() dienste: Observable<any>;\r\n\r\n\r\n constructor(private formService: FormService) {\r\n this.overlayLoadingTemplate = '<span class=\"ag-overlay-loading-center\">Sendungsdaten werden geladen...</span>';\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true,\r\n cellClass: 'locked-col'\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'bcvsnr',\r\n headerName: 'BCV',\r\n },\r\n {\r\n field: 'absender',\r\n headerName: 'Name',\r\n },\r\n {\r\n headerName: 'Hinweise',\r\n cellRenderer: InfoCellComponent,\r\n },\r\n {\r\n field: 'sendungsnr',\r\n headerName: 'Sendungsnr',\r\n },\r\n {\r\n field: 'langreferenz',\r\n headerName: 'RefNr',\r\n },\r\n {\r\n field: 'erfassungstag',\r\n headerName: 'Ü-Datum',\r\n },\r\n {\r\n field: 'gesamtgewicht',\r\n headerName: 'Kg',\r\n maxWidth: 100\r\n },\r\n {\r\n field: 'colli',\r\n headerName: 'Col/Pal',\r\n minWidth: 100,\r\n valueGetter: this.getColAndPal\r\n },\r\n {\r\n headerName: 'Dienste',\r\n valueGetter: this.showDienste,\r\n },\r\n {\r\n headerName: 'Radioaktiv',\r\n cellStyle: {textAlign: 'center'},\r\n cellRenderer: RadioaktivCellComponent\r\n },\r\n {\r\n headerName: '',\r\n cellRenderer: KorrekturButtonCellComponent,\r\n maxWidth: 60\r\n },\r\n ];\r\n }\r\n\r\n ngOnInit(): void {\r\n this.shipmentInfoDetails?.subscribe((shipmentInfo: any) => {\r\n console.log('HEYYY: ', shipmentInfo)\r\n if(shipmentInfo) {\r\n console.log('SHIPMENT-INFO: ', shipmentInfo)\r\n }\r\n });\r\n\r\n console.log('TEST NG-OnInit')\r\n this.formService.submittedForm.subscribe((correctedValueForm => {\r\n if (correctedValueForm !== null) {\r\n this.sendCorrectedValues.emit(correctedValueForm);\r\n this.gridApi.showLoadingOverlay();\r\n this.formService.submittedForm.next(null);\r\n }\r\n }));\r\n\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.shipmentInfoDetails) {\r\n this.shipmentInfoDetails.subscribe((shipmentInfo: any) => {\r\n this.gridApi.setGridOption('rowData', shipmentInfo);\r\n this.formService.shipmentInfo.next(shipmentInfo);\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n\r\n let loadingInterval2 = setInterval(() => {\r\n if (this.dienste) {\r\n this.dienste.subscribe((dienste) => {\r\n this.formService.setDienste(dienste);\r\n });\r\n }\r\n clearInterval(loadingInterval2);\r\n }, 200);\r\n }\r\n\r\n getColAndPal(params: any) {\r\n const colli = params.data.colli;\r\n const paletten = params.data.paletten;\r\n return colli + '/' + paletten;\r\n }\r\n\r\n showDienste(param: any) {\r\n const dienste = [];\r\n console.log(param.data)\r\n param.data?.dienste?.map((dienst: Dienst) => {\r\n if (dienst.anzeigeKuerzel !== null) {\r\n dienste.push(dienst.anzeigeKuerzel);\r\n }\r\n });\r\n return dienste.join(', ');\r\n }\r\n\r\n toggleCollapse(): void {\r\n this.formService.setDienste(this.dienste);\r\n this.isCollapsed = !this.isCollapsed;\r\n this.show = !this.show;\r\n }\r\n\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body\">\r\n <div style=\"cursor: pointer\" (click)=\"toggleCollapse()\">\r\n <h5 class=\"card-title\">Sendungsinformationen\r\n <fa-icon [hidden]=\"show\" [icon]=\"carretUp\"></fa-icon>\r\n <fa-icon [hidden]=\"!show\" [icon]=\"carretDown\"></fa-icon>\r\n </h5>\r\n </div>\r\n <div id=\"collapseBasic\" [collapse]=\"!isCollapsed\" [isAnimated]=\"true\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 100px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n [overlayLoadingTemplate]=\"overlayLoadingTemplate\"\r\n (gridReady)=\"gridReady($event)\"\r\n\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"mt-3\">\r\n <tabset>\r\n <tab heading=\"Colliereignisse\">\r\n <lib-colli-ereignisse [colliEvent]=\"colliEvent$\"></lib-colli-ereignisse>\r\n </tab>\r\n <tab heading=\"Sendungsereignisse\">\r\n <lib-sendung-ereignisse [sendungsereignisse]=\"sendungsereignisse$\"></lib-sendung-ereignisse>\r\n </tab>\r\n <tab heading=\"Gefahrgut\">\r\n <lib-gefahrgut [dangerous_goods]=\"dangerousGoods$\"></lib-gefahrgut>\r\n </tab>\r\n <tab heading=\"Sendungskette\">\r\n <lib-sendungskette [sendungskette]=\"sendungskette$\"></lib-sendungskette>\r\n </tab>\r\n <tab heading=\"Dispositiondetails\">\r\n <lib-dispo-detail [dispoDetails]=\"dispoDetails$\"></lib-dispo-detail>\r\n </tab>\r\n <tab heading=\"Colliübersicht\">\r\n <lib-colli-uebersicht [colliUbersicht]=\"colliUbersicht$\"></lib-colli-uebersicht>\r\n </tab>\r\n </tabset>\r\n</div>\r\n","/*\r\n * Public API Surface of sendung-lib\r\n */\r\n\r\nexport * from './lib/sendung-lib.service';\r\nexport * from './lib/sendung-lib.component';\r\n\r\nexport * from './lib/components/sendung-information/sendung-information.component';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.FormService","i1","i2.FormService","i2"],"mappings":"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"}
1
+ {"version":3,"file":"sendung-lib.mjs","sources":["../../../projects/sendung-lib/src/lib/sendung-lib.service.ts","../../../projects/sendung-lib/src/lib/sendung-lib.component.ts","../../../projects/sendung-lib/src/lib/services/locale.de.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/info-cell/info-cell.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/info-cell/info-cell.component.html","../../../projects/sendung-lib/src/lib/services/form.service.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/radioaktiv-cell/radioaktiv-cell.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/radioaktiv-cell/radioaktiv-cell.component.html","../../../projects/sendung-lib/src/lib/components/colli-ereignisse/colli-info-cell/colli-info-cell.component.ts","../../../projects/sendung-lib/src/lib/components/colli-ereignisse/colli-info-cell/colli-info-cell.component.html","../../../projects/sendung-lib/src/lib/components/colli-ereignisse/colli-ereignisse.component.ts","../../../projects/sendung-lib/src/lib/components/colli-ereignisse/colli-ereignisse.component.html","../../../projects/sendung-lib/src/lib/components/sendung-ereignisse/sendung-ereignisse-info-cell/sendung-ereignisse-info-cell.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-ereignisse/sendung-ereignisse-info-cell/sendung-ereignisse-info-cell.component.html","../../../projects/sendung-lib/src/lib/components/sendung-ereignisse/sendung-ereignisse.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-ereignisse/sendung-ereignisse.component.html","../../../projects/sendung-lib/src/lib/components/gefahrgut/gefahrgut.component.ts","../../../projects/sendung-lib/src/lib/components/gefahrgut/gefahrgut.component.html","../../../projects/sendung-lib/src/lib/components/sendungskette/empfaenger-details/empfaenger-details.component.ts","../../../projects/sendung-lib/src/lib/components/sendungskette/empfaenger-details/empfaenger-details.component.html","../../../projects/sendung-lib/src/lib/components/sendungskette/sendungskette.component.ts","../../../projects/sendung-lib/src/lib/components/sendungskette/sendungskette.component.html","../../../projects/sendung-lib/src/lib/components/dispo-detail/dispo-detail.component.ts","../../../projects/sendung-lib/src/lib/components/dispo-detail/dispo-detail.component.html","../../../projects/sendung-lib/src/lib/components/colli-uebersicht/colli-uebersicht.component.ts","../../../projects/sendung-lib/src/lib/components/colli-uebersicht/colli-uebersicht.component.html","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/aktuelle-daten/aktuelle-daten.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/aktuelle-daten/aktuelle-daten.component.html","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/korrektur-daten/korrektur-daten.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/korrektur-daten/korrektur-daten.component.html","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/korrektur-button-cell/korrektur-button-cell.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-korrektur/korrektur-button-cell/korrektur-button-cell.component.html","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-information.component.ts","../../../projects/sendung-lib/src/lib/components/sendung-information/sendung-information.component.html","../../../projects/sendung-lib/src/public-api.ts","../../../projects/sendung-lib/src/sendung-lib.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SendungLibService {\r\n\r\n constructor() { }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-sendung-lib',\r\n standalone: true,\r\n imports: [],\r\n template: ``,\r\n styles: ``\r\n})\r\nexport class SendungLibComponent {\r\n\r\n}\r\n","// Example locale file for English, give this to your locale team to translate\r\n\r\nexport const AG_GRID_LOCALE_DE = {\r\n // Set Filter\r\n selectAll: '(Select All)',\r\n selectAllSearchResults: '(Select All Search Results)',\r\n searchOoo: 'Search...',\r\n blanks: '(Blanks)',\r\n noMatches: 'No matches',\r\n\r\n // Number Filter & Text Filter\r\n filterOoo: 'Filter...',\r\n equals: 'Gleich',\r\n notEqual: 'Ungleich',\r\n empty: 'Choose One',\r\n\r\n // Number Filter\r\n lessThan: 'Kleiner als',\r\n greaterThan: 'Größer als',\r\n lessThanOrEqual: 'Kleiner oder gleich',\r\n greaterThanOrEqual: 'Größer oder gleich',\r\n inRange: 'In range',\r\n inRangeStart: 'von',\r\n inRangeEnd: 'bis',\r\n\r\n // Text Filter\r\n contains: 'Enthält',\r\n notContains: 'Enthält nicht',\r\n startsWith: 'Startet mit',\r\n endsWith: 'Ended mit',\r\n\r\n // Date Filter\r\n dateFormatOoo: 'yyyy-mm-dd',\r\n\r\n // Filter Conditions\r\n andCondition: 'UND',\r\n orCondition: 'ODER',\r\n\r\n // Filter Buttons\r\n applyFilter: 'Apply',\r\n resetFilter: 'Reset',\r\n clearFilter: 'Clear',\r\n cancelFilter: 'Cancel',\r\n\r\n // Filter Titles\r\n textFilter: 'Text Filter',\r\n numberFilter: 'Number Filter',\r\n dateFilter: 'Date Filter',\r\n setFilter: 'Set Filter',\r\n\r\n // Side Bar\r\n columns: 'Columns',\r\n filters: 'Filters',\r\n\r\n // columns tool panel\r\n pivotMode: 'Pivot Mode',\r\n groups: 'Row Groups',\r\n rowGroupColumnsEmptyMessage: 'Drag here to set row groups',\r\n values: 'Values',\r\n valueColumnsEmptyMessage: 'Drag here to aggregate',\r\n pivots: 'Column Labels',\r\n pivotColumnsEmptyMessage: 'Drag here to set column labels',\r\n\r\n // Header of the Default Group Column\r\n group: 'Group',\r\n\r\n // Other\r\n loadingOoo: 'Loading...',\r\n noRowsToShow: 'No Rows To Show',\r\n enabled: 'Enabled',\r\n\r\n // Menu\r\n pinColumn: 'Pin Column',\r\n pinLeft: 'Pin Left',\r\n pinRight: 'Pin Right',\r\n noPin: 'No Pin',\r\n valueAggregation: 'Value Aggregation',\r\n autosizeThiscolumn: 'Autosize This Column',\r\n autosizeAllColumns: 'Autosize All Columns',\r\n groupBy: 'Group by',\r\n ungroupBy: 'Un-Group by',\r\n resetColumns: 'Reset Columns',\r\n expandAll: 'Expand All',\r\n collapseAll: 'Close All',\r\n copy: 'Copy',\r\n ctrlC: 'Ctrl+C',\r\n copyWithHeaders: 'Copy With Headers',\r\n paste: 'Paste',\r\n ctrlV: 'Ctrl+V',\r\n export: 'Export',\r\n csvExport: 'CSV Export',\r\n excelExport: 'Excel Export (.xlsx)',\r\n excelXmlExport: 'Excel Export (.xml)',\r\n\r\n // Enterprise Menu Aggregation and Status Bar\r\n sum: 'Sum',\r\n min: 'Min',\r\n max: 'Max',\r\n none: 'None',\r\n count: 'Count',\r\n avg: 'Average',\r\n filteredRows: 'Filtered',\r\n selectedRows: 'Selected',\r\n totalRows: 'Total Rows',\r\n totalAndFilteredRows: 'Rows',\r\n more: 'More',\r\n to: 'to',\r\n of: 'of',\r\n page: 'Page',\r\n nextPage: 'Next Page',\r\n lastPage: 'Last Page',\r\n firstPage: 'First Page',\r\n previousPage: 'Previous Page',\r\n\r\n // Enterprise Menu (Charts)\r\n pivotChartAndPivotMode: 'Pivot Chart & Pivot Mode',\r\n pivotChart: 'Pivot Chart',\r\n chartRange: 'Chart Range',\r\n\r\n columnChart: 'Column',\r\n groupedColumn: 'Grouped',\r\n stackedColumn: 'Stacked',\r\n normalizedColumn: '100% Stacked',\r\n\r\n barChart: 'Bar',\r\n groupedBar: 'Grouped',\r\n stackedBar: 'Stacked',\r\n normalizedBar: '100% Stacked',\r\n\r\n pieChart: 'Pie',\r\n pie: 'Pie',\r\n doughnut: 'Doughnut',\r\n\r\n line: 'Line',\r\n\r\n xyChart: 'X Y (Scatter)',\r\n scatter: 'Scatter',\r\n bubble: 'Bubble',\r\n\r\n areaChart: 'Area',\r\n area: 'Area',\r\n stackedArea: 'Stacked',\r\n normalizedArea: '100% Stacked',\r\n\r\n histogramChart: 'Histogram',\r\n\r\n // Charts\r\n pivotChartTitle: 'Pivot Chart',\r\n rangeChartTitle: 'Range Chart',\r\n settings: 'Settings',\r\n data: 'Data',\r\n format: 'Format',\r\n categories: 'Categories',\r\n defaultCategory: '(None)',\r\n series: 'Series',\r\n xyValues: 'X Y Values',\r\n paired: 'Paired Mode',\r\n axis: 'Axis',\r\n navigator: 'Navigator',\r\n color: 'Color',\r\n thickness: 'Thickness',\r\n xType: 'X Type',\r\n automatic: 'Automatic',\r\n category: 'Category',\r\n number: 'Number',\r\n time: 'Time',\r\n xRotation: 'X Rotation',\r\n yRotation: 'Y Rotation',\r\n ticks: 'Ticks',\r\n width: 'Width',\r\n height: 'Height',\r\n length: 'Length',\r\n padding: 'Padding',\r\n spacing: 'Spacing',\r\n chart: 'Chart',\r\n title: 'Title',\r\n titlePlaceholder: 'Chart title - double click to edit',\r\n background: 'Background',\r\n font: 'Font',\r\n top: 'Top',\r\n right: 'Right',\r\n bottom: 'Bottom',\r\n left: 'Left',\r\n labels: 'Labels',\r\n size: 'Size',\r\n minSize: 'Minimum Size',\r\n maxSize: 'Maximum Size',\r\n legend: 'Legend',\r\n position: 'Position',\r\n markerSize: 'Marker Size',\r\n markerStroke: 'Marker Stroke',\r\n markerPadding: 'Marker Padding',\r\n itemSpacing: 'Item Spacing',\r\n itemPaddingX: 'Item Padding X',\r\n itemPaddingY: 'Item Padding Y',\r\n layoutHorizontalSpacing: 'Horizontal Spacing',\r\n layoutVerticalSpacing: 'Vertical Spacing',\r\n strokeWidth: 'Stroke Width',\r\n offset: 'Offset',\r\n offsets: 'Offsets',\r\n tooltips: 'Tooltips',\r\n callout: 'Callout',\r\n markers: 'Markers',\r\n shadow: 'Shadow',\r\n blur: 'Blur',\r\n xOffset: 'X Offset',\r\n yOffset: 'Y Offset',\r\n lineWidth: 'Line Width',\r\n normal: 'Normal',\r\n bold: 'Bold',\r\n italic: 'Italic',\r\n boldItalic: 'Bold Italic',\r\n predefined: 'Predefined',\r\n fillOpacity: 'Fill Opacity',\r\n strokeOpacity: 'Line Opacity',\r\n histogramBinCount: 'Bin count',\r\n columnGroup: 'Column',\r\n barGroup: 'Bar',\r\n pieGroup: 'Pie',\r\n lineGroup: 'Line',\r\n scatterGroup: 'X Y (Scatter)',\r\n areaGroup: 'Area',\r\n histogramGroup: 'Histogram',\r\n groupedColumnTooltip: 'Grouped',\r\n stackedColumnTooltip: 'Stacked',\r\n normalizedColumnTooltip: '100% Stacked',\r\n groupedBarTooltip: 'Grouped',\r\n stackedBarTooltip: 'Stacked',\r\n normalizedBarTooltip: '100% Stacked',\r\n pieTooltip: 'Pie',\r\n doughnutTooltip: 'Doughnut',\r\n lineTooltip: 'Line',\r\n groupedAreaTooltip: 'Area',\r\n stackedAreaTooltip: 'Stacked',\r\n normalizedAreaTooltip: '100% Stacked',\r\n scatterTooltip: 'Scatter',\r\n bubbleTooltip: 'Bubble',\r\n histogramTooltip: 'Histogram',\r\n noDataToChart: 'No data available to be charted.',\r\n pivotChartRequiresPivotMode: 'Pivot Chart requires Pivot Mode enabled.'\r\n};\r\n","import {Component, OnInit, TemplateRef} from '@angular/core';\r\nimport {BsModalRef, BsModalService, ModalModule, ModalOptions} from \"ngx-bootstrap/modal\";\r\nimport {IAfterGuiAttachedParams, ICellRendererParams} from \"ag-grid-community\";\r\nimport {Lightbox} from \"ngx-lightbox\";\r\nimport {faInfoCircle, faImage} from '@fortawesome/free-solid-svg-icons';\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\nimport {NgClass} from \"@angular/common\";\r\nimport {ICellRendererAngularComp} from \"ag-grid-angular\";\r\n\r\n@Component({\r\n selector: 'lib-info-cell',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent,\r\n ModalModule,\r\n NgClass\r\n ],\r\n templateUrl: './info-cell.component.html',\r\n styleUrl: './info-cell.component.css'\r\n})\r\nexport class InfoCellComponent implements ICellRendererAngularComp, OnInit{\r\n public modalRef: BsModalRef;\r\n faInfoCircle = faInfoCircle;\r\n faImage = faImage;\r\n public params;\r\n public highlight: boolean = false;\r\n public alvImage: string[];\r\n public alvText: string;\r\n private _albums = [];\r\n\r\n constructor(private modalService: BsModalService, private lightbox: Lightbox) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.checkValues(this.params.data.hinweisEmpfaenger);\r\n this.checkValues(this.params.data.hinweisOperativ);\r\n this.alvImage = this.params.data.alvImage;\r\n this.alvText = this.params.data.alvText;\r\n }\r\n\r\n afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\r\n }\r\n\r\n refresh(params: ICellRendererParams): boolean {\r\n return false;\r\n }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.params = params;\r\n }\r\n\r\n displayInfos(template: TemplateRef<void>): void {\r\n const config: ModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n animated: true,\r\n ignoreBackdropClick: true,\r\n };\r\n this.modalRef = this.modalService.show(template, config);\r\n }\r\n\r\n checkValues(values: any) {\r\n if (values === null) {\r\n return 'Keine Hinweise vorhanden!';\r\n } else {\r\n this.highlight = true;\r\n return values;\r\n }\r\n }\r\n\r\n showEmpfaengerName(param: any) {\r\n const name1 = param.data.empfaengerName1 !== null ? param.data.empfaengerName1 : '';\r\n const name2 = param.data.empfaengerName2 !== null ? param.data.empfaengerName2 : '';\r\n const name3 = param.data.empfaengerName3 !== null ? param.data.empfaengerName3 : '';\r\n return name1 + ' ' + name2 + ' ' + name3;\r\n }\r\n\r\n public zoomImg(imgsrcArray: string[]) {\r\n this._albums = [];\r\n imgsrcArray.map((imgsrc) => {\r\n const src = imgsrc;\r\n const album = {\r\n src: src\r\n };\r\n this._albums.push(album);\r\n });\r\n\r\n this.lightbox.open(this._albums, 0);\r\n }\r\n\r\n}\r\n","<div (click)=\"displayInfos(template)\" class=\"customCss\">\r\n <fa-icon [ngClass]=\"highlight ? 'highlight' : 'notHighlighted'\" [icon]=\"faInfoCircle\"></fa-icon>\r\n</div>\r\n\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title pull-left\">Hinweise</h5>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">&times;</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Empfänger:</span><br>\r\n {{ this.showEmpfaengerName(params) }}<br>\r\n {{ params.data.empfaengerStrasse }} &nbsp; {{ params.data.empfaengerHausnr }}<br>\r\n {{ params.data.empfaengerPlz }} &nbsp; {{ params.data.empfaengerOrt }}<br>\r\n {{ params.data.empfaengerLand }}<br>\r\n <hr>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Operative Hinweise: </span>\r\n <p>{{ this.checkValues(params.data.hinweisEmpfaenger) }}</p>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Empfänger Hinweise: </span>\r\n <p>{{ this.checkValues(params.data.hinweisOperativ) }}</p>\r\n </div>\r\n @if (alvImage?.length > 0) {\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold; margin-right: 1rem\">ALV-Infos</span>\r\n <fa-icon (click)=\"zoomImg(alvImage)\" [icon]=\"faImage\" size=\"lg\"></fa-icon>\r\n <p>{{ alvText }}</p>\r\n </div>\r\n }\r\n</ng-template>\r\n\r\n","import {Injectable} from '@angular/core';\r\nimport {BehaviorSubject} from 'rxjs';\r\nimport {Dienst} from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FormService {\r\n public submittedForm = new BehaviorSubject(null);\r\n\r\n public dienste = new BehaviorSubject(null);\r\n public dienste$ = this.dienste.asObservable();\r\n\r\n public allowedDienste = new BehaviorSubject([]);\r\n public oldDienst;\r\n\r\n public shipmentInfo = new BehaviorSubject([]);\r\n\r\n public selbstabholer = new BehaviorSubject(false);\r\n public selbstAbh;\r\n\r\n\r\n constructor() {\r\n this.allowedDienste.subscribe((allowedDienste: Dienst[]) => {\r\n allowedDienste.forEach((oldDienst: Dienst) => {\r\n this.oldDienst = oldDienst\r\n })\r\n });\r\n this.selbstabholer.subscribe((selbstAbh: boolean) => {\r\n this.selbstAbh = selbstAbh;\r\n })\r\n }\r\n\r\n getSubmittedForm(form) {\r\n let formsValue = form;\r\n let dienstKorrektur = {};\r\n\r\n if (formsValue.dienste !== null) {\r\n dienstKorrektur =\r\n {\r\n diensttypId: formsValue.dienste.id,\r\n datumUhrzeit: formsValue.datumUhrzeit\r\n }\r\n } else if(this.selbstAbh) {\r\n dienstKorrektur =\r\n {\r\n diensttypId: 83,\r\n datumUhrzeit: formsValue.datumUhrzeit\r\n }\r\n }\r\n else {\r\n dienstKorrektur;\r\n }\r\n\r\n let reqBody: any = {\r\n sendungId: null,\r\n dienstKorrektur: dienstKorrektur,\r\n colli: formsValue.colli,\r\n paletten: formsValue.palette,\r\n gesamtgewicht: formsValue.gewicht\r\n };\r\n\r\n this.submittedForm.next(reqBody);\r\n }\r\n\r\n setDienste(dienste) {\r\n this.dienste.next(dienste);\r\n };\r\n}\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {GridApi, IAfterGuiAttachedParams} from \"ag-grid-community\";\r\nimport {Dienst, ShipmentInfo} from \"../../../models\";\r\nimport {FormService} from \"../../../services/form.service\";\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\n\r\n@Component({\r\n selector: 'lib-radioaktiv-cell',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent\r\n ],\r\n templateUrl: './radioaktiv-cell.component.html',\r\n styleUrl: './radioaktiv-cell.component.css'\r\n})\r\nexport class RadioaktivCellComponent implements OnInit{\r\n\r\n public params: any;\r\n public gridApi: GridApi;\r\n\r\n public isRadioActive: boolean = false;\r\n\r\n constructor(private formService: FormService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.formService.shipmentInfo.subscribe((shipmentInfoDetail: ShipmentInfo[]) => {\r\n shipmentInfoDetail?.forEach((info: ShipmentInfo) => {\r\n info.dienste?.forEach((dienst: Dienst) => {\r\n if (dienst.dienstart === 'I' && dienst.code === 'GGVS3' || dienst.code === 'GGVS8') {\r\n this.isRadioActive = true;\r\n }\r\n });\r\n });\r\n });\r\n }\r\n\r\n agInit(params: any): void {\r\n this.params = params;\r\n this.gridApi = params.api;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n }\r\n\r\n refresh(): boolean {\r\n return true;\r\n }\r\n\r\n afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\r\n }\r\n\r\n}\r\n","@if (isRadioActive) {\r\n <img class=\"image-size\" src=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA3NS45NCA3NS45NyI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZWQwMWM7fS5jbHMtMntmaWxsOiMwMTAxMDE7fTwvc3R5bGU+PC9kZWZzPjxnIGlkPSJFYmVuZV8yIiBkYXRhLW5hbWU9IkViZW5lIDIiPjxnIGlkPSJFYmVuZV8xLTIiIGRhdGEtbmFtZT0iRWJlbmUgMSI+PGVsbGlwc2UgY2xhc3M9ImNscy0xIiBjeD0iMzcuOTciIGN5PSIzNy45OCIgcng9IjM3Ljk3IiByeT0iMzcuOTgiLz48cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik0zOCw3Mi41N2EzNC41OCwzNC41OCwwLDAsMS0yNC40NC01OUEzNC41NywzNC41NywwLDAsMSw2Mi40MSw2Mi40NCwzNC4zNCwzNC4zNCwwLDAsMSwzOCw3Mi41N1pNMzgsNi4xMkEzMS44NywzMS44NywwLDEsMCw2OS44MywzOCwzMS44OSwzMS44OSwwLDAsMCwzOCw2LjEyWiIvPjxjaXJjbGUgY2xhc3M9ImNscy0yIiBjeD0iMzcuOTciIGN5PSIzNy45OCIgcj0iNS42Ii8+PHBhdGggY2xhc3M9ImNscy0yIiBkPSJNMzgsNDYuNTdhOC43Nyw4Ljc3LDAsMCwxLTQuNTktMS4zbC04LjY4LDE1YTI2LjA1LDI2LjA1LDAsMCwwLDI2LjUzLDBsLTguNjgtMTVBOC43MSw4LjcxLDAsMCwxLDM4LDQ2LjU3WiIvPjxwYXRoIGNsYXNzPSJjbHMtMiIgZD0iTTMzLjgyLDMwLjE0bC04LjY4LTE1QTI2LjEyLDI2LjEyLDAsMCwwLDExLjg4LDM3LjMySDI5LjI1QTguNzMsOC43MywwLDAsMSwzMy44MiwzMC4xNFoiLz48cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik00Ni42OSwzNy4zMkg2NC4wNkEyNi4xNCwyNi4xNCwwLDAsMCw1MC44LDE1LjFsLTguNjgsMTVBOC43NSw4Ljc1LDAsMCwxLDQ2LjY5LDM3LjMyWiIvPjwvZz48L2c+PC9zdmc+\">\r\n}\r\n\r\n\r\n\r\n","import {Component, OnInit, TemplateRef} from '@angular/core';\r\nimport {ICellRendererAngularComp} from \"ag-grid-angular\";\r\nimport {BsModalRef, BsModalService, ModalOptions} from \"ngx-bootstrap/modal\";\r\nimport {IAfterGuiAttachedParams, ICellRendererParams} from \"ag-grid-community\";\r\nimport {faInfoCircle} from '@fortawesome/free-solid-svg-icons';\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\n\r\n@Component({\r\n selector: 'lib-colli-info-cell',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent\r\n ],\r\n templateUrl: './colli-info-cell.component.html',\r\n styleUrl: './colli-info-cell.component.css'\r\n})\r\nexport class ColliInfoCellComponent implements OnInit, ICellRendererAngularComp {\r\n modalRef: BsModalRef;\r\n faInfoCircle = faInfoCircle;\r\n public params: ICellRendererParams;\r\n\r\n\r\n constructor(private modalService: BsModalService) {}\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\r\n }\r\n\r\n refresh(params: ICellRendererParams): boolean {\r\n return false;\r\n }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.params = params;\r\n }\r\n\r\n displayInfos(template: TemplateRef<any>): void {\r\n const config: ModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n animated: true,\r\n ignoreBackdropClick: true,\r\n };\r\n this.modalRef = this.modalService.show(template, config);\r\n }\r\n\r\n showDimensions(values: any) {\r\n const laenge = values.laenge !== null ? values.laenge : '0';\r\n const breite = values.breite !== null ? values.breite : '0';\r\n const hoehe = values.hoehe !== null ? values.hoehe : '0';\r\n const volumen = values.volumen !== null ? values.volumen : '0';\r\n\r\n return laenge + ' ' + ' x ' + breite + ' ' + ' x ' + hoehe + ' ' + ' / ' + volumen;\r\n }\r\n\r\n checkValues(values: any) {\r\n if (values === '' || values === undefined || values === null) {\r\n return '-';\r\n } else {\r\n return values;\r\n }\r\n }\r\n}\r\n","<div (click)=\"displayInfos(template)\" class=\"customCss\">\r\n <fa-icon [icon]=\"faInfoCircle\"></fa-icon>\r\n</div>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title pull-left\">Hinweise</h5>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">&times;</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Länge / Breite / Höhe / m³: </span><br>\r\n {{ this.showDimensions(params.data) }}\r\n <hr>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Bearbeiter: </span><br>\r\n {{ this.checkValues(params.data.bearbeiter) }}\r\n <hr>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <span style=\"font-weight: bold\">Text: </span><br>\r\n {{ this.checkValues(params.data.text) }}\r\n </div>\r\n</ng-template>\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {Observable} from \"rxjs\";\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\nimport {ColliInfoCellComponent} from \"./colli-info-cell/colli-info-cell.component\";\r\nimport {ColliEvent} from \"../../models\";\r\n\r\n@Component({\r\n selector: 'lib-colli-ereignisse',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './colli-ereignisse.component.html',\r\n styleUrl: './colli-ereignisse.component.css'\r\n})\r\nexport class ColliEreignisseComponent implements OnInit {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public show: boolean;\r\n\r\n public locale = AG_GRID_LOCALE_DE;\r\n\r\n @Input() colliEvent: Observable<ColliEvent[]>;\r\n\r\n // @Input() set colliEvent(data: Observable<any>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if (this.gridApi) {\r\n // if (data) {\r\n // data.subscribe((colliEvent) => {\r\n // this.gridApi.setGridOption('rowData', colliEvent);\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true,\r\n cellClass: 'locked-col'\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'scantyp',\r\n headerName: 'Typ',\r\n minWidth: 100\r\n },\r\n {\r\n field: 'tournr',\r\n headerName: 'Tournr',\r\n maxWidth: 100\r\n },\r\n {\r\n field: 'statustyp',\r\n headerName: 'CE'\r\n },\r\n {\r\n field: 'depotnr',\r\n headerName: 'DepotNr',\r\n maxWidth: 120\r\n },\r\n {\r\n field: 'barcode',\r\n headerName: 'Barcode',\r\n minWidth: 250\r\n },\r\n {\r\n valueGetter: this.sliceTime,\r\n headerName: 'Datum/Zeit',\r\n minWidth: 150,\r\n sort: 'desc'\r\n },\r\n {\r\n field: 'geraetenummer',\r\n headerName: 'Gerät',\r\n maxWidth: 200\r\n },\r\n {\r\n field: 'istRutsche',\r\n headerName: 'Rutsche',\r\n maxWidth: 130\r\n },\r\n {\r\n field: 'storno',\r\n headerName: 'Storno',\r\n maxWidth: 100\r\n },\r\n {\r\n headerName: 'Hinweise',\r\n cellRenderer: ColliInfoCellComponent,\r\n maxWidth: 150\r\n },\r\n ];\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.colliEvent) {\r\n this.colliEvent.subscribe((colliEvent) => {\r\n this.gridApi.setGridOption('rowData', colliEvent);\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n }\r\n\r\n sliceTime(params: any) {\r\n return params.data?.zeitpunkt?.slice(0, 16);\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body\">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n [enableCellTextSelection]=\"true\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, OnInit, TemplateRef} from '@angular/core';\r\nimport {ICellRendererAngularComp} from \"ag-grid-angular\";\r\nimport {BsModalRef, BsModalService, ModalOptions} from \"ngx-bootstrap/modal\";\r\nimport {faInfoCircle} from '@fortawesome/free-solid-svg-icons';\r\nimport {IAfterGuiAttachedParams, ICellRendererParams} from \"ag-grid-community\";\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-sendung-ereignisse-info-cell',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent\r\n ],\r\n templateUrl: './sendung-ereignisse-info-cell.component.html',\r\n styleUrl: './sendung-ereignisse-info-cell.component.css'\r\n})\r\nexport class SendungEreignisseInfoCellComponent implements ICellRendererAngularComp, OnInit {\r\n public modalRef: BsModalRef;\r\n public params;\r\n faInfoCircle = faInfoCircle;\r\n public sendungsereignis;\r\n\r\n constructor(private modalService: BsModalService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.sendungsereignis = this.params.data;\r\n }\r\n\r\n afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\r\n }\r\n\r\n refresh(params: ICellRendererParams): boolean {\r\n return false;\r\n }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.params = params;\r\n }\r\n\r\n displayInfos(template: TemplateRef<any>): void {\r\n const config: ModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n animated: true,\r\n ignoreBackdropClick: true,\r\n };\r\n this.modalRef = this.modalService.show(template, config);\r\n }\r\n}\r\n","<div (click)=\"displayInfos(template)\" class=\"customCss\">\r\n @if (sendungsereignis.statustypId === 12) {\r\n <fa-icon [icon]=\"faInfoCircle\"></fa-icon>\r\n }\r\n</div>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title pull-left\">Informationseintrag</h5>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">&times;</span>\r\n </button>\r\n </div>\r\n\r\n <div class=\"modal-body text-left\">\r\n {{ sendungsereignis.text }}\r\n </div>\r\n</ng-template>\r\n","import {Component, Input} from '@angular/core';\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {faCaretDown, faCaretUp} from '@fortawesome/free-solid-svg-icons';\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {Observable} from \"rxjs\";\r\nimport {Sendungsereignisse} from \"../../models\";\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\nimport {\r\n SendungEreignisseInfoCellComponent\r\n} from \"./sendung-ereignisse-info-cell/sendung-ereignisse-info-cell.component\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-sendung-ereignisse',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './sendung-ereignisse.component.html',\r\n styleUrl: './sendung-ereignisse.component.css'\r\n})\r\nexport class SendungEreignisseComponent {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public carretUp = faCaretUp;\r\n public carretDown = faCaretDown;\r\n public show: boolean;\r\n public locale = AG_GRID_LOCALE_DE;\r\n public isCollapsed: boolean = false;\r\n\r\n @Input() sendungsereignisse: Observable<Sendungsereignisse[]>;\r\n\r\n // @Input() set sendungsereignisse(data: Observable<Sendungsereignisse[]>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if(this.gridApi) {\r\n // if(data) {\r\n // data.subscribe((sendungsereignisse) => {\r\n // this.gridApi.setGridOption('rowData', sendungsereignisse)\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true, cellClass: 'locked-col'\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'statustyp',\r\n headerName: 'SE',\r\n },\r\n {\r\n headerName: 'Info',\r\n cellRenderer: SendungEreignisseInfoCellComponent,\r\n maxWidth: 80\r\n },\r\n {\r\n field: 'statusgrundtyp',\r\n headerName: 'Substatus',\r\n },\r\n {\r\n field: 'storno',\r\n headerName: 'Storno'\r\n },\r\n {\r\n field: 'bearbeiter',\r\n headerName: 'Bearbeiter',\r\n },\r\n {\r\n field: 'wiedereinstreudatum',\r\n headerName: 'WE',\r\n },\r\n {\r\n valueGetter: this.slicedTime,\r\n headerName: 'Datum/Zeit',\r\n sort: 'desc'\r\n }\r\n ];\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.sendungsereignisse) {\r\n this.sendungsereignisse.subscribe((sendungsereignisse) => {\r\n this.gridApi.setGridOption('rowData', sendungsereignisse)\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n }\r\n\r\n slicedTime(params: any) {\r\n return params.data?.zeitpunkt?.slice(0, 16);\r\n }\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body\">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {Observable} from \"rxjs\";\r\nimport {Gefahrgut} from \"../../models\";\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {faCaretDown, faCaretUp} from '@fortawesome/free-solid-svg-icons';\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-gefahrgut',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './gefahrgut.component.html',\r\n styleUrl: './gefahrgut.component.css'\r\n})\r\nexport class GefahrgutComponent {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public carretUp = faCaretUp;\r\n public carretDown = faCaretDown;\r\n public show: boolean;\r\n public isCollapsed: boolean = false;\r\n public locale = AG_GRID_LOCALE_DE;\r\n\r\n @Input() dangerous_goods: Observable<Gefahrgut[]>;\r\n\r\n // @Input() set dangerous_goods(data: Observable<Gefahrgut[]>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if (this.gridApi) {\r\n // if (data) {\r\n // data.subscribe((gefahrgut) => {\r\n // this.gridApi.setGridOption('rowData', gefahrgut)\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true,\r\n cellClass: 'locked-col'\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'unnr',\r\n headerName: 'UN',\r\n },\r\n {\r\n field: 'gewicht',\r\n headerName: 'Kg',\r\n },\r\n {\r\n field: 'klasse',\r\n headerName: 'Klasse',\r\n },\r\n {\r\n field: 'stoffbezeichnung',\r\n headerName: 'Stoffbezeichnung',\r\n },\r\n {\r\n field: 'nebengefahren',\r\n headerName: 'Nebengefahr',\r\n }\r\n ]\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.dangerous_goods) {\r\n this.dangerous_goods.subscribe((gefahrgut) => {\r\n this.gridApi.setGridOption('rowData', gefahrgut)\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n }\r\n\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body \">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, TemplateRef} from '@angular/core';\r\nimport {BsModalRef, BsModalService, ModalOptions} from \"ngx-bootstrap/modal\";\r\nimport {ICellRendererParams} from \"ag-grid-community\";\r\nimport {ICellRendererAngularComp} from \"ag-grid-angular\";\r\nimport {faInfoCircle} from '@fortawesome/free-solid-svg-icons';\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-empfaenger-details',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent\r\n ],\r\n templateUrl: './empfaenger-details.component.html',\r\n styleUrl: './empfaenger-details.component.css'\r\n})\r\nexport class EmpfaengerDetailsComponent implements ICellRendererAngularComp {\r\n\r\n public modalRef: BsModalRef;\r\n faInfoCircle = faInfoCircle;\r\n public params: ICellRendererParams;\r\n\r\n constructor(private modalService: BsModalService) {\r\n }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.params = params;\r\n }\r\n\r\n refresh(params: ICellRendererParams): boolean {\r\n return false;\r\n }\r\n\r\n displayInfos(template: TemplateRef<any>): void {\r\n const config: ModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n animated: true,\r\n ignoreBackdropClick: true,\r\n };\r\n this.modalRef = this.modalService.show(template, config);\r\n }\r\n\r\n showEmpfaengerName(param: any) {\r\n const name1 = param.data.empfaengerName1 !== null ? param.data.empfaengerName1 : '';\r\n const name2 = param.data.empfaengerName2 !== null ? param.data.empfaengerName2 : '';\r\n const name3 = param.data.empfaengerName3 !== null ? param.data.empfaengerName3 : '';\r\n return name1 + ' ' + name2 + ' ' + name3;\r\n }\r\n\r\n}\r\n","<div style=\"cursor: pointer\" (click)=\"displayInfos(template)\" class=\"customCss\">\r\n <fa-icon [icon]=\"faInfoCircle\"></fa-icon>\r\n</div>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title pull-left\">Empfänger</h5>\r\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\r\n <span aria-hidden=\"true\">&times;</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n {{ this.showEmpfaengerName(params) }}<br>\r\n {{ params.data.empfaengerStrasse }} &nbsp; {{ params.data.empfaengerHausnr }}<br>\r\n {{ params.data.empfaengerPlz }} &nbsp; {{ params.data.empfaengerOrt }}<br>\r\n {{ params.data.empfaengerLand }}<br>\r\n </div>\r\n</ng-template>\r\n","import {Component, Input} from '@angular/core';\r\nimport {Dienst, Scannungen, ShipmentInfo} from \"../../models\";\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {Observable} from \"rxjs\";\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {faCaretDown, faCaretUp} from '@fortawesome/free-solid-svg-icons';\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\nimport {EmpfaengerDetailsComponent} from \"./empfaenger-details/empfaenger-details.component\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-sendungskette',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './sendungskette.component.html',\r\n styleUrl: './sendungskette.component.css'\r\n})\r\nexport class SendungsketteComponent {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public carretUp = faCaretUp;\r\n public carretDown = faCaretDown;\r\n public show: boolean;\r\n public locale = AG_GRID_LOCALE_DE;\r\n public isCollapsed: boolean = false;\r\n\r\n @Input() sendungskette: Observable<ShipmentInfo[]>;\r\n\r\n // @Input() set sendungskette(data: Observable<ShipmentInfo[]>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if (this.gridApi) {\r\n // if (data) {\r\n // data.subscribe((shipmentInfo) => {\r\n // this.gridApi.setGridOption('rowData', shipmentInfo)\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'absender',\r\n headerName: 'Versender',\r\n },\r\n {\r\n field: 'erfassungstag',\r\n headerName: 'Ü-Datum',\r\n },\r\n {\r\n field: 'sendungsnr',\r\n headerName: 'Sendungsnr',\r\n\r\n },\r\n {\r\n field: 'langreferenz',\r\n headerName: 'RefNr',\r\n\r\n },\r\n {\r\n headerName: 'Empfänger',\r\n cellRenderer: EmpfaengerDetailsComponent,\r\n },\r\n {\r\n field: 'colli',\r\n headerName: 'Col/Pal',\r\n maxWidth: 100,\r\n valueGetter: this.getColAndPal\r\n },\r\n {\r\n field: 'gesamtgewicht',\r\n headerName: 'Gewicht',\r\n },\r\n {\r\n headerName: 'Dienste',\r\n valueGetter: this.showDienste,\r\n },\r\n {\r\n headerName: 'Depot',\r\n valueGetter: this.showDepotNr,\r\n maxWidth: 100\r\n },\r\n {\r\n headerName: 'Tournr',\r\n valueGetter: this.showTourNr,\r\n maxWidth: 100\r\n },\r\n ];\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.sendungskette) {\r\n this.sendungskette.subscribe((shipmentInfo) => {\r\n this.gridApi.setGridOption('rowData', shipmentInfo)\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n }\r\n\r\n getColAndPal(params) {\r\n const colli = params.data.colli;\r\n const paletten = params.data.paletten;\r\n return colli + '/' + paletten;\r\n }\r\n\r\n showDienste(param: any) {\r\n const dienste = [];\r\n param.data?.dienste?.map((dienst: Dienst) => {\r\n if (dienst.anzeigeKuerzel !== null) {\r\n dienste.push(dienst.anzeigeKuerzel);\r\n }\r\n });\r\n return dienste.join(', ');\r\n }\r\n\r\n showDepotNr(param: any) {\r\n let depotnr = null;\r\n\r\n param.data?.scannungen?.map((scannungen: Scannungen) => {\r\n depotnr = scannungen.depotnr;\r\n });\r\n return depotnr;\r\n }\r\n\r\n showTourNr(param: any) {\r\n let tournr = '';\r\n\r\n param.data?.scannungen?.map((scannungen: Scannungen) => {\r\n tournr = scannungen.tournr;\r\n });\r\n return tournr;\r\n }\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body \">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n [enableCellTextSelection]=\"true\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, Input} from '@angular/core';\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {DispoDetails} from \"../../models\";\r\nimport {Observable} from \"rxjs\";\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\n\r\n@Component({\r\n selector: 'lib-dispo-detail',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './dispo-detail.component.html',\r\n styleUrl: './dispo-detail.component.css'\r\n})\r\nexport class DispoDetailComponent {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public show: boolean;\r\n public locale = AG_GRID_LOCALE_DE;\r\n\r\n @Input() dispoDetails: Observable<DispoDetails[]>;\r\n\r\n // @Input() set dispoDetails(data: Observable<DispoDetails[]>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if(this.gridApi) {\r\n // if(data) {\r\n // data.subscribe((dispoDetails) => {\r\n // this.gridApi.setGridOption('rowData', dispoDetails)\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true, cellClass: 'locked-col'\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'tournr',\r\n valueGetter: this.editedTourNr,\r\n },\r\n {\r\n field: 'tourSektor',\r\n headerName: 'Toursektor',\r\n },\r\n {\r\n field: 'tourSektor',\r\n headerName: 'Soll-Stopp',\r\n },\r\n {\r\n field: 'ausliefertag',\r\n headerName: 'Datum',\r\n sort: 'desc'\r\n },\r\n {\r\n field: 'gewicht',\r\n headerName: 'Kg',\r\n }\r\n ]\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.dispoDetails) {\r\n this.dispoDetails.subscribe((dispoDetails) => {\r\n this.gridApi.setGridOption('rowData', dispoDetails)\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n\r\n }\r\n\r\n editedTourNr(param: any) {\r\n let tournr = param.data.tournr;\r\n return tournr ? tournr.slice(0, 1) + '-' + tournr.slice(1) : '';\r\n }\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body \">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n [enableCellTextSelection]=\"true\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, Input} from '@angular/core';\r\nimport {ColliUbersicht} from \"../../models/colliubersichtModel\";\r\nimport {ColDef, GridApi, GridReadyEvent} from \"ag-grid-community\";\r\nimport {Observable} from \"rxjs\";\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\n\r\n@Component({\r\n selector: 'lib-colli-uebersicht',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular\r\n ],\r\n templateUrl: './colli-uebersicht.component.html',\r\n styleUrl: './colli-uebersicht.component.css'\r\n})\r\nexport class ColliUebersichtComponent {\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public locale = AG_GRID_LOCALE_DE;\r\n\r\n @Input() colliUbersicht: Observable<ColliUbersicht[]>;\r\n\r\n // @Input() set colliUbersicht(data: Observable<ColliUbersicht[]>) {\r\n // let loadingInterval = setInterval(() => {\r\n // if (this.gridApi) {\r\n // if (data) {\r\n // data.subscribe((colliUebersicht) => {\r\n // this.gridApi.setGridOption('rowData', this.filterData(colliUebersicht))\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }\r\n // }, 200);\r\n // }\r\n\r\n constructor() {\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true,\r\n cellClass: 'locked-col',\r\n };\r\n\r\n this.columnDef = [\r\n {field: 'barcode', headerName: 'Barcode', minWidth: 250},\r\n {field: 'scantypDateKWA', headerName: 'KWA', minWidth: 150},\r\n {field: 'scantypDateUBN', headerName: 'UBN', minWidth: 150},\r\n {field: 'scantypDateKWE', headerName: 'KWE', minWidth: 150},\r\n {field: 'scantypDateRWE', headerName: 'RWE', minWidth: 150},\r\n {field: 'scantypDateBLD', headerName: 'BLD', minWidth: 150},\r\n {field: 'scantypDateSTW', headerName: 'STW', minWidth: 150},\r\n {field: 'scantypDateINV', headerName: 'INV', minWidth: 150},\r\n {field: 'scantypDateAUS', headerName: 'AUS', minWidth: 150},\r\n {field: 'scantypDateOFL', headerName: 'OFL', minWidth: 150},\r\n ];\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n let loadingInterval = setInterval(() => {\r\n if (this.colliUbersicht) {\r\n this.colliUbersicht.subscribe((colliUebersicht) => {\r\n this.gridApi.setGridOption('rowData', this.filterData(colliUebersicht))\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }, 200);\r\n }\r\n\r\n\r\n filterData(data: ColliUbersicht[]): ColliUbersicht[] {\r\n const resultArray: ColliUbersicht[] = [];\r\n data?.forEach(item => {\r\n const newItem: ColliUbersicht = {\r\n barcode: item.barcode,\r\n scantypDateKWA: this.formatTime(item.scantypDateKWA),\r\n scantypDateUBN: this.formatTime(item.scantypDateUBN),\r\n scantypDateKWE: this.formatTime(item.scantypDateKWE),\r\n scantypDateRWE: this.formatTime(item.scantypDateRWE),\r\n scantypDateBLD: this.formatTime(item.scantypDateBLD),\r\n scantypDateSTW: this.formatTime(item.scantypDateSTW),\r\n scantypDateINV: this.formatTime(item.scantypDateINV),\r\n scantypDateAUS: this.formatTime(item.scantypDateAUS),\r\n scantypDateOFL: this.formatTime(item.scantypDateOFL)\r\n };\r\n resultArray.push(newItem);\r\n });\r\n return resultArray;\r\n }\r\n\r\n formatTime(dateTime: string): string {\r\n if (!dateTime) return null;\r\n const [datePart, timePart] = dateTime.split(' ');\r\n const [hours, minutes, seconds] = timePart.split(':').map(part => parseInt(part));\r\n const formattedHours = hours < 10 ? `0${hours}` : hours.toString();\r\n const formattedSeconds = seconds < 10 ? `0${seconds}` : seconds.toString();\r\n const formattedMins = minutes < 10 ? `0${minutes}` : minutes.toString();\r\n return `${datePart} ${formattedHours}:${formattedMins}:${formattedSeconds}`;\r\n\r\n }\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body\">\r\n <div id=\"collapseBasic\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 800px\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n (gridReady)=\"gridReady($event)\"\r\n [enableCellTextSelection]=\"true\"\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n","import {Component, Input} from '@angular/core';\r\nimport {Dienst, ShipmentInfo} from \"../../../../models\";\r\nimport {FormService} from \"../../../../services/form.service\";\r\nimport {faBoxOpen, faPallet, faCogs, faWeightHanging} from '@fortawesome/free-solid-svg-icons';\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-aktuelle-daten',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent\r\n ],\r\n templateUrl: './aktuelle-daten.component.html',\r\n styleUrl: './aktuelle-daten.component.css'\r\n})\r\nexport class AktuelleDatenComponent {\r\n faBoxOpen = faBoxOpen;\r\n faPallet = faPallet;\r\n faCogs = faCogs;\r\n faWeightHanging = faWeightHanging;\r\n\r\n dienste: Dienst[] = [];\r\n displayDiensteToCorrect: Dienst[];\r\n\r\n @Input() shipmentInfoDetails: ShipmentInfo;\r\n @Input() allowedDienste: Dienst[];\r\n\r\n public colli;\r\n public palette;\r\n public gewicht;\r\n public displayDienste;\r\n\r\n constructor(private formService: FormService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.shipmentInfoDetails.dienste !== null) {\r\n this.shipmentInfoDetails.dienste.forEach((dienste: Dienst) => {\r\n this.dienste.push(dienste);\r\n });\r\n }\r\n\r\n setTimeout(() => {\r\n console.log(this.allowedDienste)\r\n }, 3000)\r\n\r\n let filteredAllowed = this.allowedDienste.map((allowedDienst: Dienst) => {\r\n return allowedDienst.bezeichnung;\r\n });\r\n this.displayDiensteToCorrect = this.dienste.filter((displayDienste: Dienst) => filteredAllowed.includes(displayDienste.bezeichnung));\r\n\r\n this.formService.allowedDienste.next(this.displayDiensteToCorrect);\r\n\r\n this.colli = this.shipmentInfoDetails.colli;\r\n this.palette = this.shipmentInfoDetails.paletten;\r\n this.gewicht = this.shipmentInfoDetails.gesamtgewicht;\r\n this.displayDienste = this.shipmentInfoDetails.dienste;\r\n\r\n }\r\n\r\n showDienste(param: any) {\r\n const dienste = [];\r\n param.map((dienst: Dienst) => {\r\n if (dienst.anzeigeKuerzel !== null) {\r\n dienste.push(dienst.anzeigeKuerzel);\r\n }\r\n });\r\n return dienste.join(', ');\r\n }\r\n}\r\n","<p>Aktuelle Werte</p>\r\n<div class=\"d-flex justify-content-between\">\r\n <div class=\"p-2\">\r\n <fa-icon [icon]=\"faBoxOpen\" class=\"iconSize\"></fa-icon>\r\n {{ colli }}\r\n </div>\r\n <div class=\"p-2\">\r\n <fa-icon [icon]=\"faPallet\" class=\"iconSize\"></fa-icon>\r\n {{ palette }}\r\n </div>\r\n <div class=\"p-2\">\r\n <fa-icon [icon]=\"faWeightHanging\" class=\"iconSize\"></fa-icon>\r\n {{ gewicht }} Kg\r\n </div>\r\n <div class=\"p-2\">\r\n <fa-icon [icon]=\"faCogs\" class=\"iconSize icon-stack mr-2\"></fa-icon>\r\n @if (displayDiensteToCorrect.length !== 0) {\r\n <span>{{ showDienste(dienste) }}</span>\r\n } @else {\r\n <span>{{ showDienste(dienste) }}</span>\r\n }\r\n </div>\r\n</div>\r\n","import {ChangeDetectorRef, Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {Dienst, ShipmentInfo} from \"../../../../models\";\r\nimport {faBoxOpen, faPallet, faCogs, faClock, faWeightHanging} from '@fortawesome/free-solid-svg-icons';\r\nimport {FormBuilder, FormsModule} from \"@angular/forms\";\r\nimport {FormService} from \"../../../../services/form.service\";\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\nimport {NgClass} from \"@angular/common\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-korrektur-daten',\r\n standalone: true,\r\n imports: [\r\n FaIconComponent,\r\n FormsModule,\r\n NgClass\r\n ],\r\n templateUrl: './korrektur-daten.component.html',\r\n styleUrl: './korrektur-daten.component.css'\r\n})\r\nexport class KorrekturDatenComponent implements OnInit {\r\n// Icons\r\n public faBoxOpen = faBoxOpen;\r\n public faPallet = faPallet;\r\n public faCogs = faCogs;\r\n public faClock = faClock;\r\n public faWeightHanging = faWeightHanging;\r\n\r\n public showTimePicker: boolean = true;\r\n public setDeliveryTime: boolean = false;\r\n public isColPalValid: boolean = true;\r\n public isGewichtValid: boolean = true;\r\n public displayError: boolean = false;\r\n\r\n public colli: number = 0;\r\n public palette: number = 0;\r\n public totalColliAndPalette: number = 0;\r\n public emptyString: string = '';\r\n\r\n public selectedDropdownDienst: Dienst;\r\n\r\n public diensttypId: number;\r\n public selectedDienst: string;\r\n public timeToDisplay;\r\n public selbstabholer: boolean = false;\r\n\r\n public keepWeight: string = '';\r\n public keepColli: number;\r\n public keepPalette: number;\r\n\r\n @Input() shipmentInfoDetails: ShipmentInfo;\r\n @Input() dienste: Dienst[];\r\n @Output() submitCloseModalEvent = new EventEmitter<any>();\r\n\r\n constructor(private fb: FormBuilder, private cd: ChangeDetectorRef, private formService: FormService) {\r\n this.setTime();\r\n }\r\n\r\n setTime() {\r\n let now = new Date();\r\n let hours = ('0' + now.getHours()).slice(-2);\r\n let minutes = ('0' + now.getMinutes()).slice(-2);\r\n let str = hours + ':' + minutes;\r\n this.timeToDisplay = str;\r\n }\r\n\r\n activateAbholer(event: any) {\r\n this.selbstabholer = event.currentTarget.checked;\r\n this.formService.selbstabholer.next(this.selbstabholer);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.totalColliAndPalette = this.shipmentInfoDetails.colli + this.shipmentInfoDetails.paletten;\r\n this.keepWeight = this.shipmentInfoDetails.gesamtgewicht;\r\n this.keepColli = this.shipmentInfoDetails.colli;\r\n this.keepPalette = this.shipmentInfoDetails.paletten;\r\n\r\n // Wenn der User keine Dienstkorrektur durchführt, dann wird der aktuelle Dienst übernommen\r\n this.shipmentInfoDetails.dienste.map((currentDienst) => {\r\n if (currentDienst.anzeigeKuerzel !== null) {\r\n this.dienste.forEach((allowedDienste) => {\r\n if (allowedDienste.code === currentDienst.code) {\r\n this.selectedDropdownDienst = currentDienst;\r\n this.getDienstData(this.selectedDropdownDienst);\r\n }\r\n });\r\n }\r\n });\r\n\r\n this.filterSaturdayFromCombobox();\r\n this.sortedDienste(this.dienste);\r\n }\r\n\r\n public filterSaturdayFromCombobox(): void {\r\n this.dienste.map((dienst: Dienst, index: number) => {\r\n if (dienst.code === 'SAMSTAG') {\r\n this.dienste.splice(index, 1);\r\n }\r\n });\r\n }\r\n\r\n checkTotalOfColliAndPalette(inputtype, value) {\r\n\r\n if (value.model === '' && inputtype === 'colli') {\r\n this.shipmentInfoDetails.colli = 0;\r\n } else if (value.model === '' && inputtype === 'palette') {\r\n this.shipmentInfoDetails.paletten = 0;\r\n }\r\n\r\n if (this.isCorrectedValuesNotNull()) {\r\n this.colli = +this.shipmentInfoDetails.colli;\r\n this.palette = +this.shipmentInfoDetails.paletten;\r\n const correctedColliAndPalette = this.colli + this.palette;\r\n\r\n this.totalColliAndPalette === correctedColliAndPalette ? this.isColPalValid = true : this.isColPalValid = false;\r\n this.cd.detectChanges();\r\n\r\n } else {\r\n this.isColPalValid = false;\r\n this.cd.detectChanges();\r\n }\r\n }\r\n\r\n isCorrectedValuesNotNull(): boolean {\r\n const colli = this.shipmentInfoDetails.colli;\r\n const palette = this.shipmentInfoDetails.paletten;\r\n\r\n const colliValidate = colli !== null && colli >= 0;\r\n const palValidate = palette !== null && palette >= 0;\r\n\r\n return colliValidate && palValidate;\r\n }\r\n\r\n onSubmit(isCorrectedValue: any): void {\r\n if (isCorrectedValue) {\r\n this.shipmentInfoDetails.datumUhrzeit = this.formatedDateString(new Date());\r\n\r\n const requestObject = {\r\n colli: this.shipmentInfoDetails.colli,\r\n palette: this.shipmentInfoDetails.paletten,\r\n gewicht: this.shipmentInfoDetails.gesamtgewicht,\r\n dienste: this.selectedDropdownDienst,\r\n diensttypid: this.selectedDropdownDienst.id,\r\n datumUhrzeit: this.shipmentInfoDetails.datumUhrzeit\r\n };\r\n\r\n this.formService.getSubmittedForm(requestObject);\r\n } else {\r\n this.shipmentInfoDetails.gesamtgewicht = this.keepWeight;\r\n this.shipmentInfoDetails.colli = this.keepColli;\r\n this.shipmentInfoDetails.paletten = this.keepPalette;\r\n }\r\n this.submitCloseModalEvent.emit(isCorrectedValue);\r\n }\r\n\r\n getDienstData(event: any) {\r\n this.selectedDienst = event?.code;\r\n this.selectedDienst === 'SONDER' ? this.setDeliveryTime = true : this.setDeliveryTime = false;\r\n this.diensttypId = event?.id;\r\n }\r\n\r\n sortedDienste(dienste): void {\r\n dienste.map((dienst: Dienst) => {\r\n switch (dienst.code) {\r\n case 'PLUS8':\r\n dienst.sortId = 1;\r\n break;\r\n case 'PLUS9':\r\n dienst.sortId = 2;\r\n break;\r\n case 'FRUEH':\r\n dienst.sortId = 3;\r\n break;\r\n case 'VORMITTAG':\r\n dienst.sortId = 4;\r\n break;\r\n case 'NORMAL':\r\n dienst.sortId = 5;\r\n break;\r\n case 'ABEND':\r\n dienst.sortId = 6;\r\n break;\r\n case 'SONDER':\r\n dienst.sortId = 7;\r\n break;\r\n }\r\n });\r\n\r\n this.dienste.sort((a, b) => a.sortId - b.sortId);\r\n }\r\n\r\n formatedDateString(event: Date): string {\r\n const month = (event.getMonth() + 1);\r\n const parsingDate = event.getDate() <= 9 ? '0' + event.getDate() : event.getDate();\r\n const parsingMonth = month <= 9 ? '0' + month : month;\r\n const date = parsingDate + '.' + parsingMonth + '.' + event.getFullYear() + ' ' + this.timeToDisplay + ':00';\r\n\r\n return date;\r\n }\r\n\r\n public checkChange(event) {\r\n let pointToComma = event.target.value.replace(/(\\d),(?=\\d)/g, '$1.');\r\n let inputAsInt = Number(pointToComma);\r\n if (inputAsInt >= 0 && inputAsInt < 25000) {\r\n this.displayError = false;\r\n this.isGewichtValid = true;\r\n this.cd.detectChanges();\r\n return this.shipmentInfoDetails.gesamtgewicht = inputAsInt.toString();\r\n } else {\r\n this.displayError = true;\r\n this.isGewichtValid = false;\r\n this.cd.detectChanges();\r\n return this.shipmentInfoDetails.gesamtgewicht;\r\n }\r\n }\r\n}\r\n","<p>Korrigierte Werte</p>\r\n<form class=\"text-left border border-light\" #addresForm=\"ngForm\">\r\n <div class=\"d-flex justify-content-between\">\r\n\r\n <fa-icon [icon]=\"faBoxOpen\" class=\"iconSizeBox mr-2\"></fa-icon>\r\n <input type=\"text\" id=\"colli\" class=\"form-control inputWidth mr-2\" placeholder=\"Anzahl Colli\" name=\"colli\"\r\n #colli='ngModel'\r\n [(ngModel)]=\"shipmentInfoDetails.colli\" (change)=\"checkTotalOfColliAndPalette('colli', colli)\">\r\n\r\n <fa-icon [icon]=\"faPallet\" class=\"iconSize mr-2\"></fa-icon>\r\n <input type=\"text\" id=\"palette\" class=\"form-control inputWidth mr-2\" placeholder=\"Anzahl Paletten\" name=\"paletten\"\r\n #paletten='ngModel'\r\n [(ngModel)]=\"shipmentInfoDetails.paletten\" (change)=\"checkTotalOfColliAndPalette('palette', paletten)\">\r\n </div>\r\n\r\n <div class=\"d-flex justify-content-between mt-2\">\r\n <fa-icon [icon]=\"faWeightHanging\" class=\"iconSize mr-2\"></fa-icon>\r\n <input type=\"text\" id=\"gewicht\" class=\"form-control inputWidth mr-2\" placeholder=\"Gewicht in Kg\" name=\"gewicht\"\r\n #gewicht='ngModel'\r\n (change)=\"checkChange($event)\"\r\n [ngClass]=\"{'displayErrorBorder': this.displayError === true}\"\r\n [ngModel]=\"shipmentInfoDetails.gesamtgewicht\">\r\n\r\n <fa-icon [icon]=\"faCogs\" class=\"iconSize mr-2\"></fa-icon>\r\n <select class=\"form-control inputWidth mr-2\" id=\"dienste\" [attr.disabled]=\"selbstabholer? '': null\" name=\"dienstt\"\r\n #dienstt='ngModel' [(ngModel)]=\"selectedDropdownDienst\" (ngModelChange)=\"getDienstData($event)\">\r\n <option disabled [value]=\"selectedDropdownDienst\">Dienst auswählen</option>\r\n @for (dienst of dienste; track dienst) {\r\n <option [ngValue]=\"dienst\">{{ dienst.bezeichnung }}</option>\r\n }\r\n </select>\r\n </div>\r\n\r\n @if (setDeliveryTime) {\r\n <div class=\"d-flex deliveryTime\">\r\n <fa-icon [icon]=\"faClock\" class=\"iconSize mr-2\"></fa-icon>\r\n <input type=\"time\" class=\"form-control\" id=\"datumUhrzeit\" name=\"uhrzeit\" #uhrzeit='ngModel'\r\n [(ngModel)]=\"timeToDisplay\">\r\n </div>\r\n }\r\n\r\n @if (!selectedDienst) {\r\n <div>\r\n <input class=\"selbstabholerCheckbox\" type=\"checkbox\" id=\"Selbstabholer\" name=\"Selbstabholer\"\r\n (change)=\"activateAbholer($event)\">\r\n <label for=\"Selbstabholer\">Selbstabholer</label>\r\n </div>\r\n }\r\n\r\n <div class=\"d-flex flex-row-reverse mt-5\">\r\n <div class=\"p-2\">\r\n <button class=\"btn btn-block btn-success\" [disabled]=\"!isColPalValid! || !isGewichtValid\"\r\n (click)=\"onSubmit(true)\">Speichern\r\n </button>\r\n </div>\r\n <div class=\"p-2\">\r\n <button class=\"btn btn-block btn-danger\" (click)=\"onSubmit(false)\">Abbrechen</button>\r\n </div>\r\n </div>\r\n @if (!isColPalValid || !isGewichtValid) {\r\n <span class=\"text-danger\">\r\n <p>Fehler! Bitte überprüfen Sie Ihre Eingaben. Colli und Paletten Stimmen nicht überein oder das eingegebene Gewicht befindet sich nicht zwischen 0 und 25000 kg. </p>\r\n </span>\r\n }\r\n</form>\r\n","import {Component, OnDestroy, TemplateRef} from '@angular/core';\r\nimport {GridApi, IAfterGuiAttachedParams, ICellRendererParams} from \"ag-grid-community\";\r\nimport {BsModalRef, BsModalService, ModalOptions} from \"ngx-bootstrap/modal\";\r\nimport {FormService} from \"../../../../services/form.service\";\r\nimport {faPencilAlt} from '@fortawesome/free-solid-svg-icons';\r\nimport {ICellRendererAngularComp} from \"ag-grid-angular\";\r\nimport {AktuelleDatenComponent} from \"../aktuelle-daten/aktuelle-daten.component\";\r\nimport {KorrekturDatenComponent} from \"../korrektur-daten/korrektur-daten.component\";\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\nimport {Dienst} from \"../../../../models\";\r\n\r\n\r\n@Component({\r\n selector: 'lib-korrektur-button-cell',\r\n standalone: true,\r\n imports: [\r\n AktuelleDatenComponent,\r\n KorrekturDatenComponent,\r\n FaIconComponent\r\n ],\r\n templateUrl: './korrektur-button-cell.component.html',\r\n styleUrl: './korrektur-button-cell.component.css'\r\n})\r\nexport class KorrekturButtonCellComponent implements ICellRendererAngularComp {\r\n public faPencilAlt = faPencilAlt;\r\n public params: ICellRendererParams;\r\n public gridApi: GridApi;\r\n modalRef: BsModalRef;\r\n public dienste: Dienst[];\r\n\r\n\r\n constructor(private modalService: BsModalService, private formService: FormService) {\r\n console.log('this.formService.dienste$: ', this.formService.dienste$)\r\n this.formService.dienste$.subscribe((dienste: Dienst[]) => {\r\n console.log('DIENSTE: ', dienste)\r\n if (dienste) {\r\n this.dienste = dienste\r\n }\r\n });\r\n }\r\n\r\n agInit(params: ICellRendererParams): void {\r\n this.params = params;\r\n this.gridApi = params.api;\r\n }\r\n\r\n openModal(template: TemplateRef<any>): void {\r\n const config: ModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n animated: true,\r\n ignoreBackdropClick: true,\r\n };\r\n this.modalRef = this.modalService.show(template, config);\r\n }\r\n\r\n closeModal(event: any) {\r\n this.modalRef.hide();\r\n }\r\n\r\n refresh(): boolean {\r\n return true;\r\n }\r\n\r\n afterGuiAttached?(params?: IAfterGuiAttachedParams): void {\r\n }\r\n\r\n public close() {\r\n this.modalRef.hide();\r\n }\r\n}\r\n","<fa-icon (click)=\"openModal(template)\" style=\"cursor: pointer; position: center\" [icon]=\"faPencilAlt\"></fa-icon>\r\n\r\n<ng-template #template>\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\">Sendungskorrektur</h4>\r\n\r\n </div>\r\n <div class=\"modal-body text-left\">\r\n <div class=\"\">\r\n <lib-aktuelle-daten [shipmentInfoDetails]=\"params.data\" [allowedDienste]=\"dienste\"></lib-aktuelle-daten>\r\n </div>\r\n <hr>\r\n <div class=\"\">\r\n <lib-korrektur-daten\r\n (submitCloseModalEvent)=\"closeModal($event)\"\r\n [shipmentInfoDetails]=\"params.data\"\r\n [dienste]=\"dienste\">\r\n </lib-korrektur-daten>\r\n </div>\r\n </div>\r\n</ng-template>\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport {AgGridAngular} from \"ag-grid-angular\";\r\nimport {CollapseModule} from \"ngx-bootstrap/collapse\";\r\nimport {TabsModule} from \"ngx-bootstrap/tabs\";\r\nimport {ColliEvent, Dienst, DispoDetails, Gefahrgut, Sendungsereignisse, ShipmentInfo} from \"../../models\";\r\nimport {ColDef, GridApi, GridOptions, GridReadyEvent} from \"ag-grid-community\";\r\nimport {Observable} from \"rxjs\";\r\nimport {ColliUbersicht} from \"../../models/colliubersichtModel\";\r\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\r\nimport {faCaretDown, faCaretUp} from '@fortawesome/free-solid-svg-icons';\r\nimport {AG_GRID_LOCALE_DE} from \"../../services/locale.de\";\r\nimport {FormService} from \"../../services/form.service\";\r\nimport {InfoCellComponent} from \"./info-cell/info-cell.component\";\r\nimport {RadioaktivCellComponent} from \"./radioaktiv-cell/radioaktiv-cell.component\";\r\nimport {ColliEreignisseComponent} from \"../colli-ereignisse/colli-ereignisse.component\";\r\nimport {SendungEreignisseComponent} from \"../sendung-ereignisse/sendung-ereignisse.component\";\r\nimport {GefahrgutComponent} from \"../gefahrgut/gefahrgut.component\";\r\nimport {SendungsketteComponent} from \"../sendungskette/sendungskette.component\";\r\nimport {DispoDetailComponent} from \"../dispo-detail/dispo-detail.component\";\r\nimport {ColliUebersichtComponent} from \"../colli-uebersicht/colli-uebersicht.component\";\r\nimport {KorrekturButtonCellComponent} from \"./sendung-korrektur/korrektur-button-cell/korrektur-button-cell.component\";\r\n\r\n@Component({\r\n selector: 'lib-sendung-information',\r\n standalone: true,\r\n imports: [\r\n AgGridAngular,\r\n CollapseModule,\r\n TabsModule,\r\n FaIconComponent,\r\n ColliEreignisseComponent,\r\n SendungEreignisseComponent,\r\n GefahrgutComponent,\r\n SendungsketteComponent,\r\n DispoDetailComponent,\r\n ColliUebersichtComponent\r\n ],\r\n templateUrl: './sendung-information.component.html',\r\n styleUrl: './sendung-information.component.css'\r\n})\r\nexport class SendungInformationComponent implements OnInit {\r\n\r\n public gridApi: GridApi;\r\n public columnDef: ColDef[];\r\n public defaultColDef: ColDef;\r\n public isCollapsed: boolean = true;\r\n public locale = AG_GRID_LOCALE_DE;\r\n public overlayLoadingTemplate;\r\n public carretUp = faCaretUp;\r\n public carretDown = faCaretDown;\r\n public show: boolean;\r\n\r\n @Output() sendCorrectedValues = new EventEmitter<any>();\r\n @Input() colliEvent$: Observable<ColliEvent[]>;\r\n @Input() sendungsereignisse$: Observable<Sendungsereignisse[]>;\r\n @Input() dangerousGoods$: Observable<Gefahrgut[]>;\r\n @Input() sendungskette$: Observable<ShipmentInfo[]>;\r\n @Input() dispoDetails$: Observable<DispoDetails[]>;\r\n @Input() colliUbersicht$: Observable<ColliUbersicht[]>;\r\n\r\n //@Input() shipmentInfoDetails: Observable<any[]>;\r\n @Input() dienste: Observable<any>;\r\n\r\n @Input() set shipmentInfoDetails(data: Observable<any[]>) {\r\n let loadingInterval = setInterval(() => {\r\n if(this.gridApi) {\r\n if(data) {\r\n data.subscribe((shipmentInfo: any) => {\r\n // this.gridApi.setRowData(shipmentInfo);\r\n this.gridApi.setGridOption(\"rowData\", shipmentInfo);\r\n this.formService.shipmentInfo.next(shipmentInfo);\r\n });\r\n }\r\n clearInterval(loadingInterval);\r\n }\r\n }, 200);\r\n }\r\n\r\n\r\n\r\n constructor(private formService: FormService) {\r\n this.overlayLoadingTemplate = '<span class=\"ag-overlay-loading-center\">Sendungsdaten werden geladen...</span>';\r\n this.defaultColDef = {\r\n resizable: true,\r\n sortable: true,\r\n filter: true,\r\n flex: 1,\r\n lockPosition: true,\r\n cellClass: 'locked-col'\r\n };\r\n\r\n this.columnDef = [\r\n {\r\n field: 'bcvsnr',\r\n headerName: 'BCV',\r\n },\r\n {\r\n field: 'absender',\r\n headerName: 'Name',\r\n },\r\n {\r\n headerName: 'Hinweise',\r\n cellRenderer: InfoCellComponent,\r\n },\r\n {\r\n field: 'sendungsnr',\r\n headerName: 'Sendungsnr',\r\n },\r\n {\r\n field: 'langreferenz',\r\n headerName: 'RefNr',\r\n },\r\n {\r\n field: 'erfassungstag',\r\n headerName: 'Ü-Datum',\r\n },\r\n {\r\n field: 'gesamtgewicht',\r\n headerName: 'Kg',\r\n maxWidth: 100\r\n },\r\n {\r\n field: 'colli',\r\n headerName: 'Col/Pal',\r\n minWidth: 100,\r\n valueGetter: this.getColAndPal\r\n },\r\n {\r\n headerName: 'Dienste',\r\n valueGetter: this.showDienste,\r\n },\r\n {\r\n headerName: 'Radioaktiv',\r\n cellStyle: {textAlign: 'center'},\r\n cellRenderer: RadioaktivCellComponent\r\n },\r\n {\r\n headerName: '',\r\n cellRenderer: KorrekturButtonCellComponent,\r\n maxWidth: 60\r\n },\r\n ];\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n console.log('TEST NG-OnInit')\r\n this.formService.submittedForm.subscribe((correctedValueForm => {\r\n if (correctedValueForm !== null) {\r\n this.sendCorrectedValues.emit(correctedValueForm);\r\n this.gridApi.showLoadingOverlay();\r\n this.formService.submittedForm.next(null);\r\n }\r\n }));\r\n\r\n }\r\n\r\n gridReady(params: GridReadyEvent): void {\r\n this.gridApi = params.api;\r\n\r\n // let loadingInterval = setInterval(() => {\r\n // if (this.shipmentInfoDetails) {\r\n // this.shipmentInfoDetails.subscribe((shipmentInfo: any) => {\r\n // this.gridApi.setGridOption('rowData', shipmentInfo);\r\n // this.formService.shipmentInfo.next(shipmentInfo);\r\n // });\r\n // }\r\n // clearInterval(loadingInterval);\r\n // }, 200);\r\n\r\n let loadingInterval2 = setInterval(() => {\r\n if (this.dienste) {\r\n this.dienste.subscribe((dienste) => {\r\n this.formService.setDienste(dienste);\r\n });\r\n }\r\n clearInterval(loadingInterval2);\r\n }, 200);\r\n }\r\n\r\n getColAndPal(params: any) {\r\n const colli = params.data.colli;\r\n const paletten = params.data.paletten;\r\n return colli + '/' + paletten;\r\n }\r\n\r\n showDienste(param: any) {\r\n const dienste = [];\r\n console.log(param.data)\r\n param.data?.dienste?.map((dienst: Dienst) => {\r\n if (dienst.anzeigeKuerzel !== null) {\r\n dienste.push(dienst.anzeigeKuerzel);\r\n }\r\n });\r\n return dienste.join(', ');\r\n }\r\n\r\n toggleCollapse(): void {\r\n this.formService.setDienste(this.dienste);\r\n this.isCollapsed = !this.isCollapsed;\r\n this.show = !this.show;\r\n }\r\n\r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-body\">\r\n <div style=\"cursor: pointer\" (click)=\"toggleCollapse()\">\r\n <h5 class=\"card-title\">Sendungsinformationen\r\n <fa-icon [hidden]=\"show\" [icon]=\"carretUp\"></fa-icon>\r\n <fa-icon [hidden]=\"!show\" [icon]=\"carretDown\"></fa-icon>\r\n </h5>\r\n </div>\r\n <div id=\"collapseBasic\" [collapse]=\"!isCollapsed\" [isAnimated]=\"true\">\r\n <ag-grid-angular\r\n style=\"width: 100%; height: 100px;\"\r\n class=\"ag-theme-alpine\"\r\n [columnDefs]=\"columnDef\"\r\n [localeText]=\"locale\"\r\n [defaultColDef]=\"defaultColDef\"\r\n [overlayLoadingTemplate]=\"overlayLoadingTemplate\"\r\n (gridReady)=\"gridReady($event)\"\r\n\r\n >\r\n </ag-grid-angular>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"mt-3\">\r\n <tabset>\r\n <tab heading=\"Colliereignisse\">\r\n <lib-colli-ereignisse [colliEvent]=\"colliEvent$\"></lib-colli-ereignisse>\r\n </tab>\r\n <tab heading=\"Sendungsereignisse\">\r\n <lib-sendung-ereignisse [sendungsereignisse]=\"sendungsereignisse$\"></lib-sendung-ereignisse>\r\n </tab>\r\n <tab heading=\"Gefahrgut\">\r\n <lib-gefahrgut [dangerous_goods]=\"dangerousGoods$\"></lib-gefahrgut>\r\n </tab>\r\n <tab heading=\"Sendungskette\">\r\n <lib-sendungskette [sendungskette]=\"sendungskette$\"></lib-sendungskette>\r\n </tab>\r\n <tab heading=\"Dispositiondetails\">\r\n <lib-dispo-detail [dispoDetails]=\"dispoDetails$\"></lib-dispo-detail>\r\n </tab>\r\n <tab heading=\"Colliübersicht\">\r\n <lib-colli-uebersicht [colliUbersicht]=\"colliUbersicht$\"></lib-colli-uebersicht>\r\n </tab>\r\n </tabset>\r\n</div>\r\n","/*\r\n * Public API Surface of sendung-lib\r\n */\r\n\r\nexport * from './lib/sendung-lib.service';\r\nexport * from './lib/sendung-lib.component';\r\n\r\nexport * from './lib/components/sendung-information/sendung-information.component';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.FormService","i1","i2.FormService","i2"],"mappings":"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"}