From 13d8a7da04ae36fde40fb84b0abef11d9b6e28fe Mon Sep 17 00:00:00 2001 From: Dan Percic Date: Sun, 11 Jul 2021 21:28:56 +0300 Subject: [PATCH] fix error handler, change listing details filters --- .../dossier-listing-details.component.html | 8 ++--- .../dossier-listing-details.component.ts | 16 +++------- .../dossier-listing-screen.component.html | 8 ++--- .../dossier-listing-screen.component.ts | 29 +++++-------------- .../components/sort-pipe/sort-by.pipe.ts | 3 +- .../shared/services/screen-state.service.ts | 2 -- 6 files changed, 20 insertions(+), 46 deletions(-) diff --git a/apps/red-ui/src/app/modules/dossier/components/dossier-listing-details/dossier-listing-details.component.html b/apps/red-ui/src/app/modules/dossier/components/dossier-listing-details/dossier-listing-details.component.html index 3a56278b7..1487103d7 100644 --- a/apps/red-ui/src/app/modules/dossier/components/dossier-listing-details/dossier-listing-details.component.html +++ b/apps/red-ui/src/app/modules/dossier/components/dossier-listing-details/dossier-listing-details.component.html @@ -10,7 +10,7 @@
-
{{ totalPages | number }}
+
{{ appStateService.totalAnalysedPages | number }}
@@ -18,7 +18,7 @@
-
{{ totalPeople }}
+
{{ appStateService.totalPeople }}
@@ -26,9 +26,9 @@
f.key === key); + toggleFilter(key: string): void { + const filter = this.filters.find(f => f.key === key); filter.checked = !filter.checked; this.filtersChanged.emit(this.filters); } diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.html b/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.html index 89ce05585..40250c3da 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.html +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.html @@ -69,10 +69,8 @@ | async | sortBy: sortingOption.order:sortingOption.column " - [class.pointer]="canOpenDossier(dw)" - [routerLink]="[ - canOpenDossier(dw) ? '/main/dossiers/' + dw.dossier.dossierId : [] - ]" + [class.pointer]="!!dw" + [routerLink]="[!!dw ? '/main/dossiers/' + dw.dossier.dossierId : []]" class="table-item" >
@@ -100,7 +98,7 @@
- {{ userCount(dw) }} + {{ dw.numberOfMembers }}
diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.ts b/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.ts index 2fcfd731a..ad1d502fb 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-listing-screen/dossier-listing-screen.component.ts @@ -7,7 +7,7 @@ import { groupBy } from '@utils/functions'; import { TranslateService } from '@ngx-translate/core'; import { PermissionsService } from '@services/permissions.service'; import { DossierWrapper } from '@state/model/dossier.wrapper'; -import { Observable, Subscription, timer } from 'rxjs'; +import { Subscription, timer } from 'rxjs'; import { filter, tap } from 'rxjs/operators'; import { TranslateChartService } from '@services/translate-chart.service'; import { RedactionFilterSorter } from '@utils/sorters/redaction-filter-sorter'; @@ -31,7 +31,7 @@ import { SearchService } from '../../../shared/services/search.service'; import { ScreenStateService } from '../../../shared/services/screen-state.service'; import { NewBaseListingComponent } from '../../../shared/base/new-base-listing.component'; import { FilterWrapper } from '../../../shared/components/filters/popup-filter/model/filter-wrapper.model'; -import { SortingService } from '../../../../services/sorting.service'; +import { ScreenNames, SortingService } from '../../../../services/sorting.service'; @Component({ templateUrl: './dossier-listing-screen.component.html', @@ -48,11 +48,7 @@ export class DossierListingScreenComponent peopleFilters: FilterModel[]; needsWorkFilters: FilterModel[]; dossierTemplateFilters: FilterModel[]; - detailsContainerFilters: { - statusFilters: FilterModel[]; - } = { - statusFilters: [] - }; + detailsContainerFilters: FilterModel[] = []; quickFilters: FilterModel[]; filterConfigs: FilterConfig[]; buttonConfigs: ButtonConfig[] = [ @@ -87,13 +83,14 @@ export class DossierListingScreenComponent protected readonly _injector: Injector ) { super(_injector); - this._sortingService.screenName = 'dossier-listing'; + this._sortingService.screenName = ScreenNames.DOSSIER_LISTING; this._appStateService.reset(); this._searchService.searchKey = 'name'; this._loadEntitiesFromState(); } get activeDossiersCount(): number { + console.log('active dossiers'); return this._screenStateService.entities.filter( p => p.dossier.status === Dossier.StatusEnum.ACTIVE ).length; @@ -180,14 +177,6 @@ export class DossierListingScreenComponent return dossier.files.length; } - userCount(dossier: DossierWrapper) { - return dossier.numberOfMembers; - } - - canOpenDossier(dw: DossierWrapper): boolean { - return !!dw; - } - getDossierTemplate(dw: DossierWrapper): DossierTemplateModel { return this._appStateService.getDossierTemplateById(dw.dossier.dossierTemplateId); } @@ -214,9 +203,7 @@ export class DossierListingScreenComponent } protected _preFilter() { - this.detailsContainerFilters = { - statusFilters: this.statusFilters.map(f => ({ ...f })) - }; + this.detailsContainerFilters = this.statusFilters.map(f => ({ ...f })); } private _loadEntitiesFromState() { @@ -257,14 +244,12 @@ export class DossierListingScreenComponent const allDistinctPeople = new Set(); const allDistinctNeedsWork = new Set(); const allDistinctDossierTemplates = new Set(); - this._screenStateService.logCurrentState(); this._screenStateService?.entities?.forEach(entry => { // all people entry.dossier.memberIds.forEach(f => allDistinctPeople.add(f)); - // file statuses - entry.files.forEach(f => allDistinctFileStatus.add(f.status)); // Needs work entry.files.forEach(file => { + allDistinctFileStatus.add(file.status); if (this.permissionsService.fileRequiresReanalysis(file)) allDistinctNeedsWork.add('analysis'); if (entry.hintsOnly) allDistinctNeedsWork.add('hint'); diff --git a/apps/red-ui/src/app/modules/shared/components/sort-pipe/sort-by.pipe.ts b/apps/red-ui/src/app/modules/shared/components/sort-pipe/sort-by.pipe.ts index 3500ec404..48a3aee2f 100644 --- a/apps/red-ui/src/app/modules/shared/components/sort-pipe/sort-by.pipe.ts +++ b/apps/red-ui/src/app/modules/shared/components/sort-pipe/sort-by.pipe.ts @@ -1,5 +1,6 @@ import { Pipe, PipeTransform } from '@angular/core'; import { orderBy } from 'lodash'; +import { SortingOrders } from '@services/sorting.service'; @Pipe({ name: 'sortBy' }) export class SortByPipe implements PipeTransform { @@ -8,7 +9,7 @@ export class SortByPipe implements PipeTransform { return value; } // no array if (!column || column === '') { - if (order === 'asc') { + if (order === SortingOrders.ASC) { return value.sort(); } else { return value.sort().reverse(); diff --git a/apps/red-ui/src/app/modules/shared/services/screen-state.service.ts b/apps/red-ui/src/app/modules/shared/services/screen-state.service.ts index fa0e5d14f..8c7965292 100644 --- a/apps/red-ui/src/app/modules/shared/services/screen-state.service.ts +++ b/apps/red-ui/src/app/modules/shared/services/screen-state.service.ts @@ -37,9 +37,7 @@ export class ScreenStateService { } setDisplayedEntities(newEntities: Partial) { - console.log(this.displayedEntities); this.displayedEntities$.next(newEntities); - console.log(this.displayedEntities); } set selectionKey(value: string) {