ngx-st-sap-installed-instruments 1.0.0
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.
- package/README.md +24 -0
- package/esm2020/lib/base-interfaces.mjs +2 -0
- package/esm2020/lib/components/sap-installed-instrument-details/activities-list-view/activities-list-view.component.mjs +54 -0
- package/esm2020/lib/components/sap-installed-instrument-details/activity-details-view/activity-details-view.component.mjs +41 -0
- package/esm2020/lib/components/sap-installed-instrument-details/call-details-view/call-details-view.component.mjs +51 -0
- package/esm2020/lib/components/sap-installed-instrument-details/calls-list-view/calls-list-view.component.mjs +56 -0
- package/esm2020/lib/components/sap-installed-instrument-details/data-details-view/data-details-view.component.mjs +20 -0
- package/esm2020/lib/components/sap-installed-instrument-details/sap-installed-instrument-details.component.mjs +56 -0
- package/esm2020/lib/components/sap-installed-instrument-details/service-contract-details-view/service-contract-details-view.component.mjs +19 -0
- package/esm2020/lib/components/sap-installed-instrument-details/service-contracts-list-view/service-contracts-list-view.component.mjs +53 -0
- package/esm2020/lib/components/sap-installed-instrument-details/service-contracts-modal-details-view/service-contracts-modal-details-view.component.mjs +28 -0
- package/esm2020/lib/components/sap-installed-instrument-list/sap-installed-instrument-list-search/sap-installed-instrument-list-search.component.mjs +134 -0
- package/esm2020/lib/components/sap-installed-instrument-list/sap-installed-instrument-list-table/sap-installed-instrument-list-table.component.mjs +105 -0
- package/esm2020/lib/components/sap-installed-instrument-list/sap-installed-instrument-list.component.mjs +79 -0
- package/esm2020/lib/models/installed-instrument-form.model.mjs +2 -0
- package/esm2020/lib/models/installed-instrument-sort-by-column.enum.mjs +15 -0
- package/esm2020/lib/models/installed-instrument-sort-order.enum.mjs +6 -0
- package/esm2020/lib/models/installed-instrument-table-columns.model.mjs +15 -0
- package/esm2020/lib/models/sap-activity.model.mjs +2 -0
- package/esm2020/lib/models/sap-attachment.model.mjs +2 -0
- package/esm2020/lib/models/sap-call.model.mjs +2 -0
- package/esm2020/lib/models/sap-contract.model.mjs +2 -0
- package/esm2020/lib/models/sap-country.model.mjs +2 -0
- package/esm2020/lib/models/sap-installed-instrument-list.model.mjs +2 -0
- package/esm2020/lib/models/sap-installed-instrument-search.model.mjs +2 -0
- package/esm2020/lib/models/sap-installed-instrument.model.mjs +2 -0
- package/esm2020/lib/models/sap-state.model.mjs +2 -0
- package/esm2020/lib/models/sap-territory.model.mjs +2 -0
- package/esm2020/lib/models/view-sap-installed-instrument-list.model.mjs +2 -0
- package/esm2020/lib/sap-installed-instruments-routing.module.mjs +7 -0
- package/esm2020/lib/services/sap-installed-instruments.service.mjs +108 -0
- package/esm2020/lib/st-sap-installed-instruments.module.mjs +180 -0
- package/esm2020/ngx-st-sap-installed-instruments.mjs +5 -0
- package/esm2020/public-api.mjs +34 -0
- package/fesm2015/ngx-st-sap-installed-instruments.mjs +920 -0
- package/fesm2015/ngx-st-sap-installed-instruments.mjs.map +1 -0
- package/fesm2020/ngx-st-sap-installed-instruments.mjs +921 -0
- package/fesm2020/ngx-st-sap-installed-instruments.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/base-interfaces.d.ts +9 -0
- package/lib/components/sap-installed-instrument-details/activities-list-view/activities-list-view.component.d.ts +19 -0
- package/lib/components/sap-installed-instrument-details/activity-details-view/activity-details-view.component.d.ts +14 -0
- package/lib/components/sap-installed-instrument-details/call-details-view/call-details-view.component.d.ts +25 -0
- package/lib/components/sap-installed-instrument-details/calls-list-view/calls-list-view.component.d.ts +21 -0
- package/lib/components/sap-installed-instrument-details/data-details-view/data-details-view.component.d.ts +10 -0
- package/lib/components/sap-installed-instrument-details/sap-installed-instrument-details.component.d.ts +30 -0
- package/lib/components/sap-installed-instrument-details/service-contract-details-view/service-contract-details-view.component.d.ts +10 -0
- package/lib/components/sap-installed-instrument-details/service-contracts-list-view/service-contracts-list-view.component.d.ts +19 -0
- package/lib/components/sap-installed-instrument-details/service-contracts-modal-details-view/service-contracts-modal-details-view.component.d.ts +17 -0
- package/lib/components/sap-installed-instrument-list/sap-installed-instrument-list-search/sap-installed-instrument-list-search.component.d.ts +59 -0
- package/lib/components/sap-installed-instrument-list/sap-installed-instrument-list-table/sap-installed-instrument-list-table.component.d.ts +29 -0
- package/lib/components/sap-installed-instrument-list/sap-installed-instrument-list.component.d.ts +25 -0
- package/lib/models/installed-instrument-form.model.d.ts +19 -0
- package/lib/models/installed-instrument-sort-by-column.enum.d.ts +13 -0
- package/lib/models/installed-instrument-sort-order.enum.d.ts +4 -0
- package/lib/models/installed-instrument-table-columns.model.d.ts +14 -0
- package/lib/models/sap-activity.model.d.ts +23 -0
- package/lib/models/sap-attachment.model.d.ts +7 -0
- package/lib/models/sap-call.model.d.ts +35 -0
- package/lib/models/sap-contract.model.d.ts +20 -0
- package/lib/models/sap-country.model.d.ts +4 -0
- package/lib/models/sap-installed-instrument-list.model.d.ts +23 -0
- package/lib/models/sap-installed-instrument-search.model.d.ts +23 -0
- package/lib/models/sap-installed-instrument.model.d.ts +54 -0
- package/lib/models/sap-state.model.d.ts +5 -0
- package/lib/models/sap-territory.model.d.ts +4 -0
- package/lib/models/view-sap-installed-instrument-list.model.d.ts +4 -0
- package/lib/sap-installed-instruments-routing.module.d.ts +2 -0
- package/lib/services/sap-installed-instruments.service.d.ts +30 -0
- package/lib/st-sap-installed-instruments.module.d.ts +47 -0
- package/package.json +35 -0
- package/public-api.d.ts +28 -0
|
@@ -0,0 +1,921 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Injectable, Inject, EventEmitter, Component, ChangeDetectionStrategy, ViewChild, Input, Output, HostBinding, NgModule } from '@angular/core';
|
|
3
|
+
import * as i1 from '@angular/common/http';
|
|
4
|
+
import { HttpParams, HTTP_INTERCEPTORS } from '@angular/common/http';
|
|
5
|
+
import { map, tap } from 'rxjs/operators';
|
|
6
|
+
import moment from 'moment';
|
|
7
|
+
import { StSubscribeDestroyComponent } from 'ngx-st-base-functions';
|
|
8
|
+
import * as i3$1 from '@angular/material/paginator';
|
|
9
|
+
import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator';
|
|
10
|
+
import * as i2$1 from '@angular/material/table';
|
|
11
|
+
import { MatTableDataSource, MatTableModule } from '@angular/material/table';
|
|
12
|
+
import * as i5 from '@angular/material/sort';
|
|
13
|
+
import { MatSort, MatSortModule } from '@angular/material/sort';
|
|
14
|
+
import * as i2 from '@angular/router';
|
|
15
|
+
import { RouterModule } from '@angular/router';
|
|
16
|
+
import * as i3 from '@angular/common';
|
|
17
|
+
import { CommonModule } from '@angular/common';
|
|
18
|
+
import * as i5$1 from '@ngx-translate/core';
|
|
19
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
20
|
+
import * as i7 from 'ngx-st-date-format';
|
|
21
|
+
import { StDateFormatModule } from 'ngx-st-date-format';
|
|
22
|
+
import { of } from 'rxjs';
|
|
23
|
+
import * as i3$2 from '@angular/forms';
|
|
24
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
25
|
+
import * as i2$2 from '@angular/material/button';
|
|
26
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
27
|
+
import * as i6 from '@angular/material/form-field';
|
|
28
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
29
|
+
import * as i7$1 from '@angular/material/input';
|
|
30
|
+
import { MatInputModule } from '@angular/material/input';
|
|
31
|
+
import * as i8 from '@angular/material/select';
|
|
32
|
+
import { MatSelectModule } from '@angular/material/select';
|
|
33
|
+
import * as i9 from '@angular/material/core';
|
|
34
|
+
import { MatRippleModule, MatNativeDateModule } from '@angular/material/core';
|
|
35
|
+
import * as i10 from '@angular/material/tooltip';
|
|
36
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
37
|
+
import * as i11 from '@angular/material/icon';
|
|
38
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
39
|
+
import * as i12 from '@angular/material/datepicker';
|
|
40
|
+
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
41
|
+
import * as i13 from 'ngx-st-multiselect-autocomplete';
|
|
42
|
+
import { NgxStMultiselectAutocompleteModule } from 'ngx-st-multiselect-autocomplete';
|
|
43
|
+
import * as i14 from 'ngx-st-search-selects';
|
|
44
|
+
import { StSearchSelectsModule } from 'ngx-st-search-selects';
|
|
45
|
+
import { trigger, state, style, transition, animate } from '@angular/animations';
|
|
46
|
+
import * as i1$1 from '@angular/material/dialog';
|
|
47
|
+
import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
|
|
48
|
+
import * as i4 from '@angular/material/tabs';
|
|
49
|
+
import { MatTabsModule } from '@angular/material/tabs';
|
|
50
|
+
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
51
|
+
import { MatMenuModule } from '@angular/material/menu';
|
|
52
|
+
import { MatChipsModule } from '@angular/material/chips';
|
|
53
|
+
import { MatListModule } from '@angular/material/list';
|
|
54
|
+
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
|
55
|
+
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
56
|
+
|
|
57
|
+
var InstalledInstrumentSortByColumnEnum;
|
|
58
|
+
(function (InstalledInstrumentSortByColumnEnum) {
|
|
59
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["ItemCode"] = 0] = "ItemCode";
|
|
60
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["ItemName"] = 1] = "ItemName";
|
|
61
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["SerialNumber"] = 2] = "SerialNumber";
|
|
62
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["BpId"] = 3] = "BpId";
|
|
63
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["BpName"] = 4] = "BpName";
|
|
64
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["EndCustomer"] = 5] = "EndCustomer";
|
|
65
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["City"] = 6] = "City";
|
|
66
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["Territory"] = 7] = "Territory";
|
|
67
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["Country"] = 8] = "Country";
|
|
68
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["Status"] = 9] = "Status";
|
|
69
|
+
InstalledInstrumentSortByColumnEnum[InstalledInstrumentSortByColumnEnum["InstallationDate"] = 10] = "InstallationDate";
|
|
70
|
+
})(InstalledInstrumentSortByColumnEnum || (InstalledInstrumentSortByColumnEnum = {}));
|
|
71
|
+
|
|
72
|
+
var InstalledInstrumentSortOrderEnum;
|
|
73
|
+
(function (InstalledInstrumentSortOrderEnum) {
|
|
74
|
+
InstalledInstrumentSortOrderEnum[InstalledInstrumentSortOrderEnum["Asc"] = 0] = "Asc";
|
|
75
|
+
InstalledInstrumentSortOrderEnum[InstalledInstrumentSortOrderEnum["Desc"] = 1] = "Desc";
|
|
76
|
+
})(InstalledInstrumentSortOrderEnum || (InstalledInstrumentSortOrderEnum = {}));
|
|
77
|
+
|
|
78
|
+
var InstalledInstrumentTableColumnsMapperEnum;
|
|
79
|
+
(function (InstalledInstrumentTableColumnsMapperEnum) {
|
|
80
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["instrumentNo"] = 0] = "instrumentNo";
|
|
81
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["instrumentDescription"] = 1] = "instrumentDescription";
|
|
82
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["serialNumber"] = 2] = "serialNumber";
|
|
83
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["customerNo"] = 3] = "customerNo";
|
|
84
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["businessPartnerName"] = 4] = "businessPartnerName";
|
|
85
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["endUserName"] = 5] = "endUserName";
|
|
86
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["city"] = 6] = "city";
|
|
87
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["territoryId"] = 7] = "territoryId";
|
|
88
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["country"] = 8] = "country";
|
|
89
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["status"] = 9] = "status";
|
|
90
|
+
InstalledInstrumentTableColumnsMapperEnum[InstalledInstrumentTableColumnsMapperEnum["installationDate"] = 10] = "installationDate";
|
|
91
|
+
})(InstalledInstrumentTableColumnsMapperEnum || (InstalledInstrumentTableColumnsMapperEnum = {}));
|
|
92
|
+
|
|
93
|
+
class SapInstalledInstrumentsService {
|
|
94
|
+
constructor(config, http) {
|
|
95
|
+
this.config = config;
|
|
96
|
+
this.http = http;
|
|
97
|
+
}
|
|
98
|
+
getInstalledInstrumentList(searchForm, sort) {
|
|
99
|
+
const search = {
|
|
100
|
+
applicationList: searchForm?.application || [],
|
|
101
|
+
instrumentNo: searchForm?.instrumentNo || '',
|
|
102
|
+
instrumentDescription: searchForm?.instrumentDesc || '',
|
|
103
|
+
serialNumber: searchForm?.serialNumber || '',
|
|
104
|
+
customerNo: searchForm?.customerNo || '',
|
|
105
|
+
businessPartnerName: searchForm?.bpName || '',
|
|
106
|
+
statusId: searchForm?.status || '',
|
|
107
|
+
technicianLastName: searchForm?.technicianLastName || '',
|
|
108
|
+
territoryId: searchForm?.territory || null,
|
|
109
|
+
endUserName: searchForm?.endUserName || '',
|
|
110
|
+
endUserCode: searchForm?.endUserCode || '',
|
|
111
|
+
city: searchForm?.city || '',
|
|
112
|
+
stateId: searchForm?.state || '',
|
|
113
|
+
countryId: searchForm?.country || '',
|
|
114
|
+
county: searchForm?.county || '',
|
|
115
|
+
installationDateFrom: searchForm?.installationDateFrom
|
|
116
|
+
? moment(searchForm.installationDateFrom).format('YYYY-MM-DD')
|
|
117
|
+
: null,
|
|
118
|
+
installationDateTo: searchForm?.installationDateTo
|
|
119
|
+
? moment(searchForm.installationDateTo).format('YYYY-MM-DD')
|
|
120
|
+
: null,
|
|
121
|
+
};
|
|
122
|
+
if (sort && sort.direction !== '') {
|
|
123
|
+
search.sortOrder =
|
|
124
|
+
sort.direction === 'asc'
|
|
125
|
+
? InstalledInstrumentSortOrderEnum.Asc
|
|
126
|
+
: InstalledInstrumentSortOrderEnum.Desc;
|
|
127
|
+
search.sortByColumn = InstalledInstrumentTableColumnsMapperEnum[sort.active];
|
|
128
|
+
}
|
|
129
|
+
return this.http
|
|
130
|
+
.post(this.config.api_base_uri + '/admin/sap-master-data/installedInstrument/list', search)
|
|
131
|
+
.pipe(map((res) => {
|
|
132
|
+
return res.map(installInstrument => ({
|
|
133
|
+
...installInstrument,
|
|
134
|
+
technicianName: installInstrument.technicianFirstName
|
|
135
|
+
? installInstrument.technicianFirstName +
|
|
136
|
+
' ' +
|
|
137
|
+
installInstrument.technicianLastName
|
|
138
|
+
: '',
|
|
139
|
+
}));
|
|
140
|
+
}));
|
|
141
|
+
}
|
|
142
|
+
getInstalledInstrument(eqCard) {
|
|
143
|
+
const params = new HttpParams().set('eqCard', eqCard);
|
|
144
|
+
return this.http.get(this.config.api_base_uri + '/admin/sap-master-data/installedInstrument', { params });
|
|
145
|
+
}
|
|
146
|
+
getTerritory(refresh = false) {
|
|
147
|
+
const params = new HttpParams().set('refresh', refresh);
|
|
148
|
+
return this.http.get(this.config.api_base_uri +
|
|
149
|
+
'/admin/sap-master-data/installedInstrument/territory', { params });
|
|
150
|
+
}
|
|
151
|
+
getState(country, refresh = false) {
|
|
152
|
+
const params = new HttpParams()
|
|
153
|
+
.set('refresh', refresh)
|
|
154
|
+
.set('country', country);
|
|
155
|
+
return this.http.get(this.config.api_base_uri +
|
|
156
|
+
'/admin/sap-master-data/installedInstrument/state', { params });
|
|
157
|
+
}
|
|
158
|
+
getCountry(refresh = false) {
|
|
159
|
+
const params = new HttpParams().set('refresh', refresh);
|
|
160
|
+
return this.http.get(this.config.api_base_uri +
|
|
161
|
+
'/admin/sap-master-data/installedInstrument/country', { params });
|
|
162
|
+
}
|
|
163
|
+
getContracts(eqCard) {
|
|
164
|
+
const params = new HttpParams().set('eqCard', eqCard);
|
|
165
|
+
return this.http.get(this.config.api_base_uri +
|
|
166
|
+
'/admin/sap-master-data/installedInstrument/contract', { params });
|
|
167
|
+
}
|
|
168
|
+
getCalls(eqCard) {
|
|
169
|
+
const params = new HttpParams().set('eqCard', eqCard);
|
|
170
|
+
return this.http.get(this.config.api_base_uri +
|
|
171
|
+
'/admin/sap-master-data/installedInstrument/call', { params });
|
|
172
|
+
}
|
|
173
|
+
getActivities(callId) {
|
|
174
|
+
const params = new HttpParams().set('callId', callId);
|
|
175
|
+
return this.http.get(this.config.api_base_uri +
|
|
176
|
+
'/admin/sap-master-data/installedInstrument/activity', { params });
|
|
177
|
+
}
|
|
178
|
+
getApplicationSearch(search) {
|
|
179
|
+
return this.http.get(this.config.api_base_uri +
|
|
180
|
+
'/admin/sap-master-data/InstalledInstrument/application?application=' +
|
|
181
|
+
search);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
SapInstalledInstrumentsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentsService, deps: [{ token: 'config' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
185
|
+
SapInstalledInstrumentsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentsService });
|
|
186
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentsService, decorators: [{
|
|
187
|
+
type: Injectable
|
|
188
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
189
|
+
type: Inject,
|
|
190
|
+
args: ['config']
|
|
191
|
+
}] }, { type: i1.HttpClient }]; } });
|
|
192
|
+
|
|
193
|
+
class SapInstalledInstrumentListTableComponent extends StSubscribeDestroyComponent {
|
|
194
|
+
constructor(router, activatedRoute) {
|
|
195
|
+
super();
|
|
196
|
+
this.router = router;
|
|
197
|
+
this.activatedRoute = activatedRoute;
|
|
198
|
+
this.sortChanged = new EventEmitter();
|
|
199
|
+
this.dataSource = new MatTableDataSource();
|
|
200
|
+
this.tableColumns = [
|
|
201
|
+
'instrumentNo',
|
|
202
|
+
'instrumentDescription',
|
|
203
|
+
'serialNumber',
|
|
204
|
+
'customerNo',
|
|
205
|
+
'businessPartnerName',
|
|
206
|
+
'endUserName',
|
|
207
|
+
'city',
|
|
208
|
+
'territoryId',
|
|
209
|
+
'country',
|
|
210
|
+
'installationDate',
|
|
211
|
+
'status',
|
|
212
|
+
];
|
|
213
|
+
}
|
|
214
|
+
set tableData(data) {
|
|
215
|
+
this.dataSource.data = data;
|
|
216
|
+
}
|
|
217
|
+
ngOnInit() {
|
|
218
|
+
this.setTableColumns();
|
|
219
|
+
// this.store
|
|
220
|
+
// .select(appQuery.getUser)
|
|
221
|
+
// .pipe(takeUntil(this.ngDestroyed$), filter(StBaseService.notNull))
|
|
222
|
+
// .subscribe(user => {
|
|
223
|
+
// if (!user.instrumentTerritoryFilter) {
|
|
224
|
+
// this.tableColumns = this.tableColumns.filter(
|
|
225
|
+
// column => column !== 'territoryId'
|
|
226
|
+
// );
|
|
227
|
+
// }
|
|
228
|
+
// });
|
|
229
|
+
}
|
|
230
|
+
ngAfterViewInit() {
|
|
231
|
+
this.dataSource.paginator = this.paginator;
|
|
232
|
+
this.dataSource.sort = this.sort;
|
|
233
|
+
this.sort.sortChange.subscribe(res => {
|
|
234
|
+
this.sortChanged.emit(res);
|
|
235
|
+
});
|
|
236
|
+
const queryParamsKeys = Object.keys(this.activatedRoute.snapshot.queryParams || {});
|
|
237
|
+
if (queryParamsKeys.length > 0 &&
|
|
238
|
+
this.activatedRoute.snapshot.queryParams['active'] &&
|
|
239
|
+
this.activatedRoute.snapshot.queryParams['direction']) {
|
|
240
|
+
this.sort.sort({
|
|
241
|
+
id: this.activatedRoute.snapshot.queryParams['active'],
|
|
242
|
+
start: this.activatedRoute.snapshot.queryParams['direction'],
|
|
243
|
+
disableClear: false,
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
rowClicked(row) {
|
|
248
|
+
this.router.navigate(['details', row.equipmentCardNo], {
|
|
249
|
+
relativeTo: this.activatedRoute,
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
setTableColumns() {
|
|
253
|
+
this.mapTableColumns = {
|
|
254
|
+
instrumentNo: 'sapAdminInstalledInstrument.instrumentNo',
|
|
255
|
+
instrumentDescription: 'sapAdminInstalledInstrument.instrumentDescription',
|
|
256
|
+
serialNumber: 'sapAdminInstalledInstrument.serialNumber',
|
|
257
|
+
customerNo: 'sapAdminInstalledInstrument.accountNo',
|
|
258
|
+
businessPartnerName: 'sapAdminInstalledInstrument.accountName',
|
|
259
|
+
endUserName: 'sapAdminInstalledInstrument.endCustomer',
|
|
260
|
+
city: 'global.city',
|
|
261
|
+
territoryId: 'global.territory',
|
|
262
|
+
country: 'global.country',
|
|
263
|
+
status: 'global.status',
|
|
264
|
+
installationDate: 'sapAdminInstalledInstrument.installationDate',
|
|
265
|
+
};
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
SapInstalledInstrumentListTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListTableComponent, deps: [{ token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
|
|
269
|
+
SapInstalledInstrumentListTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentListTableComponent, selector: "app-sap-installed-instrument-list-table", inputs: { tableData: "tableData" }, outputs: { sortChanged: "sortChanged" }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true, static: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true }], usesInheritance: true, ngImport: i0, template: "<table\r\n mat-table\r\n [dataSource]=\"dataSource\"\r\n style=\"width: 100%\"\r\n class=\"no-hover\"\r\n matSort\r\n>\r\n <ng-container [matColumnDef]=\"column\" *ngFor=\"let column of tableColumns\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header>\r\n {{ mapTableColumns[column] | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <ng-container *ngIf=\"column === 'installationDate'\">\r\n {{ element[column] | stDateFormatPipe }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column !== 'installationDate'\">\r\n {{ element[column] }}\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"tableColumns\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: tableColumns\"\r\n (click)=\"rowClicked(row)\"\r\n ></tr>\r\n</table>\r\n<mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n [showFirstLastButtons]=\"true\"\r\n></mat-paginator>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "directive", type: i5.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i5.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateFormatPipe, name: "stDateFormatPipe" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
270
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListTableComponent, decorators: [{
|
|
271
|
+
type: Component,
|
|
272
|
+
args: [{ selector: 'app-sap-installed-instrument-list-table', changeDetection: ChangeDetectionStrategy.OnPush, template: "<table\r\n mat-table\r\n [dataSource]=\"dataSource\"\r\n style=\"width: 100%\"\r\n class=\"no-hover\"\r\n matSort\r\n>\r\n <ng-container [matColumnDef]=\"column\" *ngFor=\"let column of tableColumns\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header>\r\n {{ mapTableColumns[column] | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <ng-container *ngIf=\"column === 'installationDate'\">\r\n {{ element[column] | stDateFormatPipe }}\r\n </ng-container>\r\n <ng-container *ngIf=\"column !== 'installationDate'\">\r\n {{ element[column] }}\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"tableColumns\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: tableColumns\"\r\n (click)=\"rowClicked(row)\"\r\n ></tr>\r\n</table>\r\n<mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n [showFirstLastButtons]=\"true\"\r\n></mat-paginator>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}\n"] }]
|
|
273
|
+
}], ctorParameters: function () { return [{ type: i2.Router }, { type: i2.ActivatedRoute }]; }, propDecorators: { paginator: [{
|
|
274
|
+
type: ViewChild,
|
|
275
|
+
args: [MatPaginator, { static: true }]
|
|
276
|
+
}], sort: [{
|
|
277
|
+
type: ViewChild,
|
|
278
|
+
args: [MatSort]
|
|
279
|
+
}], tableData: [{
|
|
280
|
+
type: Input
|
|
281
|
+
}], sortChanged: [{
|
|
282
|
+
type: Output
|
|
283
|
+
}] } });
|
|
284
|
+
|
|
285
|
+
class SapInstalledInstrumentListSearchComponent {
|
|
286
|
+
constructor(sapInstalledInstrumentService, router, activatedRoute, fb) {
|
|
287
|
+
this.sapInstalledInstrumentService = sapInstalledInstrumentService;
|
|
288
|
+
this.router = router;
|
|
289
|
+
this.activatedRoute = activatedRoute;
|
|
290
|
+
this.fb = fb;
|
|
291
|
+
this.filtersChanged = new EventEmitter();
|
|
292
|
+
this.showFilters = false;
|
|
293
|
+
this.searchForm = this.fb.group({
|
|
294
|
+
application: [[]],
|
|
295
|
+
serialNumber: '',
|
|
296
|
+
instrumentNo: '',
|
|
297
|
+
instrumentDesc: '',
|
|
298
|
+
customerNo: '',
|
|
299
|
+
bpName: '',
|
|
300
|
+
city: '',
|
|
301
|
+
county: '',
|
|
302
|
+
endUserName: '',
|
|
303
|
+
endUserCode: '',
|
|
304
|
+
territory: null,
|
|
305
|
+
technicianLastName: '',
|
|
306
|
+
country: '',
|
|
307
|
+
state: '',
|
|
308
|
+
status: '',
|
|
309
|
+
installationDateFrom: null,
|
|
310
|
+
installationDateTo: null
|
|
311
|
+
});
|
|
312
|
+
this.getFilteredOptions = (search) => {
|
|
313
|
+
return this.sapInstalledInstrumentService.getApplicationSearch(search);
|
|
314
|
+
};
|
|
315
|
+
}
|
|
316
|
+
ngOnInit() {
|
|
317
|
+
this.setSearchForm();
|
|
318
|
+
this.setAsyncFilters();
|
|
319
|
+
const queryParamsKeys = Object.keys(this.activatedRoute.snapshot.queryParams || {});
|
|
320
|
+
if (queryParamsKeys.length > 2) {
|
|
321
|
+
this.showFilters = true;
|
|
322
|
+
queryParamsKeys.forEach((queryParam) => {
|
|
323
|
+
const formControl = this.searchForm.get(queryParam);
|
|
324
|
+
if (formControl) {
|
|
325
|
+
if (queryParam === 'installationDateFrom' || queryParam === 'installationDateTo') {
|
|
326
|
+
formControl.setValue(this.activatedRoute.snapshot.queryParams[queryParam] ? new Date(this.activatedRoute.snapshot.queryParams[queryParam]) : null);
|
|
327
|
+
}
|
|
328
|
+
else {
|
|
329
|
+
formControl.setValue(this.activatedRoute.snapshot.queryParams[queryParam]);
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
});
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
clearAllFilters() {
|
|
336
|
+
this.searchForm.reset();
|
|
337
|
+
this.multiselectAutocomplete.clearSelectedData();
|
|
338
|
+
this.searchSubmitted();
|
|
339
|
+
}
|
|
340
|
+
refreshTerritories() {
|
|
341
|
+
this.searchForm.controls.territory.setValue(null);
|
|
342
|
+
this.territories$ = this.sapInstalledInstrumentService.getTerritory(true);
|
|
343
|
+
}
|
|
344
|
+
refreshCountries() {
|
|
345
|
+
this.searchForm.controls.country.setValue('');
|
|
346
|
+
this.countries$ = this.sapInstalledInstrumentService.getCountry(true);
|
|
347
|
+
}
|
|
348
|
+
refreshStates() {
|
|
349
|
+
this.searchForm.controls.state.setValue('');
|
|
350
|
+
this.states$ = this.sapInstalledInstrumentService.getState(this.searchForm.controls.country.value, true);
|
|
351
|
+
}
|
|
352
|
+
getCountryValue(country) {
|
|
353
|
+
return country.id;
|
|
354
|
+
}
|
|
355
|
+
getStateValue(state) {
|
|
356
|
+
return state.id;
|
|
357
|
+
}
|
|
358
|
+
getTerritoryValue(territory) {
|
|
359
|
+
return territory.id;
|
|
360
|
+
}
|
|
361
|
+
searchSubmitted() {
|
|
362
|
+
const formValues = this.searchForm.getRawValue();
|
|
363
|
+
this.filtersChanged.emit(formValues);
|
|
364
|
+
}
|
|
365
|
+
clearInputValue(formControlName) {
|
|
366
|
+
this.searchForm.get(formControlName).setValue('');
|
|
367
|
+
this.searchSubmitted();
|
|
368
|
+
}
|
|
369
|
+
applicationSelected(data) {
|
|
370
|
+
this.searchForm.controls.application.setValue(data);
|
|
371
|
+
}
|
|
372
|
+
setAsyncFilters() {
|
|
373
|
+
this.territories$ = this.sapInstalledInstrumentService.getTerritory(false);
|
|
374
|
+
this.countries$ = this.sapInstalledInstrumentService.getCountry(false);
|
|
375
|
+
this.states$ = of([]);
|
|
376
|
+
}
|
|
377
|
+
setSearchForm() {
|
|
378
|
+
this.searchForm.controls.country.valueChanges.subscribe((country) => {
|
|
379
|
+
this.searchForm.controls.state.setValue('');
|
|
380
|
+
if (country) {
|
|
381
|
+
this.states$ = this.sapInstalledInstrumentService.getState(country);
|
|
382
|
+
}
|
|
383
|
+
else {
|
|
384
|
+
this.states$ = of([]);
|
|
385
|
+
}
|
|
386
|
+
});
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
SapInstalledInstrumentListSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListSearchComponent, deps: [{ token: SapInstalledInstrumentsService }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i3$2.NonNullableFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
390
|
+
SapInstalledInstrumentListSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentListSearchComponent, selector: "app-sap-installed-instrument-list-search", outputs: { filtersChanged: "filtersChanged" }, viewQueries: [{ propertyName: "multiselectAutocomplete", first: true, predicate: ["multiselectAutocomplete"], descendants: true }], ngImport: i0, template: "<form\r\n class=\"search-filters\"\r\n [formGroup]=\"searchForm\"\r\n (ngSubmit)=\"searchSubmitted()\"\r\n>\r\n <div class=\"row align-items-center\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <ngx-st-multiselect-autocomplete\r\n #multiselectAutocomplete\r\n [label]=\"\r\n ('sapAdminInstalledInstrument.application' | translate) +\r\n ' (' +\r\n ('global.max' | translate) +\r\n ': 10)'\r\n \"\r\n [placeholder]=\"\r\n 'sapAdminInstalledInstrument.applicationPlaceholder' | translate\r\n \"\r\n [getFilteredOptions]=\"this.getFilteredOptions\"\r\n [initSelectedData]=\"searchForm.controls.application.value\"\r\n [maxLengthSelectedData]=\"10\"\r\n (selectedDataChanged)=\"applicationSelected($event)\"\r\n ></ngx-st-multiselect-autocomplete>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"bpName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.accountName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.bpName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('bpName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"technicianLastName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.technicianLastName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.technicianLastName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('technicianLastName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"serialNumber\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.serialNumber' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.serialNumber.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('serialNumber')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"instrumentNo\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.instrumentNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.instrumentNo.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('instrumentNo')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"instrumentDesc\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.instrumentDescription' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.instrumentDesc.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('instrumentDesc')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.instrumentStatus' | translate\r\n }}</mat-label>\r\n <mat-select formControlName=\"status\">\r\n <mat-option [value]=\"''\">{{ 'global.empty' | translate }}</mat-option>\r\n <mat-option [value]=\"'A'\">{{\r\n 'sapAdminInstalledInstrument.statusA' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'R'\">{{\r\n 'sapAdminInstalledInstrument.statusR' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'T'\">{{\r\n 'sapAdminInstalledInstrument.statusT' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'L'\">{{\r\n 'sapAdminInstalledInstrument.statusL' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'I'\">{{\r\n 'sapAdminInstalledInstrument.statusI' | translate\r\n }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"customerNo\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.accountNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.customerNo.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('customerNo')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"\r\n searchForm?.get('territory') &&\r\n ((territories$ | async) || []) as territories\r\n \"\r\n [options]=\"territories || []\"\r\n [selectLabel]=\"'global.territory' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.territory\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getTerritoryValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n (click)=\"refreshTerritories()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"city\"\r\n placeholder=\"{{ 'global.city' | translate }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.city.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('city')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"searchForm?.get('state') && ((states$ | async) || []) as states\"\r\n [options]=\"states || []\"\r\n [selectLabel]=\"'global.state' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.state\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getStateValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n [disabled]=\"!searchForm.controls.country.value\"\r\n (click)=\"refreshStates()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"county\"\r\n placeholder=\"{{ 'global.county' | translate }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.county.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('county')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"\r\n searchForm?.get('country') &&\r\n ((countries$ | async) || []) as countries\r\n \"\r\n [options]=\"countries || []\"\r\n [selectLabel]=\"'global.country' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.country\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getCountryValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n (click)=\"refreshCountries()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.installationDateFrom' | translate\r\n }}</mat-label>\r\n <input\r\n matInput\r\n [matDatepicker]=\"picker1\"\r\n formControlName=\"installationDateFrom\"\r\n />\r\n <mat-datepicker-toggle\r\n matSuffix\r\n [for]=\"picker1\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker1></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.installationDateTo' | translate\r\n }}</mat-label>\r\n <input\r\n matInput\r\n [matDatepicker]=\"picker2\"\r\n formControlName=\"installationDateTo\"\r\n />\r\n <mat-datepicker-toggle\r\n matSuffix\r\n [for]=\"picker2\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker2></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"endUserName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.endCustomerName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.endUserName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('endUserName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"endUserCode\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.endCustomerNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.endUserCode.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('endUserCode')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row justify-content-center\" style=\"margin-bottom: 10px\">\r\n <button\r\n mat-raised-button\r\n type=\"button\"\r\n (click)=\"clearAllFilters()\"\r\n *ngIf=\"showFilters\"\r\n style=\"margin-right: 10px\"\r\n >\r\n Clear All\r\n </button>\r\n <button\r\n mat-raised-button\r\n type=\"button\"\r\n color=\"accent\"\r\n (click)=\"showFilters = !showFilters\"\r\n >\r\n <ng-container *ngIf=\"showFilters\">\r\n {{ 'sapAdminInstalledInstrument.hideFilters' | translate }}\r\n </ng-container>\r\n <ng-container *ngIf=\"!showFilters\">\r\n {{ 'sapAdminInstalledInstrument.showFilters' | translate }}\r\n </ng-container>\r\n </button>\r\n <button\r\n *ngIf=\"showFilters\"\r\n mat-raised-button\r\n type=\"submit\"\r\n color=\"primary\"\r\n style=\"margin-left: 10px\"\r\n >\r\n Search\r\n </button>\r\n </div>\r\n</form>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i7$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i11.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i12.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i12.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i12.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i3$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i13.NgxStMultiselectAutocompleteComponent, selector: "ngx-st-multiselect-autocomplete", inputs: ["label", "placeholder", "getFilteredOptions", "initSelectedData", "maxLengthSelectedData"], outputs: ["selectedDataChanged"] }, { kind: "component", type: i14.SearchSelectComponent, selector: "ngx-st-search-select", inputs: ["selectLabel", "filterMethod", "optionLabelMethod", "optionLabelPropertyName", "valueMethod", "displaySelected", "model", "modelChange", "selectFormControl", "required", "selectBindType", "searchLabel", "options"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
391
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListSearchComponent, decorators: [{
|
|
392
|
+
type: Component,
|
|
393
|
+
args: [{ selector: 'app-sap-installed-instrument-list-search', changeDetection: ChangeDetectionStrategy.OnPush, template: "<form\r\n class=\"search-filters\"\r\n [formGroup]=\"searchForm\"\r\n (ngSubmit)=\"searchSubmitted()\"\r\n>\r\n <div class=\"row align-items-center\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <ngx-st-multiselect-autocomplete\r\n #multiselectAutocomplete\r\n [label]=\"\r\n ('sapAdminInstalledInstrument.application' | translate) +\r\n ' (' +\r\n ('global.max' | translate) +\r\n ': 10)'\r\n \"\r\n [placeholder]=\"\r\n 'sapAdminInstalledInstrument.applicationPlaceholder' | translate\r\n \"\r\n [getFilteredOptions]=\"this.getFilteredOptions\"\r\n [initSelectedData]=\"searchForm.controls.application.value\"\r\n [maxLengthSelectedData]=\"10\"\r\n (selectedDataChanged)=\"applicationSelected($event)\"\r\n ></ngx-st-multiselect-autocomplete>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"bpName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.accountName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.bpName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('bpName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"technicianLastName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.technicianLastName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.technicianLastName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('technicianLastName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"serialNumber\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.serialNumber' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.serialNumber.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('serialNumber')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"instrumentNo\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.instrumentNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.instrumentNo.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('instrumentNo')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"instrumentDesc\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.instrumentDescription' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.instrumentDesc.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('instrumentDesc')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.instrumentStatus' | translate\r\n }}</mat-label>\r\n <mat-select formControlName=\"status\">\r\n <mat-option [value]=\"''\">{{ 'global.empty' | translate }}</mat-option>\r\n <mat-option [value]=\"'A'\">{{\r\n 'sapAdminInstalledInstrument.statusA' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'R'\">{{\r\n 'sapAdminInstalledInstrument.statusR' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'T'\">{{\r\n 'sapAdminInstalledInstrument.statusT' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'L'\">{{\r\n 'sapAdminInstalledInstrument.statusL' | translate\r\n }}</mat-option>\r\n <mat-option [value]=\"'I'\">{{\r\n 'sapAdminInstalledInstrument.statusI' | translate\r\n }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"customerNo\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.accountNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.customerNo.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('customerNo')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"\r\n searchForm?.get('territory') &&\r\n ((territories$ | async) || []) as territories\r\n \"\r\n [options]=\"territories || []\"\r\n [selectLabel]=\"'global.territory' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.territory\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getTerritoryValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n (click)=\"refreshTerritories()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"city\"\r\n placeholder=\"{{ 'global.city' | translate }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.city.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('city')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"searchForm?.get('state') && ((states$ | async) || []) as states\"\r\n [options]=\"states || []\"\r\n [selectLabel]=\"'global.state' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.state\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getStateValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n [disabled]=\"!searchForm.controls.country.value\"\r\n (click)=\"refreshStates()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"county\"\r\n placeholder=\"{{ 'global.county' | translate }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.county.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('county')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center row\">\r\n <ngx-st-search-select\r\n *ngIf=\"\r\n searchForm?.get('country') &&\r\n ((countries$ | async) || []) as countries\r\n \"\r\n [options]=\"countries || []\"\r\n [selectLabel]=\"'global.country' | translate\"\r\n [optionLabelPropertyName]=\"'name'\"\r\n [selectFormControl]=\"searchForm.controls.country\"\r\n [selectBindType]=\"'control'\"\r\n [searchLabel]=\"'global.search' | translate\"\r\n [valueMethod]=\"getCountryValue\"\r\n ></ngx-st-search-select>\r\n <button\r\n mat-icon-button\r\n [matTooltip]=\"'global.refresh' | translate\"\r\n (click)=\"refreshCountries()\"\r\n type=\"button\"\r\n >\r\n <i class=\"material-icons\">refresh</i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"row\" [ngClass]=\"{ hide: !showFilters }\">\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.installationDateFrom' | translate\r\n }}</mat-label>\r\n <input\r\n matInput\r\n [matDatepicker]=\"picker1\"\r\n formControlName=\"installationDateFrom\"\r\n />\r\n <mat-datepicker-toggle\r\n matSuffix\r\n [for]=\"picker1\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker1></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'sapAdminInstalledInstrument.installationDateTo' | translate\r\n }}</mat-label>\r\n <input\r\n matInput\r\n [matDatepicker]=\"picker2\"\r\n formControlName=\"installationDateTo\"\r\n />\r\n <mat-datepicker-toggle\r\n matSuffix\r\n [for]=\"picker2\"\r\n ></mat-datepicker-toggle>\r\n <mat-datepicker #picker2></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"endUserName\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.endCustomerName' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.endUserName.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('endUserName')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3 align-items-center\">\r\n <mat-form-field>\r\n <input\r\n matInput\r\n formControlName=\"endUserCode\"\r\n placeholder=\"{{\r\n 'sapAdminInstalledInstrument.endCustomerNo' | translate\r\n }}\"\r\n />\r\n <button\r\n *ngIf=\"searchForm.controls.endUserCode.value\"\r\n type=\"button\"\r\n matSuffix\r\n mat-icon-button\r\n aria-label=\"Clear\"\r\n (click)=\"clearInputValue('endUserCode')\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row justify-content-center\" style=\"margin-bottom: 10px\">\r\n <button\r\n mat-raised-button\r\n type=\"button\"\r\n (click)=\"clearAllFilters()\"\r\n *ngIf=\"showFilters\"\r\n style=\"margin-right: 10px\"\r\n >\r\n Clear All\r\n </button>\r\n <button\r\n mat-raised-button\r\n type=\"button\"\r\n color=\"accent\"\r\n (click)=\"showFilters = !showFilters\"\r\n >\r\n <ng-container *ngIf=\"showFilters\">\r\n {{ 'sapAdminInstalledInstrument.hideFilters' | translate }}\r\n </ng-container>\r\n <ng-container *ngIf=\"!showFilters\">\r\n {{ 'sapAdminInstalledInstrument.showFilters' | translate }}\r\n </ng-container>\r\n </button>\r\n <button\r\n *ngIf=\"showFilters\"\r\n mat-raised-button\r\n type=\"submit\"\r\n color=\"primary\"\r\n style=\"margin-left: 10px\"\r\n >\r\n Search\r\n </button>\r\n </div>\r\n</form>\r\n" }]
|
|
394
|
+
}], ctorParameters: function () { return [{ type: SapInstalledInstrumentsService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3$2.NonNullableFormBuilder }]; }, propDecorators: { multiselectAutocomplete: [{
|
|
395
|
+
type: ViewChild,
|
|
396
|
+
args: ['multiselectAutocomplete']
|
|
397
|
+
}], filtersChanged: [{
|
|
398
|
+
type: Output
|
|
399
|
+
}] } });
|
|
400
|
+
|
|
401
|
+
class SapInstalledInstrumentListComponent extends StSubscribeDestroyComponent {
|
|
402
|
+
constructor(sapInstalledInstrumentService, changeDetector, router, activatedRoute) {
|
|
403
|
+
super();
|
|
404
|
+
this.sapInstalledInstrumentService = sapInstalledInstrumentService;
|
|
405
|
+
this.changeDetector = changeDetector;
|
|
406
|
+
this.router = router;
|
|
407
|
+
this.activatedRoute = activatedRoute;
|
|
408
|
+
this.class = 'display-flex-component';
|
|
409
|
+
this.installedInstruments = [];
|
|
410
|
+
this.lastSearchFilters = {};
|
|
411
|
+
this.lastSearchSorts = {};
|
|
412
|
+
}
|
|
413
|
+
ngOnInit() {
|
|
414
|
+
const queryParamsKeys = Object.keys(this.activatedRoute.snapshot.queryParams || {});
|
|
415
|
+
if (queryParamsKeys.length > 0) {
|
|
416
|
+
queryParamsKeys.forEach(queryParam => {
|
|
417
|
+
if (queryParam === 'active' || queryParam === 'direction') {
|
|
418
|
+
this.lastSearchSorts[queryParam] =
|
|
419
|
+
this.activatedRoute.snapshot.queryParams[queryParam];
|
|
420
|
+
}
|
|
421
|
+
else {
|
|
422
|
+
this.lastSearchFilters[queryParam] =
|
|
423
|
+
this.activatedRoute.snapshot.queryParams[queryParam];
|
|
424
|
+
this.lastSearchFilters['installationDateFrom'] = this.activatedRoute
|
|
425
|
+
.snapshot.queryParams['installationDateFrom']
|
|
426
|
+
? new Date(this.activatedRoute.snapshot.queryParams['installationDateFrom'])
|
|
427
|
+
: null;
|
|
428
|
+
this.lastSearchFilters['installationDateTo'] = this.activatedRoute
|
|
429
|
+
.snapshot.queryParams['installationDateTo']
|
|
430
|
+
? new Date(this.activatedRoute.snapshot.queryParams['installationDateTo'])
|
|
431
|
+
: null;
|
|
432
|
+
}
|
|
433
|
+
});
|
|
434
|
+
}
|
|
435
|
+
this.loadInstalledInstruments(this.lastSearchFilters, this.lastSearchSorts);
|
|
436
|
+
}
|
|
437
|
+
filtersChanged(event) {
|
|
438
|
+
this.loadInstalledInstruments(event, this.lastSearchSorts);
|
|
439
|
+
}
|
|
440
|
+
sortChanged(event) {
|
|
441
|
+
this.loadInstalledInstruments(this.lastSearchFilters, event);
|
|
442
|
+
}
|
|
443
|
+
loadInstalledInstruments(searchForm, sort) {
|
|
444
|
+
this.router.navigate([], {
|
|
445
|
+
queryParams: {
|
|
446
|
+
...searchForm,
|
|
447
|
+
installationDateFrom: searchForm.installationDateFrom?.toISOString() || '',
|
|
448
|
+
installationDateTo: searchForm.installationDateTo?.toISOString() || '',
|
|
449
|
+
...sort,
|
|
450
|
+
},
|
|
451
|
+
});
|
|
452
|
+
this.sapInstalledInstrumentService
|
|
453
|
+
.getInstalledInstrumentList(searchForm, sort)
|
|
454
|
+
.subscribe(res => {
|
|
455
|
+
this.lastSearchFilters = searchForm;
|
|
456
|
+
this.lastSearchSorts = sort;
|
|
457
|
+
this.installedInstruments = res;
|
|
458
|
+
this.changeDetector.markForCheck();
|
|
459
|
+
});
|
|
460
|
+
}
|
|
461
|
+
}
|
|
462
|
+
SapInstalledInstrumentListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListComponent, deps: [{ token: SapInstalledInstrumentsService }, { token: i0.ChangeDetectorRef }, { token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
|
|
463
|
+
SapInstalledInstrumentListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentListComponent, selector: "app-sap-installed-instrument-list", host: { properties: { "class": "this.class" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"container-fluid no-cut\">\r\n <div class=\"card\">\r\n <div class=\"card-header card-header-warning\">\r\n <h3 class=\"card-title\">\r\n {{\r\n 'sapAdminInstalledInstrument.titleInstalledInstrumentList' | translate\r\n }}\r\n </h3>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <app-sap-installed-instrument-list-search\r\n (filtersChanged)=\"filtersChanged($event)\"\r\n ></app-sap-installed-instrument-list-search>\r\n\r\n <app-sap-installed-instrument-list-table\r\n [tableData]=\"installedInstruments\"\r\n (sortChanged)=\"sortChanged($event)\"\r\n ></app-sap-installed-instrument-list-table>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: SapInstalledInstrumentListSearchComponent, selector: "app-sap-installed-instrument-list-search", outputs: ["filtersChanged"] }, { kind: "component", type: SapInstalledInstrumentListTableComponent, selector: "app-sap-installed-instrument-list-table", inputs: ["tableData"], outputs: ["sortChanged"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
464
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentListComponent, decorators: [{
|
|
465
|
+
type: Component,
|
|
466
|
+
args: [{ selector: 'app-sap-installed-instrument-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"container-fluid no-cut\">\r\n <div class=\"card\">\r\n <div class=\"card-header card-header-warning\">\r\n <h3 class=\"card-title\">\r\n {{\r\n 'sapAdminInstalledInstrument.titleInstalledInstrumentList' | translate\r\n }}\r\n </h3>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <app-sap-installed-instrument-list-search\r\n (filtersChanged)=\"filtersChanged($event)\"\r\n ></app-sap-installed-instrument-list-search>\r\n\r\n <app-sap-installed-instrument-list-table\r\n [tableData]=\"installedInstruments\"\r\n (sortChanged)=\"sortChanged($event)\"\r\n ></app-sap-installed-instrument-list-table>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
|
|
467
|
+
}], ctorParameters: function () { return [{ type: SapInstalledInstrumentsService }, { type: i0.ChangeDetectorRef }, { type: i2.Router }, { type: i2.ActivatedRoute }]; }, propDecorators: { class: [{
|
|
468
|
+
type: HostBinding,
|
|
469
|
+
args: ['class']
|
|
470
|
+
}] } });
|
|
471
|
+
|
|
472
|
+
class ActivityDetailsViewComponent {
|
|
473
|
+
constructor(config) {
|
|
474
|
+
this.config = config;
|
|
475
|
+
this.baseDownloadLink = '';
|
|
476
|
+
}
|
|
477
|
+
ngOnInit() {
|
|
478
|
+
this.baseDownloadLink =
|
|
479
|
+
this.config.api_base_uri +
|
|
480
|
+
'/admin/sap-master-data/installedInstrument/activity-attachment?access_token=' +
|
|
481
|
+
this.config.accessToken;
|
|
482
|
+
}
|
|
483
|
+
updateLink() {
|
|
484
|
+
const company = localStorage.getItem('company-id')
|
|
485
|
+
? `&company-id=${localStorage.getItem('company-id')}`
|
|
486
|
+
: '';
|
|
487
|
+
this.baseDownloadLink =
|
|
488
|
+
this.config.api_base_uri +
|
|
489
|
+
'/admin/sap-master-data/installedInstrument/activity-attachment?access_token=' +
|
|
490
|
+
this.config.accessToken +
|
|
491
|
+
company;
|
|
492
|
+
}
|
|
493
|
+
}
|
|
494
|
+
ActivityDetailsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActivityDetailsViewComponent, deps: [{ token: 'config' }], target: i0.ɵɵFactoryTarget.Component });
|
|
495
|
+
ActivityDetailsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ActivityDetailsViewComponent, selector: "app-activity-details-view", inputs: { activity: "activity" }, ngImport: i0, template: "<div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.activity' | translate}}</span>\r\n <p>{{activity.activity || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.type' | translate}}</span>\r\n <p>{{activity.type || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.subject' | translate}}</span>\r\n <p>{{activity.subject || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.remarks' | translate}}</span>\r\n <p>{{activity.remarks || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.startTime' | translate}}</span>\r\n <p>{{(activity.startTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.endTime' | translate}}</span>\r\n <p>{{(activity.endTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.duration' | translate}}</span>\r\n <p>{{activity.duration || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.content' | translate}}</span>\r\n <p>{{activity.content || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.coordinator' | translate}}</span>\r\n <p>{{activity.coordinatorName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.orderNumber' | translate}}</span>\r\n <p>{{activity.orderNumber || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.detailedSymptom' | translate}}</span>\r\n <p>{{activity.detailedSymptom || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.solution' | translate}}</span>\r\n <p>{{activity.solution || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.incompleteReason' | translate}}</span>\r\n <p>{{activity.incompleteReason || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\" *ngIf=\"activity.attachmentList.length > 0\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <p class=\"attachments-title\">{{'global.attachments' | translate}}:</p>\r\n <ul class=\"row\">\r\n <li class=\"row align-items-center\" *ngFor=\"let attachment of activity.attachmentList\">\r\n <p>{{attachment.fileName}}.{{attachment.fileExt}}</p>\r\n\r\n <a [href]=\"baseDownloadLink + '&id=' + attachment.id + '&line=' + attachment.line + '&preview=true'\" target=\"_blank\" (click)=\"updateLink()\">\r\n <button mat-icon-button>\r\n <mat-icon class=\"material-icons\">preview</mat-icon>\r\n </button>\r\n </a>\r\n\r\n <a [href]=\"baseDownloadLink + '&id=' + attachment.id + '&line=' + attachment.line + '&preview=false'\" target=\"_blank\" (click)=\"updateLink()\">\r\n <button mat-icon-button>\r\n <mat-icon class=\"material-icons\">cloud_download</mat-icon>\r\n </button>\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n", styles: [".group-details .attachments-title{font-weight:500;margin-bottom:0}.group-details ul{padding-left:0}.group-details ul li{padding:0 10px;border-right:2px solid #66bb6a}.group-details ul li:last-child{border-right:0}.group-details ul li p{margin-bottom:0}.group-details ul li button{width:32px;height:32px;line-height:32px;opacity:.8}.group-details ul li button:hover{opacity:1}.group-details ul li button mat-icon{font-size:22px;line-height:22px;width:22px;height:22px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i11.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateTimeFormatPipe, name: "stDateTimeFormatPipe" }] });
|
|
496
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActivityDetailsViewComponent, decorators: [{
|
|
497
|
+
type: Component,
|
|
498
|
+
args: [{ selector: 'app-activity-details-view', template: "<div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.activity' | translate}}</span>\r\n <p>{{activity.activity || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.type' | translate}}</span>\r\n <p>{{activity.type || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.subject' | translate}}</span>\r\n <p>{{activity.subject || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.remarks' | translate}}</span>\r\n <p>{{activity.remarks || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.startTime' | translate}}</span>\r\n <p>{{(activity.startTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.endTime' | translate}}</span>\r\n <p>{{(activity.endTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.duration' | translate}}</span>\r\n <p>{{activity.duration || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.content' | translate}}</span>\r\n <p>{{activity.content || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.coordinator' | translate}}</span>\r\n <p>{{activity.coordinatorName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.orderNumber' | translate}}</span>\r\n <p>{{activity.orderNumber || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.detailedSymptom' | translate}}</span>\r\n <p>{{activity.detailedSymptom || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.solution' | translate}}</span>\r\n <p>{{activity.solution || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.incompleteReason' | translate}}</span>\r\n <p>{{activity.incompleteReason || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\" *ngIf=\"activity.attachmentList.length > 0\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <p class=\"attachments-title\">{{'global.attachments' | translate}}:</p>\r\n <ul class=\"row\">\r\n <li class=\"row align-items-center\" *ngFor=\"let attachment of activity.attachmentList\">\r\n <p>{{attachment.fileName}}.{{attachment.fileExt}}</p>\r\n\r\n <a [href]=\"baseDownloadLink + '&id=' + attachment.id + '&line=' + attachment.line + '&preview=true'\" target=\"_blank\" (click)=\"updateLink()\">\r\n <button mat-icon-button>\r\n <mat-icon class=\"material-icons\">preview</mat-icon>\r\n </button>\r\n </a>\r\n\r\n <a [href]=\"baseDownloadLink + '&id=' + attachment.id + '&line=' + attachment.line + '&preview=false'\" target=\"_blank\" (click)=\"updateLink()\">\r\n <button mat-icon-button>\r\n <mat-icon class=\"material-icons\">cloud_download</mat-icon>\r\n </button>\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n", styles: [".group-details .attachments-title{font-weight:500;margin-bottom:0}.group-details ul{padding-left:0}.group-details ul li{padding:0 10px;border-right:2px solid #66bb6a}.group-details ul li:last-child{border-right:0}.group-details ul li p{margin-bottom:0}.group-details ul li button{width:32px;height:32px;line-height:32px;opacity:.8}.group-details ul li button:hover{opacity:1}.group-details ul li button mat-icon{font-size:22px;line-height:22px;width:22px;height:22px}\n"] }]
|
|
499
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
500
|
+
type: Inject,
|
|
501
|
+
args: ['config']
|
|
502
|
+
}] }]; }, propDecorators: { activity: [{
|
|
503
|
+
type: Input
|
|
504
|
+
}] } });
|
|
505
|
+
|
|
506
|
+
class ActivitiesListViewComponent {
|
|
507
|
+
constructor() {
|
|
508
|
+
this.class = 'display-flex-component';
|
|
509
|
+
this.columnsToDisplay = ['activityNumber', 'detailedSymptom', 'solution', 'coordinator', 'startTime', 'endTime'];
|
|
510
|
+
}
|
|
511
|
+
ngOnInit() {
|
|
512
|
+
this.setTable();
|
|
513
|
+
}
|
|
514
|
+
ngAfterViewInit() {
|
|
515
|
+
this.paginator.pageSize = 5;
|
|
516
|
+
this.tableSource.paginator = this.paginator;
|
|
517
|
+
}
|
|
518
|
+
setTable() {
|
|
519
|
+
this.tableSource = new MatTableDataSource(this.activities);
|
|
520
|
+
}
|
|
521
|
+
}
|
|
522
|
+
ActivitiesListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActivitiesListViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
523
|
+
ActivitiesListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ActivitiesListViewComponent, selector: "app-activities-list-view", inputs: { activities: "activities" }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"activities-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"activityNumber\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.activityNo' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.activityNumber }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"type\">\r\n <th mat-header-cell *matHeaderCellDef>{{ 'global.type' | translate }}</th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.type }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"detailedSymptom\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.detailedSymptom' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.detailedSymptom }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"solution\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.solution' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.solution }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"coordinator\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.coordinator' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.coordinatorName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"startTime\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.startTime' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.startTime | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"endTime\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.endTime' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.endTime | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-activity-details-view\r\n *ngIf=\"element == expandedElement\"\r\n [activity]=\"element\"\r\n ></app-activity-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[5, 10]\"\r\n [showFirstLastButtons]=\"true\"\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.activities-list-view{width:100%}table::ng-deep tbody>tr.active{background-color:#90caf9!important}table::ng-deep tbody>tr:hover{background-color:#90caf9!important}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#bbdefb;border-left:3px solid #bbdefb;border-right:3px solid #bbdefb}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #bbdefb;border-right:3px solid #bbdefb;border-bottom:3px solid #bbdefb}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: ActivityDetailsViewComponent, selector: "app-activity-details-view", inputs: ["activity"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateTimeFormatPipe, name: "stDateTimeFormatPipe" }], animations: [
|
|
524
|
+
trigger('detailExpand', [
|
|
525
|
+
state('collapsed', style({ height: '0px', minHeight: '0' })),
|
|
526
|
+
state('expanded', style({ height: '*' })),
|
|
527
|
+
transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
|
|
528
|
+
]),
|
|
529
|
+
] });
|
|
530
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActivitiesListViewComponent, decorators: [{
|
|
531
|
+
type: Component,
|
|
532
|
+
args: [{ selector: 'app-activities-list-view', animations: [
|
|
533
|
+
trigger('detailExpand', [
|
|
534
|
+
state('collapsed', style({ height: '0px', minHeight: '0' })),
|
|
535
|
+
state('expanded', style({ height: '*' })),
|
|
536
|
+
transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
|
|
537
|
+
]),
|
|
538
|
+
], template: "<div class=\"activities-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"activityNumber\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.activityNo' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.activityNumber }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"type\">\r\n <th mat-header-cell *matHeaderCellDef>{{ 'global.type' | translate }}</th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.type }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"detailedSymptom\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.detailedSymptom' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.detailedSymptom }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"solution\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.solution' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.solution }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"coordinator\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.coordinator' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.coordinatorName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"startTime\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.startTime' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.startTime | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"endTime\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.endTime' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.endTime | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-activity-details-view\r\n *ngIf=\"element == expandedElement\"\r\n [activity]=\"element\"\r\n ></app-activity-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[5, 10]\"\r\n [showFirstLastButtons]=\"true\"\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.activities-list-view{width:100%}table::ng-deep tbody>tr.active{background-color:#90caf9!important}table::ng-deep tbody>tr:hover{background-color:#90caf9!important}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#bbdefb;border-left:3px solid #bbdefb;border-right:3px solid #bbdefb}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #bbdefb;border-right:3px solid #bbdefb;border-bottom:3px solid #bbdefb}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"] }]
|
|
539
|
+
}], ctorParameters: function () { return []; }, propDecorators: { class: [{
|
|
540
|
+
type: HostBinding,
|
|
541
|
+
args: ['class']
|
|
542
|
+
}], paginator: [{
|
|
543
|
+
type: ViewChild,
|
|
544
|
+
args: [MatPaginator]
|
|
545
|
+
}], activities: [{
|
|
546
|
+
type: Input
|
|
547
|
+
}] } });
|
|
548
|
+
|
|
549
|
+
class ServiceContractDetailsViewComponent {
|
|
550
|
+
constructor() {
|
|
551
|
+
}
|
|
552
|
+
ngOnInit() {
|
|
553
|
+
}
|
|
554
|
+
}
|
|
555
|
+
ServiceContractDetailsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractDetailsViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
556
|
+
ServiceContractDetailsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ServiceContractDetailsViewComponent, selector: "app-service-contract-details-view", inputs: { contract: "contract" }, ngImport: i0, template: "<div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customer' | translate}}</span>\r\n <p>{{contract.customer || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customerName' | translate}}</span>\r\n <p>{{contract.customerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.description' | translate}}</span>\r\n <p>{{contract.description || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.startDate' | translate}}</span>\r\n <p>{{(contract.startDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endDate' | translate}}</span>\r\n <p>{{(contract.endDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.terminationDate' | translate}}</span>\r\n <p>{{(contract.terminationDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.serviceType' | translate}}</span>\r\n <p>{{(contract.serviceType) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.template' | translate}}</span>\r\n <p>{{(contract.template) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.handledBy' | translate}}</span>\r\n <p>{{(contract.handledBy) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.remarks' | translate}}</span>\r\n <p>{{(contract.remarks) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.itemCode' | translate}}</span>\r\n <p>{{(contract.itemCode) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.itemName' | translate}}</span>\r\n <p>{{(contract.itemName) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.serialNumber' | translate}}</span>\r\n <p>{{(contract.serialNumber) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.startDateDetails' | translate}}</span>\r\n <p>{{(contract.startDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endDateDetails' | translate}}</span>\r\n <p>{{(contract.endDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.terminationDateDetails' | translate}}</span>\r\n <p>{{(contract.terminationDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateFormatPipe, name: "stDateFormatPipe" }] });
|
|
557
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractDetailsViewComponent, decorators: [{
|
|
558
|
+
type: Component,
|
|
559
|
+
args: [{ selector: 'app-service-contract-details-view', template: "<div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customer' | translate}}</span>\r\n <p>{{contract.customer || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customerName' | translate}}</span>\r\n <p>{{contract.customerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.description' | translate}}</span>\r\n <p>{{contract.description || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.startDate' | translate}}</span>\r\n <p>{{(contract.startDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endDate' | translate}}</span>\r\n <p>{{(contract.endDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.terminationDate' | translate}}</span>\r\n <p>{{(contract.terminationDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.serviceType' | translate}}</span>\r\n <p>{{(contract.serviceType) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.template' | translate}}</span>\r\n <p>{{(contract.template) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.handledBy' | translate}}</span>\r\n <p>{{(contract.handledBy) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.remarks' | translate}}</span>\r\n <p>{{(contract.remarks) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<hr/>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.itemCode' | translate}}</span>\r\n <p>{{(contract.itemCode) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.itemName' | translate}}</span>\r\n <p>{{(contract.itemName) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.serialNumber' | translate}}</span>\r\n <p>{{(contract.serialNumber) || '-'}}</p>\r\n </div>\r\n</div>\r\n\r\n<div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.startDateDetails' | translate}}</span>\r\n <p>{{(contract.startDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endDateDetails' | translate}}</span>\r\n <p>{{(contract.endDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.terminationDateDetails' | translate}}</span>\r\n <p>{{(contract.terminationDateDetail | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n</div>\r\n" }]
|
|
560
|
+
}], ctorParameters: function () { return []; }, propDecorators: { contract: [{
|
|
561
|
+
type: Input
|
|
562
|
+
}] } });
|
|
563
|
+
|
|
564
|
+
class ServiceContractsModalDetailsViewComponent {
|
|
565
|
+
constructor(data, dialogRef) {
|
|
566
|
+
this.data = data;
|
|
567
|
+
this.dialogRef = dialogRef;
|
|
568
|
+
}
|
|
569
|
+
ngOnInit() {
|
|
570
|
+
}
|
|
571
|
+
close() {
|
|
572
|
+
this.dialogRef.close();
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
ServiceContractsModalDetailsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractsModalDetailsViewComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1$1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
576
|
+
ServiceContractsModalDetailsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ServiceContractsModalDetailsViewComponent, selector: "app-service-contracts-modal-details-view", ngImport: i0, template: "<h1 mat-dialog-title>{{'sapAdminInstalledInstrument.serviceContract' | translate}}</h1>\r\n<div mat-dialog-content>\r\n <app-service-contract-details-view\r\n [contract]=\"data.contract\"\r\n ></app-service-contract-details-view>\r\n</div>\r\n<div class=\"row justify-content-end\" mat-dialog-actions>\r\n <button mat-button type=\"button\" (click)=\"close()\">{{'global.close' | translate}}</button>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1$1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1$1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: ServiceContractDetailsViewComponent, selector: "app-service-contract-details-view", inputs: ["contract"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }] });
|
|
577
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractsModalDetailsViewComponent, decorators: [{
|
|
578
|
+
type: Component,
|
|
579
|
+
args: [{ selector: 'app-service-contracts-modal-details-view', template: "<h1 mat-dialog-title>{{'sapAdminInstalledInstrument.serviceContract' | translate}}</h1>\r\n<div mat-dialog-content>\r\n <app-service-contract-details-view\r\n [contract]=\"data.contract\"\r\n ></app-service-contract-details-view>\r\n</div>\r\n<div class=\"row justify-content-end\" mat-dialog-actions>\r\n <button mat-button type=\"button\" (click)=\"close()\">{{'global.close' | translate}}</button>\r\n</div>\r\n" }]
|
|
580
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
581
|
+
type: Inject,
|
|
582
|
+
args: [MAT_DIALOG_DATA]
|
|
583
|
+
}] }, { type: i1$1.MatDialogRef }]; } });
|
|
584
|
+
|
|
585
|
+
class CallDetailsViewComponent {
|
|
586
|
+
constructor(dialog, sapInstalledInstruments) {
|
|
587
|
+
this.dialog = dialog;
|
|
588
|
+
this.sapInstalledInstruments = sapInstalledInstruments;
|
|
589
|
+
this.activitiesLoading = true;
|
|
590
|
+
this.activities = [];
|
|
591
|
+
}
|
|
592
|
+
ngOnInit() {
|
|
593
|
+
if (this.call && this.contracts && this.call.contractNo) {
|
|
594
|
+
this.contractDetails = this.contracts.find((contract) => contract.contractId === this.call.contractNo);
|
|
595
|
+
}
|
|
596
|
+
this.loadActivities();
|
|
597
|
+
}
|
|
598
|
+
openContractModel() {
|
|
599
|
+
this.dialog.open(ServiceContractsModalDetailsViewComponent, {
|
|
600
|
+
data: { contract: this.contractDetails },
|
|
601
|
+
width: '50%',
|
|
602
|
+
});
|
|
603
|
+
}
|
|
604
|
+
tabChanged(event) {
|
|
605
|
+
}
|
|
606
|
+
loadActivities() {
|
|
607
|
+
this.activities$ = this.sapInstalledInstruments.getActivities(this.call.callId)
|
|
608
|
+
.pipe(tap(res => {
|
|
609
|
+
this.activities = res;
|
|
610
|
+
this.activitiesLoading = false;
|
|
611
|
+
}));
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
CallDetailsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CallDetailsViewComponent, deps: [{ token: i1$1.MatDialog }, { token: SapInstalledInstrumentsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
615
|
+
CallDetailsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CallDetailsViewComponent, selector: "app-call-details-view", inputs: { call: "call", contracts: "contracts" }, ngImport: i0, template: "<mat-tab-group (selectedTabChange)=\"tabChanged($event)\">\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.callDetails' | translate}}\">\r\n <div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.callId' | translate}}</span>\r\n <p>{{call.callId || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.contractNo' | translate}}</span>\r\n <div class=\"row\">\r\n <p>{{call.contractNo || '-'}}</p>\r\n <i class=\"material-icons-outlined show-contract\" *ngIf=\"contractDetails\" (click)=\"openContractModel()\">visibility</i>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.accountNo' | translate}}</span>\r\n <p>{{call.customer || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.accountName' | translate}}</span>\r\n <p>{{call.customerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.contactPerson' | translate}}</span>\r\n <p>{{call.contactPerson || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.phone' | translate}}</span>\r\n <p>{{call.telephoneNo || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.shipToCode' | translate}}</span>\r\n <p>{{call.shipToCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.shipToAddress' | translate}}</span>\r\n <p>{{call.shipToAddress || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.billToCode' | translate}}</span>\r\n <p>{{call.billToCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.billToAddress' | translate}}</span>\r\n <p>{{call.billToAddress || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.subject' | translate}}</span>\r\n <p>{{call.subject || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.callStatus' | translate}}</span>\r\n <p>{{call.callStatus || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.createdOn' | translate}}</span>\r\n <p>{{(call.createdOn | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.closedOn' | translate}}</span>\r\n <p>{{(call.closedOn | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.origin' | translate}}</span>\r\n <p>{{call.origin || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.problemType' | translate}}</span>\r\n <p>{{call.problemType || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.problemSubtype' | translate}}</span>\r\n <p>{{call.problemSubtype || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.callType' | translate}}</span>\r\n <p>{{call.callType || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.technician' | translate}}</span>\r\n <p>{{call.technicianFirstName ? call.technicianFirstName + ' ' + call.technicianLastName : '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.handledBy' | translate}}</span>\r\n <p>{{call.handledBy || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'global.remarks' | translate}}</span>\r\n <p>{{call.remarks || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.resolution' | translate}}</span>\r\n <p>{{call.resolution || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.startTime' | translate}}</span>\r\n <p>{{(call.startTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.endTime' | translate}}</span>\r\n <p>{{(call.endTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.duration' | translate}}</span>\r\n <p>{{call.duration || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.travelTime' | translate}}</span>\r\n <p>{{call.travelTime || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.internalComments' | translate}}</span>\r\n <p>{{call.internalComments || '-'}}</p>\r\n </div>\r\n </div>\r\n </mat-tab>\r\n\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.activities' | translate}} ({{activities.length || 0}})\">\r\n <ng-container *ngIf=\"activities$ | async\">\r\n <app-activities-list-view\r\n [activities]=\"activities\"\r\n ></app-activities-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n</mat-tab-group>\r\n\r\n\r\n\r\n\r\n", styles: [".show-contract{margin-left:5px;font-size:22px;opacity:.8;cursor:pointer;color:#1976d2}.show-contract:hover{opacity:1}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "component", type: i4.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: ActivitiesListViewComponent, selector: "app-activities-list-view", inputs: ["activities"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateTimeFormatPipe, name: "stDateTimeFormatPipe" }] });
|
|
616
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CallDetailsViewComponent, decorators: [{
|
|
617
|
+
type: Component,
|
|
618
|
+
args: [{ selector: 'app-call-details-view', template: "<mat-tab-group (selectedTabChange)=\"tabChanged($event)\">\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.callDetails' | translate}}\">\r\n <div class=\"group-details row\" style=\"margin-top: 20px;\">\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.callId' | translate}}</span>\r\n <p>{{call.callId || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-6\">\r\n <span>{{'sapAdminInstalledInstrument.contractNo' | translate}}</span>\r\n <div class=\"row\">\r\n <p>{{call.contractNo || '-'}}</p>\r\n <i class=\"material-icons-outlined show-contract\" *ngIf=\"contractDetails\" (click)=\"openContractModel()\">visibility</i>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.accountNo' | translate}}</span>\r\n <p>{{call.customer || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.accountName' | translate}}</span>\r\n <p>{{call.customerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.contactPerson' | translate}}</span>\r\n <p>{{call.contactPerson || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.phone' | translate}}</span>\r\n <p>{{call.telephoneNo || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.shipToCode' | translate}}</span>\r\n <p>{{call.shipToCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.shipToAddress' | translate}}</span>\r\n <p>{{call.shipToAddress || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.billToCode' | translate}}</span>\r\n <p>{{call.billToCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.billToAddress' | translate}}</span>\r\n <p>{{call.billToAddress || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.subject' | translate}}</span>\r\n <p>{{call.subject || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.callStatus' | translate}}</span>\r\n <p>{{call.callStatus || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.createdOn' | translate}}</span>\r\n <p>{{(call.createdOn | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.closedOn' | translate}}</span>\r\n <p>{{(call.closedOn | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.origin' | translate}}</span>\r\n <p>{{call.origin || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.problemType' | translate}}</span>\r\n <p>{{call.problemType || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.problemSubtype' | translate}}</span>\r\n <p>{{call.problemSubtype || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.callType' | translate}}</span>\r\n <p>{{call.callType || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.technician' | translate}}</span>\r\n <p>{{call.technicianFirstName ? call.technicianFirstName + ' ' + call.technicianLastName : '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.handledBy' | translate}}</span>\r\n <p>{{call.handledBy || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'global.remarks' | translate}}</span>\r\n <p>{{call.remarks || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.resolution' | translate}}</span>\r\n <p>{{call.resolution || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.startTime' | translate}}</span>\r\n <p>{{(call.startTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.endTime' | translate}}</span>\r\n <p>{{(call.endTime | stDateTimeFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.duration' | translate}}</span>\r\n <p>{{call.duration || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.travelTime' | translate}}</span>\r\n <p>{{call.travelTime || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-12\">\r\n <span>{{'sapAdminInstalledInstrument.internalComments' | translate}}</span>\r\n <p>{{call.internalComments || '-'}}</p>\r\n </div>\r\n </div>\r\n </mat-tab>\r\n\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.activities' | translate}} ({{activities.length || 0}})\">\r\n <ng-container *ngIf=\"activities$ | async\">\r\n <app-activities-list-view\r\n [activities]=\"activities\"\r\n ></app-activities-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n</mat-tab-group>\r\n\r\n\r\n\r\n\r\n", styles: [".show-contract{margin-left:5px;font-size:22px;opacity:.8;cursor:pointer;color:#1976d2}.show-contract:hover{opacity:1}\n"] }]
|
|
619
|
+
}], ctorParameters: function () { return [{ type: i1$1.MatDialog }, { type: SapInstalledInstrumentsService }]; }, propDecorators: { call: [{
|
|
620
|
+
type: Input
|
|
621
|
+
}], contracts: [{
|
|
622
|
+
type: Input
|
|
623
|
+
}] } });
|
|
624
|
+
|
|
625
|
+
class CallsListViewComponent {
|
|
626
|
+
constructor() {
|
|
627
|
+
this.class = 'display-flex-component';
|
|
628
|
+
this.columnsToDisplay = ['callId', 'callStatus', 'callType', 'problemType', 'customer', 'customerName', 'handledBy', 'createdOn', 'closedOn'];
|
|
629
|
+
}
|
|
630
|
+
ngOnInit() {
|
|
631
|
+
this.setTable();
|
|
632
|
+
}
|
|
633
|
+
ngAfterViewInit() {
|
|
634
|
+
this.paginator.pageSize = 10;
|
|
635
|
+
this.tableSource.paginator = this.paginator;
|
|
636
|
+
}
|
|
637
|
+
setTable() {
|
|
638
|
+
this.tableSource = new MatTableDataSource(this.calls);
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
CallsListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CallsListViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
642
|
+
CallsListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CallsListViewComponent, selector: "app-calls-list-view", inputs: { calls: "calls", contracts: "contracts" }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"calls-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"callId\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'global.callId' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callId }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"callStatus\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'global.status' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callStatus }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"callType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.callType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"problemType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.problemType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.problemType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customer\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.accountNo' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customer }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customerName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.accountName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customerName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"handledBy\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.handledBy' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.handledBy }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"createdOn\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.createdOn' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.createdOn | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"closedOn\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.closedOn' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.closedOn | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-call-details-view\r\n *ngIf=\"element == expandedElement\"\r\n [call]=\"element\"\r\n [contracts]=\"contracts\"\r\n ></app-call-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n showFirstLastButtons\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.calls-list-view{width:100%}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#c8e6c9;border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9;border-bottom:3px solid #c8e6c9}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: CallDetailsViewComponent, selector: "app-call-details-view", inputs: ["call", "contracts"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateTimeFormatPipe, name: "stDateTimeFormatPipe" }], animations: [
|
|
643
|
+
trigger('detailExpand', [
|
|
644
|
+
state('collapsed', style({ height: '0px', minHeight: '0' })),
|
|
645
|
+
state('expanded', style({ height: '*' })),
|
|
646
|
+
transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
|
|
647
|
+
]),
|
|
648
|
+
], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
649
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CallsListViewComponent, decorators: [{
|
|
650
|
+
type: Component,
|
|
651
|
+
args: [{ selector: 'app-calls-list-view', animations: [
|
|
652
|
+
trigger('detailExpand', [
|
|
653
|
+
state('collapsed', style({ height: '0px', minHeight: '0' })),
|
|
654
|
+
state('expanded', style({ height: '*' })),
|
|
655
|
+
transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
|
|
656
|
+
]),
|
|
657
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"calls-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"callId\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'global.callId' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callId }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"callStatus\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'global.status' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callStatus }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"callType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.callType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.callType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"problemType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.problemType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.problemType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customer\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.accountNo' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customer }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customerName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.accountName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customerName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"handledBy\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.handledBy' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.handledBy }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"createdOn\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.createdOn' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.createdOn | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"closedOn\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.closedOn' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.closedOn | stDateTimeFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-call-details-view\r\n *ngIf=\"element == expandedElement\"\r\n [call]=\"element\"\r\n [contracts]=\"contracts\"\r\n ></app-call-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n showFirstLastButtons\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.calls-list-view{width:100%}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#c8e6c9;border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9;border-bottom:3px solid #c8e6c9}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"] }]
|
|
658
|
+
}], ctorParameters: function () { return []; }, propDecorators: { class: [{
|
|
659
|
+
type: HostBinding,
|
|
660
|
+
args: ['class']
|
|
661
|
+
}], paginator: [{
|
|
662
|
+
type: ViewChild,
|
|
663
|
+
args: [MatPaginator]
|
|
664
|
+
}], calls: [{
|
|
665
|
+
type: Input
|
|
666
|
+
}], contracts: [{
|
|
667
|
+
type: Input
|
|
668
|
+
}] } });
|
|
669
|
+
|
|
670
|
+
class DataDetailsViewComponent {
|
|
671
|
+
constructor() {
|
|
672
|
+
}
|
|
673
|
+
ngOnInit() {
|
|
674
|
+
}
|
|
675
|
+
}
|
|
676
|
+
DataDetailsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DataDetailsViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
677
|
+
DataDetailsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: DataDetailsViewComponent, selector: "app-data-details-view", inputs: { installedInstrument: "installedInstrument" }, ngImport: i0, template: "<ng-container *ngIf=\"installedInstrument\">\r\n <div class=\"group-details row\">\r\n<!-- <div class=\"col-xs-12 col-sm-4\">-->\r\n<!-- <span>{{'sapAdminInstalledInstrument.equipmentCardNo' | translate}}</span>-->\r\n<!-- <p>{{installedInstrument.equipmentCardNo || '-'}}</p>-->\r\n<!-- </div>-->\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.instrumentNo' | translate}}</span>\r\n <p>{{installedInstrument.instrumentNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.instrumentDescription' | translate}}</span>\r\n <p>{{installedInstrument.instrumentDescription || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.serialNumber' | translate}}</span>\r\n <p>{{installedInstrument.serialNumber || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customerNo' | translate}}</span>\r\n <p>{{installedInstrument.customerNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.businessPartnerName' | translate}}</span>\r\n <p>{{installedInstrument.businessPartnerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.contactPerson' | translate}}</span>\r\n <p>{{installedInstrument.contactPerson || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.status' | translate}}</span>\r\n <p>{{installedInstrument.status || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.technicianName' | translate}}</span>\r\n <p>{{installedInstrument.technicianFirstName ? installedInstrument.technicianFirstName + ' ' + installedInstrument.technicianLastName : '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.territory' | translate}}</span>\r\n <p>{{installedInstrument.territory || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.installationDate' | translate}}</span>\r\n <p>{{(installedInstrument.installationDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endUserName' | translate}}</span>\r\n <p>{{installedInstrument.endUserName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endUserCode' | translate}}</span>\r\n <p>{{installedInstrument.endUserCode || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.addressName' | translate}}</span>\r\n <p>{{installedInstrument.addressName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.street' | translate}}</span>\r\n <p>{{installedInstrument.street || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.streetNo' | translate}}</span>\r\n <p>{{installedInstrument.streetNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.block' | translate}}</span>\r\n <p>{{installedInstrument.block || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.building' | translate}}</span>\r\n <p>{{installedInstrument.building || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.city' | translate}}</span>\r\n <p>{{installedInstrument.city || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.county' | translate}}</span>\r\n <p>{{installedInstrument.county || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.state' | translate}}</span>\r\n <p>{{installedInstrument.state || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.zipCode' | translate}}</span>\r\n <p>{{installedInstrument.zipCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.country' | translate}}</span>\r\n <p>{{installedInstrument.country || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.softwareVersion' | translate}}</span>\r\n <p>{{installedInstrument.softwareVersion || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.pcSoftwareVersion' | translate}}</span>\r\n <p>{{installedInstrument.pcSoftwareVersion || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.vessels' | translate}}</span>\r\n <p>{{installedInstrument.vessels || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem1' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem2' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem3' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem3 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit1' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit2' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit3' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit3 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit4' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit4 || '-'}}</p>\r\n </div>\r\n </div>\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit5' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit5 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit6' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit6 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit7' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit7 || '-'}}</p>\r\n </div>\r\n </div>\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit8' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit8 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit9' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit9 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit10' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit10 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.numberOfAnalysis' | translate}}</span>\r\n <p>{{installedInstrument.numberOfAnalysis || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application1' | translate}}</span>\r\n <p>{{installedInstrument.application1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application2' | translate}}</span>\r\n <p>{{installedInstrument.application2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application3' | translate}}</span>\r\n <p>{{installedInstrument.application3 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application4' | translate}}</span>\r\n <p>{{installedInstrument.application4 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application5' | translate}}</span>\r\n <p>{{installedInstrument.application5 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application6' | translate}}</span>\r\n <p>{{installedInstrument.application6 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application7' | translate}}</span>\r\n <p>{{installedInstrument.application7 || '-'}}</p>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateFormatPipe, name: "stDateFormatPipe" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
678
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DataDetailsViewComponent, decorators: [{
|
|
679
|
+
type: Component,
|
|
680
|
+
args: [{ selector: 'app-data-details-view', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"installedInstrument\">\r\n <div class=\"group-details row\">\r\n<!-- <div class=\"col-xs-12 col-sm-4\">-->\r\n<!-- <span>{{'sapAdminInstalledInstrument.equipmentCardNo' | translate}}</span>-->\r\n<!-- <p>{{installedInstrument.equipmentCardNo || '-'}}</p>-->\r\n<!-- </div>-->\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.instrumentNo' | translate}}</span>\r\n <p>{{installedInstrument.instrumentNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.instrumentDescription' | translate}}</span>\r\n <p>{{installedInstrument.instrumentDescription || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.serialNumber' | translate}}</span>\r\n <p>{{installedInstrument.serialNumber || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.customerNo' | translate}}</span>\r\n <p>{{installedInstrument.customerNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.businessPartnerName' | translate}}</span>\r\n <p>{{installedInstrument.businessPartnerName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.contactPerson' | translate}}</span>\r\n <p>{{installedInstrument.contactPerson || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.status' | translate}}</span>\r\n <p>{{installedInstrument.status || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.technicianName' | translate}}</span>\r\n <p>{{installedInstrument.technicianFirstName ? installedInstrument.technicianFirstName + ' ' + installedInstrument.technicianLastName : '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.territory' | translate}}</span>\r\n <p>{{installedInstrument.territory || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.installationDate' | translate}}</span>\r\n <p>{{(installedInstrument.installationDate | stDateFormatPipe) || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endUserName' | translate}}</span>\r\n <p>{{installedInstrument.endUserName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.endUserCode' | translate}}</span>\r\n <p>{{installedInstrument.endUserCode || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.addressName' | translate}}</span>\r\n <p>{{installedInstrument.addressName || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.street' | translate}}</span>\r\n <p>{{installedInstrument.street || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.streetNo' | translate}}</span>\r\n <p>{{installedInstrument.streetNo || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'global.block' | translate}}</span>\r\n <p>{{installedInstrument.block || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.building' | translate}}</span>\r\n <p>{{installedInstrument.building || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.city' | translate}}</span>\r\n <p>{{installedInstrument.city || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.county' | translate}}</span>\r\n <p>{{installedInstrument.county || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.state' | translate}}</span>\r\n <p>{{installedInstrument.state || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.zipCode' | translate}}</span>\r\n <p>{{installedInstrument.zipCode || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'global.country' | translate}}</span>\r\n <p>{{installedInstrument.country || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.softwareVersion' | translate}}</span>\r\n <p>{{installedInstrument.softwareVersion || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.pcSoftwareVersion' | translate}}</span>\r\n <p>{{installedInstrument.pcSoftwareVersion || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.vessels' | translate}}</span>\r\n <p>{{installedInstrument.vessels || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem1' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem2' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.relatedItem3' | translate}}</span>\r\n <p>{{installedInstrument.relatedItem3 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit1' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit2' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit3' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit3 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit4' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit4 || '-'}}</p>\r\n </div>\r\n </div>\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit5' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit5 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit6' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit6 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit7' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit7 || '-'}}</p>\r\n </div>\r\n </div>\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit8' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit8 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit9' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit9 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-4\">\r\n <span>{{'sapAdminInstalledInstrument.majorUpgradeKit10' | translate}}</span>\r\n <p>{{installedInstrument.majorUpgradeKit10 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <hr/>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.numberOfAnalysis' | translate}}</span>\r\n <p>{{installedInstrument.numberOfAnalysis || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application1' | translate}}</span>\r\n <p>{{installedInstrument.application1 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application2' | translate}}</span>\r\n <p>{{installedInstrument.application2 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application3' | translate}}</span>\r\n <p>{{installedInstrument.application3 || '-'}}</p>\r\n </div>\r\n </div>\r\n\r\n <div class=\"group-details row\">\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application4' | translate}}</span>\r\n <p>{{installedInstrument.application4 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application5' | translate}}</span>\r\n <p>{{installedInstrument.application5 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application6' | translate}}</span>\r\n <p>{{installedInstrument.application6 || '-'}}</p>\r\n </div>\r\n <div class=\"col-xs-12 col-sm-3\">\r\n <span>{{'sapAdminInstalledInstrument.application7' | translate}}</span>\r\n <p>{{installedInstrument.application7 || '-'}}</p>\r\n </div>\r\n </div>\r\n</ng-container>\r\n" }]
|
|
681
|
+
}], ctorParameters: function () { return []; }, propDecorators: { installedInstrument: [{
|
|
682
|
+
type: Input
|
|
683
|
+
}] } });
|
|
684
|
+
|
|
685
|
+
class ServiceContractsListViewComponent {
|
|
686
|
+
constructor() {
|
|
687
|
+
this.class = 'display-flex-component';
|
|
688
|
+
this.columnsToDisplay = ['contractId', 'customer', 'customerName', 'itemCode', 'itemName', 'serialNumber', 'serviceType', 'startDate', 'terminationDate'];
|
|
689
|
+
}
|
|
690
|
+
ngOnInit() {
|
|
691
|
+
this.setTable();
|
|
692
|
+
}
|
|
693
|
+
ngAfterViewInit() {
|
|
694
|
+
this.paginator.pageSize = 10;
|
|
695
|
+
this.tableSource.paginator = this.paginator;
|
|
696
|
+
}
|
|
697
|
+
setTable() {
|
|
698
|
+
this.tableSource = new MatTableDataSource(this.contracts);
|
|
699
|
+
}
|
|
700
|
+
}
|
|
701
|
+
ServiceContractsListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractsListViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
702
|
+
ServiceContractsListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ServiceContractsListViewComponent, selector: "app-service-contracts-list-view", inputs: { contracts: "contracts" }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }], ngImport: i0, template: "<div class=\"service-contracts-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"contractId\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.contractId' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.contractId }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customer\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.customer' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customer }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customerName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.customerName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customerName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"itemCode\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.itemCode' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.itemCode }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"itemName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.itemName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.itemName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"serialNumber\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.serialNumber' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.serialNumber }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"serviceType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.serviceType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.serviceType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"startDate\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.startDate' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.startDate | stDateFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"terminationDate\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.endDate' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.endDateDetail | stDateFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-service-contract-details-view\r\n [contract]=\"element\"\r\n ></app-service-contract-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n showFirstLastButtons\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.service-contracts-list-view{width:100%}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#c8e6c9;border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9;border-bottom:3px solid #c8e6c9}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"], dependencies: [{ kind: "component", type: i2$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: ServiceContractDetailsViewComponent, selector: "app-service-contract-details-view", inputs: ["contract"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.DateFormatPipe, name: "stDateFormatPipe" }], animations: [
|
|
703
|
+
trigger('detailExpand', [
|
|
704
|
+
state('collapsed', style({ height: '0px', minHeight: '0' })),
|
|
705
|
+
state('expanded', style({ height: '*' })),
|
|
706
|
+
transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
|
|
707
|
+
]),
|
|
708
|
+
], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
709
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ServiceContractsListViewComponent, decorators: [{
|
|
710
|
+
type: Component,
|
|
711
|
+
args: [{ selector: 'app-service-contracts-list-view', animations: [
|
|
712
|
+
trigger('detailExpand', [
|
|
713
|
+
state('collapsed', style({ height: '0px', minHeight: '0' })),
|
|
714
|
+
state('expanded', style({ height: '*' })),
|
|
715
|
+
transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
|
|
716
|
+
]),
|
|
717
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"service-contracts-list-view\">\r\n <table mat-table [dataSource]=\"tableSource\" [multiTemplateDataRows]=\"true\">\r\n <ng-container matColumnDef=\"contractId\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.contractId' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.contractId }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customer\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.customer' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customer }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"customerName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.customerName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.customerName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"itemCode\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.itemCode' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.itemCode }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"itemName\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.itemName' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.itemName }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"serialNumber\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.serialNumber' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.serialNumber }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"serviceType\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.serviceType' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">{{ element.serviceType }}</td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"startDate\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.startDate' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.startDate | stDateFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"terminationDate\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n {{ 'sapAdminInstalledInstrument.endDate' | translate }}\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{ element.endDateDetail | stDateFormatPipe }}\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"expandedDetail\">\r\n <td\r\n mat-cell\r\n *matCellDef=\"let element\"\r\n [attr.colspan]=\"columnsToDisplay.length\"\r\n >\r\n <div\r\n class=\"row-detail\"\r\n [@detailExpand]=\"\r\n element == expandedElement ? 'expanded' : 'collapsed'\r\n \"\r\n >\r\n <app-service-contract-details-view\r\n [contract]=\"element\"\r\n ></app-service-contract-details-view>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let element; columns: columnsToDisplay\"\r\n class=\"details-element-row\"\r\n [class.details-expanded-row]=\"expandedElement === element\"\r\n (click)=\"expandedElement = expandedElement === element ? null : element\"\r\n ></tr>\r\n <tr\r\n mat-row\r\n *matRowDef=\"let row; columns: ['expandedDetail']\"\r\n class=\"detail-row\"\r\n ></tr>\r\n </table>\r\n <mat-paginator\r\n [pageSizeOptions]=\"[10, 20]\"\r\n showFirstLastButtons\r\n ></mat-paginator>\r\n</div>\r\n", styles: [".search-form button{height:40px}.search-form mat-form-field:first-child{padding-left:0}.search-form mat-form-field:last-child{padding-right:0}.search-form .clear{padding:0}.search-form .clear i{height:20px;width:20px;font-size:20px;cursor:pointer}table{width:100%}table::ng-deep thead tr{background-color:#fff9c4}table::ng-deep thead tr th{border-color:#fdd835}table::ng-deep tbody>tr{cursor:pointer}table::ng-deep tbody>tr.active{background-color:#a5d6a7}table::ng-deep tbody>tr:hover{background-color:#a5d6a7}table::ng-deep tbody>tr.disabled{cursor:not-allowed}table::ng-deep tbody>tr.disabled:hover{background-color:inherit}table::ng-deep tbody>tr.detail-row{height:0;cursor:default}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent}table::ng-deep tbody>tr.detail-row .element-detail{overflow:hidden;display:flex}table::ng-deep tbody>tr.detail-row .element-detail p{padding:20px 0;margin-bottom:0;white-space:pre-wrap}table::ng-deep tbody>tr td i.active-row{color:#1b5e20;font-weight:700;font-size:25px;height:25px;width:25px;margin-top:2px}table::ng-deep tbody>tr td>div{max-height:200px;overflow:hidden;overflow-y:auto}table::ng-deep tbody>tr td a button{color:#000}table::ng-deep tbody>tr td a i{color:#333}table::ng-deep .mat-column-active{width:48px}table.no-hover::ng-deep tbody tr{cursor:default}table.no-hover::ng-deep tbody tr.active{background-color:transparent}table.no-hover::ng-deep tbody tr:hover{background-color:transparent}table.admin-table::ng-deep .actions-cell{width:100px}.service-contracts-list-view{width:100%}table::ng-deep tbody>tr:not(.details-expanded-row):hover{background-color:#f5f5f5!important}table::ng-deep tbody>tr.detail-row:hover{background-color:transparent!important;cursor:default}table::ng-deep tbody>tr.detail-row{height:0}table::ng-deep tbody>tr.detail-row .row-detail{overflow:hidden;max-height:inherit}table::ng-deep tbody>tr.detail-row .row-detail ul{margin:10px 0}table::ng-deep tbody>tr.details-element-row:not(.details-expanded-row):hover{background:whitesmoke}table::ng-deep tbody>tr.details-element-row td{border-bottom-width:0}table::ng-deep tbody>tr.details-expanded-row{background-color:#c8e6c9;border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9}table::ng-deep tbody>tr.details-expanded-row+tr{border-left:3px solid #c8e6c9;border-right:3px solid #c8e6c9;border-bottom:3px solid #c8e6c9}table::ng-deep tbody>tr .mat-column-expanded{width:50px}\n"] }]
|
|
718
|
+
}], ctorParameters: function () { return []; }, propDecorators: { class: [{
|
|
719
|
+
type: HostBinding,
|
|
720
|
+
args: ['class']
|
|
721
|
+
}], paginator: [{
|
|
722
|
+
type: ViewChild,
|
|
723
|
+
args: [MatPaginator]
|
|
724
|
+
}], contracts: [{
|
|
725
|
+
type: Input
|
|
726
|
+
}] } });
|
|
727
|
+
|
|
728
|
+
class SapInstalledInstrumentDetailsComponent {
|
|
729
|
+
constructor(sapInstalledInstrumentService, activatedRoute, location) {
|
|
730
|
+
this.sapInstalledInstrumentService = sapInstalledInstrumentService;
|
|
731
|
+
this.activatedRoute = activatedRoute;
|
|
732
|
+
this.location = location;
|
|
733
|
+
this.class = 'display-flex-component';
|
|
734
|
+
this.tabActive = 0;
|
|
735
|
+
this.calls = [];
|
|
736
|
+
this.serviceContracts = [];
|
|
737
|
+
}
|
|
738
|
+
ngOnInit() {
|
|
739
|
+
this.id = this.activatedRoute.snapshot.params['id'];
|
|
740
|
+
this.loadTabsData();
|
|
741
|
+
}
|
|
742
|
+
tabChanged(event) {
|
|
743
|
+
this.tabActive = event.index;
|
|
744
|
+
}
|
|
745
|
+
goBack() {
|
|
746
|
+
this.location.back();
|
|
747
|
+
}
|
|
748
|
+
loadTabsData() {
|
|
749
|
+
this.installedInstrument$ = this.sapInstalledInstrumentService
|
|
750
|
+
.getInstalledInstrument(this.id)
|
|
751
|
+
.pipe(tap(installedInstrument => {
|
|
752
|
+
this.installedInstrument = installedInstrument;
|
|
753
|
+
}));
|
|
754
|
+
this.calls$ = this.sapInstalledInstrumentService
|
|
755
|
+
.getCalls(this.id)
|
|
756
|
+
.pipe(tap(res => (this.calls = res)));
|
|
757
|
+
this.serviceContracts$ = this.sapInstalledInstrumentService
|
|
758
|
+
.getContracts(this.id)
|
|
759
|
+
.pipe(tap(res => (this.serviceContracts = res)));
|
|
760
|
+
}
|
|
761
|
+
}
|
|
762
|
+
SapInstalledInstrumentDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentDetailsComponent, deps: [{ token: SapInstalledInstrumentsService }, { token: i2.ActivatedRoute }, { token: i3.Location }], target: i0.ɵɵFactoryTarget.Component });
|
|
763
|
+
SapInstalledInstrumentDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SapInstalledInstrumentDetailsComponent, selector: "app-sap-installed-instrument-details", host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<div class=\"container-fluid no-cut\">\r\n <div class=\"card\">\r\n <div class=\"card-header card-header-warning\">\r\n <h3 class=\"card-title\">{{'sapAdminInstalledInstrument.titleInstalledInstrumentDetails' | translate}}</h3>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <button mat-icon-button class=\"back-link\" (click)=\"goBack()\">\r\n <span class=\"material-icons\">keyboard_backspace</span>\r\n </button>\r\n\r\n <mat-tab-group (selectedTabChange)=\"tabChanged($event)\">\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.instrumentDetails' | translate}}\">\r\n <ng-container *ngIf=\"installedInstrument$ | async\">\r\n <app-data-details-view\r\n *ngIf=\"tabActive === 0\"\r\n [installedInstrument]=\"installedInstrument\"\r\n ></app-data-details-view>\r\n </ng-container>\r\n </mat-tab>\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.calls' | translate}} ({{calls.length || 0}})\">\r\n <ng-container *ngIf=\"calls$ | async\">\r\n <app-calls-list-view\r\n *ngIf=\"tabActive === 1\"\r\n [calls]=\"calls\"\r\n [contracts]=\"serviceContracts\"\r\n ></app-calls-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.serviceContracts' | translate}} ({{serviceContracts.length || 0}})\">\r\n <ng-container *ngIf=\"serviceContracts$ | async\">\r\n <app-service-contracts-list-view\r\n *ngIf=\"tabActive === 2\"\r\n [contracts]=\"serviceContracts\"\r\n ></app-service-contracts-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n </mat-tab-group>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["mat-tab-group::ng-deep mat-tab-body{padding:10px 0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "component", type: i4.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: DataDetailsViewComponent, selector: "app-data-details-view", inputs: ["installedInstrument"] }, { kind: "component", type: CallsListViewComponent, selector: "app-calls-list-view", inputs: ["calls", "contracts"] }, { kind: "component", type: ServiceContractsListViewComponent, selector: "app-service-contracts-list-view", inputs: ["contracts"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }] });
|
|
764
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SapInstalledInstrumentDetailsComponent, decorators: [{
|
|
765
|
+
type: Component,
|
|
766
|
+
args: [{ selector: 'app-sap-installed-instrument-details', template: "<div class=\"container-fluid no-cut\">\r\n <div class=\"card\">\r\n <div class=\"card-header card-header-warning\">\r\n <h3 class=\"card-title\">{{'sapAdminInstalledInstrument.titleInstalledInstrumentDetails' | translate}}</h3>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <button mat-icon-button class=\"back-link\" (click)=\"goBack()\">\r\n <span class=\"material-icons\">keyboard_backspace</span>\r\n </button>\r\n\r\n <mat-tab-group (selectedTabChange)=\"tabChanged($event)\">\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.instrumentDetails' | translate}}\">\r\n <ng-container *ngIf=\"installedInstrument$ | async\">\r\n <app-data-details-view\r\n *ngIf=\"tabActive === 0\"\r\n [installedInstrument]=\"installedInstrument\"\r\n ></app-data-details-view>\r\n </ng-container>\r\n </mat-tab>\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.calls' | translate}} ({{calls.length || 0}})\">\r\n <ng-container *ngIf=\"calls$ | async\">\r\n <app-calls-list-view\r\n *ngIf=\"tabActive === 1\"\r\n [calls]=\"calls\"\r\n [contracts]=\"serviceContracts\"\r\n ></app-calls-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n <mat-tab label=\"{{'sapAdminInstalledInstrument.serviceContracts' | translate}} ({{serviceContracts.length || 0}})\">\r\n <ng-container *ngIf=\"serviceContracts$ | async\">\r\n <app-service-contracts-list-view\r\n *ngIf=\"tabActive === 2\"\r\n [contracts]=\"serviceContracts\"\r\n ></app-service-contracts-list-view>\r\n </ng-container>\r\n </mat-tab>\r\n </mat-tab-group>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["mat-tab-group::ng-deep mat-tab-body{padding:10px 0}\n"] }]
|
|
767
|
+
}], ctorParameters: function () { return [{ type: SapInstalledInstrumentsService }, { type: i2.ActivatedRoute }, { type: i3.Location }]; }, propDecorators: { class: [{
|
|
768
|
+
type: HostBinding,
|
|
769
|
+
args: ['class']
|
|
770
|
+
}] } });
|
|
771
|
+
|
|
772
|
+
const StSapInstalledInstrumentsRoutingModule = [
|
|
773
|
+
{ path: '', component: SapInstalledInstrumentListComponent },
|
|
774
|
+
{ path: 'details/:id', component: SapInstalledInstrumentDetailsComponent }
|
|
775
|
+
];
|
|
776
|
+
|
|
777
|
+
class StSapInstalledInstrumentsModule {
|
|
778
|
+
static forRoot(config = {}) {
|
|
779
|
+
return {
|
|
780
|
+
ngModule: StSapInstalledInstrumentsModule,
|
|
781
|
+
providers: [
|
|
782
|
+
{
|
|
783
|
+
provide: HTTP_INTERCEPTORS,
|
|
784
|
+
useClass: config.errorInterceptor,
|
|
785
|
+
multi: true,
|
|
786
|
+
},
|
|
787
|
+
{
|
|
788
|
+
provide: HTTP_INTERCEPTORS,
|
|
789
|
+
useClass: config.apiInterceptor,
|
|
790
|
+
multi: true,
|
|
791
|
+
},
|
|
792
|
+
],
|
|
793
|
+
};
|
|
794
|
+
}
|
|
795
|
+
}
|
|
796
|
+
StSapInstalledInstrumentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: StSapInstalledInstrumentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
797
|
+
StSapInstalledInstrumentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: StSapInstalledInstrumentsModule, declarations: [SapInstalledInstrumentListComponent,
|
|
798
|
+
SapInstalledInstrumentDetailsComponent,
|
|
799
|
+
DataDetailsViewComponent,
|
|
800
|
+
CallsListViewComponent,
|
|
801
|
+
ServiceContractsListViewComponent,
|
|
802
|
+
ServiceContractDetailsViewComponent,
|
|
803
|
+
CallDetailsViewComponent,
|
|
804
|
+
ServiceContractsModalDetailsViewComponent,
|
|
805
|
+
ActivitiesListViewComponent,
|
|
806
|
+
ActivityDetailsViewComponent,
|
|
807
|
+
SapInstalledInstrumentListSearchComponent,
|
|
808
|
+
SapInstalledInstrumentListTableComponent], imports: [CommonModule, i2.RouterModule, MatButtonModule,
|
|
809
|
+
MatRippleModule,
|
|
810
|
+
MatFormFieldModule,
|
|
811
|
+
MatInputModule,
|
|
812
|
+
MatSelectModule,
|
|
813
|
+
MatTooltipModule,
|
|
814
|
+
MatMenuModule,
|
|
815
|
+
MatIconModule,
|
|
816
|
+
MatChipsModule,
|
|
817
|
+
MatTableModule,
|
|
818
|
+
MatPaginatorModule,
|
|
819
|
+
MatListModule,
|
|
820
|
+
MatDatepickerModule,
|
|
821
|
+
MatNativeDateModule,
|
|
822
|
+
MatDialogModule,
|
|
823
|
+
MatTabsModule,
|
|
824
|
+
MatSnackBarModule,
|
|
825
|
+
MatCheckboxModule,
|
|
826
|
+
MatAutocompleteModule,
|
|
827
|
+
MatAutocompleteModule,
|
|
828
|
+
MatSortModule, i5$1.TranslateModule, StDateFormatModule,
|
|
829
|
+
ReactiveFormsModule,
|
|
830
|
+
NgxStMultiselectAutocompleteModule,
|
|
831
|
+
StSearchSelectsModule] });
|
|
832
|
+
StSapInstalledInstrumentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: StSapInstalledInstrumentsModule, providers: [SapInstalledInstrumentsService], imports: [CommonModule,
|
|
833
|
+
RouterModule.forChild(StSapInstalledInstrumentsRoutingModule),
|
|
834
|
+
MatButtonModule,
|
|
835
|
+
MatRippleModule,
|
|
836
|
+
MatFormFieldModule,
|
|
837
|
+
MatInputModule,
|
|
838
|
+
MatSelectModule,
|
|
839
|
+
MatTooltipModule,
|
|
840
|
+
MatMenuModule,
|
|
841
|
+
MatIconModule,
|
|
842
|
+
MatChipsModule,
|
|
843
|
+
MatTableModule,
|
|
844
|
+
MatPaginatorModule,
|
|
845
|
+
MatListModule,
|
|
846
|
+
MatDatepickerModule,
|
|
847
|
+
MatNativeDateModule,
|
|
848
|
+
MatDialogModule,
|
|
849
|
+
MatTabsModule,
|
|
850
|
+
MatSnackBarModule,
|
|
851
|
+
MatCheckboxModule,
|
|
852
|
+
MatAutocompleteModule,
|
|
853
|
+
MatAutocompleteModule,
|
|
854
|
+
MatSortModule,
|
|
855
|
+
TranslateModule.forChild(),
|
|
856
|
+
StDateFormatModule,
|
|
857
|
+
ReactiveFormsModule,
|
|
858
|
+
NgxStMultiselectAutocompleteModule,
|
|
859
|
+
StSearchSelectsModule] });
|
|
860
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: StSapInstalledInstrumentsModule, decorators: [{
|
|
861
|
+
type: NgModule,
|
|
862
|
+
args: [{
|
|
863
|
+
declarations: [
|
|
864
|
+
SapInstalledInstrumentListComponent,
|
|
865
|
+
SapInstalledInstrumentDetailsComponent,
|
|
866
|
+
DataDetailsViewComponent,
|
|
867
|
+
CallsListViewComponent,
|
|
868
|
+
ServiceContractsListViewComponent,
|
|
869
|
+
ServiceContractDetailsViewComponent,
|
|
870
|
+
CallDetailsViewComponent,
|
|
871
|
+
ServiceContractsModalDetailsViewComponent,
|
|
872
|
+
ActivitiesListViewComponent,
|
|
873
|
+
ActivityDetailsViewComponent,
|
|
874
|
+
SapInstalledInstrumentListSearchComponent,
|
|
875
|
+
SapInstalledInstrumentListTableComponent,
|
|
876
|
+
],
|
|
877
|
+
imports: [
|
|
878
|
+
CommonModule,
|
|
879
|
+
RouterModule.forChild(StSapInstalledInstrumentsRoutingModule),
|
|
880
|
+
MatButtonModule,
|
|
881
|
+
MatRippleModule,
|
|
882
|
+
MatFormFieldModule,
|
|
883
|
+
MatInputModule,
|
|
884
|
+
MatSelectModule,
|
|
885
|
+
MatTooltipModule,
|
|
886
|
+
MatMenuModule,
|
|
887
|
+
MatIconModule,
|
|
888
|
+
MatChipsModule,
|
|
889
|
+
MatTableModule,
|
|
890
|
+
MatPaginatorModule,
|
|
891
|
+
MatListModule,
|
|
892
|
+
MatDatepickerModule,
|
|
893
|
+
MatNativeDateModule,
|
|
894
|
+
MatDialogModule,
|
|
895
|
+
MatTabsModule,
|
|
896
|
+
MatSnackBarModule,
|
|
897
|
+
MatCheckboxModule,
|
|
898
|
+
MatAutocompleteModule,
|
|
899
|
+
MatAutocompleteModule,
|
|
900
|
+
MatSortModule,
|
|
901
|
+
TranslateModule.forChild(),
|
|
902
|
+
StDateFormatModule,
|
|
903
|
+
ReactiveFormsModule,
|
|
904
|
+
NgxStMultiselectAutocompleteModule,
|
|
905
|
+
StSearchSelectsModule,
|
|
906
|
+
],
|
|
907
|
+
providers: [SapInstalledInstrumentsService],
|
|
908
|
+
exports: [],
|
|
909
|
+
}]
|
|
910
|
+
}] });
|
|
911
|
+
|
|
912
|
+
/*
|
|
913
|
+
* Public API Surface of ngx-st-sap-installed-instruments
|
|
914
|
+
*/
|
|
915
|
+
|
|
916
|
+
/**
|
|
917
|
+
* Generated bundle index. Do not edit.
|
|
918
|
+
*/
|
|
919
|
+
|
|
920
|
+
export { ActivitiesListViewComponent, ActivityDetailsViewComponent, CallDetailsViewComponent, CallsListViewComponent, DataDetailsViewComponent, InstalledInstrumentSortByColumnEnum, InstalledInstrumentSortOrderEnum, SapInstalledInstrumentDetailsComponent, SapInstalledInstrumentListComponent, SapInstalledInstrumentListSearchComponent, SapInstalledInstrumentListTableComponent, SapInstalledInstrumentsService, ServiceContractDetailsViewComponent, ServiceContractsListViewComponent, ServiceContractsModalDetailsViewComponent, StSapInstalledInstrumentsModule };
|
|
921
|
+
//# sourceMappingURL=ngx-st-sap-installed-instruments.mjs.map
|