2024-01-11 16:59:27 +01:00
|
|
|
<div>
|
|
|
|
<div class="col-md-13 offset-md-0">
|
|
|
|
|
|
|
|
<div class="row mb-6 mt-3">
|
|
|
|
<div class="col">
|
|
|
|
<h4>{{'NOTIFICATION-SERVICE.NOTIFICATION-LISTING.TITLE' | translate}}</h4>
|
|
|
|
<app-navigation-breadcrumb />
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<app-hybrid-listing [rows]="gridRows" [columns]="gridColumns" [visibleColumns]="visibleColumns"
|
|
|
|
[count]="totalElements" [offset]="currentPageNumber" [limit]="lookup.page.size"
|
2024-01-12 13:01:59 +01:00
|
|
|
[defaultSort]="lookup.order?.items" [externalSorting]="true"
|
2024-01-11 16:59:27 +01:00
|
|
|
(pageLoad)="alterPage($event)" (columnSort)="onColumnSort($event)"
|
|
|
|
(columnsChanged)="onColumnsChanged($event)" [listItemTemplate]="listItemTemplate">
|
|
|
|
|
|
|
|
<app-notification-listing-filters hybrid-listing-filters [(filter)]="lookup"
|
|
|
|
(filterChange)="filterChanged($event)" />
|
|
|
|
|
|
|
|
<app-user-settings-picker [key]="userSettingsKey" [userPreference]="lookup"
|
|
|
|
(onSettingSelected)="changeSetting($event)" [autoSelectUserSettings]="autoSelectUserSettings"
|
|
|
|
user-preference-settings />
|
|
|
|
</app-hybrid-listing>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<ng-template #listItemTemplate let-item="item" let-isColumnSelected="isColumnSelected">
|
|
|
|
|
|
|
|
|
|
|
|
<div class="d-flex align-items-center p-3 gap-1-rem">
|
|
|
|
<div class="row">
|
2024-01-12 13:01:59 +01:00
|
|
|
<ng-container *ngIf="isColumnSelected('type')">
|
2024-01-11 16:59:27 +01:00
|
|
|
<span class="col-12">
|
|
|
|
{{'NOTIFICATION-SERVICE.NOTIFICATION-LISTING.FIELDS.NOTIFICATION-TYPE' | translate}}:
|
|
|
|
<small>
|
2024-01-12 13:01:59 +01:00
|
|
|
{{enumUtils.toNotificationTypeString(item.type) | nullifyValue}}
|
|
|
|
</small>
|
|
|
|
</span>
|
|
|
|
<br>
|
|
|
|
</ng-container>
|
|
|
|
<ng-container *ngIf="isColumnSelected('contactTypeHint')">
|
|
|
|
<span class="col-12">
|
|
|
|
{{'NOTIFICATION-SERVICE.NOTIFICATION-LISTING.FIELDS.CONTACT-TYPE' | translate}}:
|
|
|
|
<small>
|
|
|
|
{{enumUtils.toNotificationContactTypeString(item.contactTypeHint) | nullifyValue}}
|
2024-01-11 16:59:27 +01:00
|
|
|
</small>
|
|
|
|
</span>
|
|
|
|
<br>
|
|
|
|
</ng-container>
|
2024-01-12 13:01:59 +01:00
|
|
|
<ng-container *ngIf="isColumnSelected('notifyState')">
|
2024-01-11 16:59:27 +01:00
|
|
|
<span class="col-12">
|
2024-01-12 13:01:59 +01:00
|
|
|
{{'NOTIFICATION-SERVICE.NOTIFICATION-LISTING.FIELDS.NOTIFY-STATE' | translate}}:
|
2024-01-11 16:59:27 +01:00
|
|
|
<small>
|
2024-01-12 13:01:59 +01:00
|
|
|
{{enumUtils.toNotificationNotifyStateString(item.notifyState) | nullifyValue}}
|
2024-01-11 16:59:27 +01:00
|
|
|
</small>
|
|
|
|
</span>
|
|
|
|
<br>
|
|
|
|
</ng-container>
|
2024-01-12 13:01:59 +01:00
|
|
|
<ng-container *ngIf="isColumnSelected('notifiedAt')">
|
2024-01-11 16:59:27 +01:00
|
|
|
<span class="col-12">
|
2024-01-12 13:01:59 +01:00
|
|
|
{{'NOTIFICATION-SERVICE.NOTIFICATION-LISTING.FIELDS.NOTIFIED-AT' | translate}}:
|
2024-01-11 16:59:27 +01:00
|
|
|
<small>
|
2024-01-12 13:01:59 +01:00
|
|
|
{{item?.notifiedAt | dateTimeFormatter : 'short' | nullifyValue}}
|
2024-01-11 16:59:27 +01:00
|
|
|
</small>
|
|
|
|
</span>
|
|
|
|
<br>
|
|
|
|
</ng-container>
|
2024-01-12 13:01:59 +01:00
|
|
|
<ng-container *ngIf="isColumnSelected('createdAt')">
|
2024-01-11 16:59:27 +01:00
|
|
|
<span class="col-12">
|
2024-01-12 13:01:59 +01:00
|
|
|
{{'NOTIFICATION-SERVICE.NOTIFICATION-LISTING.FIELDS.CREATED-AT' | translate}}:
|
2024-01-11 16:59:27 +01:00
|
|
|
<small>
|
2024-01-12 13:01:59 +01:00
|
|
|
{{item?.createdAt | dateTimeFormatter : 'short' | nullifyValue}}
|
2024-01-11 16:59:27 +01:00
|
|
|
</small>
|
|
|
|
</span>
|
|
|
|
</ng-container>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</ng-template>
|
|
|
|
|
|
|
|
<ng-template #actions let-row="row" let-item>
|
|
|
|
<div class="row" (click)="$event.stopPropagation()">
|
|
|
|
<div class="col-auto">
|
|
|
|
<button mat-icon-button [matMenuTriggerFor]="actionsMenu">
|
|
|
|
<mat-icon>more_horiz</mat-icon>
|
|
|
|
</button>
|
|
|
|
<mat-menu #actionsMenu="matMenu">
|
|
|
|
<button mat-menu-item (click)="deleteType(row.id)">
|
|
|
|
<mat-icon>delete</mat-icon>
|
|
|
|
{{'NOTIFICATION-SERVICE.NOTIFICATION-LISTING.ACTIONS.DELETE' | translate}}
|
|
|
|
</button>
|
|
|
|
</mat-menu>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</ng-template>
|