From 44aa8249abb8be176200397e1c590fbc9781f662 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adina=20=C8=9Aeudan?= Date: Wed, 9 Feb 2022 10:05:59 +0200 Subject: [PATCH] RED-3366: File updates filter only for current user --- .../dossier/screens/dossier-overview/config.service.ts | 4 ++-- apps/red-ui/src/app/utils/filter-utils.ts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/config.service.ts b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/config.service.ts index 564fecf6e..df9941b39 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/config.service.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/config.service.ts @@ -190,7 +190,7 @@ export class ConfigService { if (file.hasSuggestions) { allDistinctNeedsWork.add('suggestion'); } - if (file.hasUpdates) { + if (file.hasUpdates && file.assignee === this._userService.currentUser.id && !file.isApproved) { allDistinctNeedsWork.add('updated'); } if (file.hasImages) { @@ -277,7 +277,7 @@ export class ConfigService { icon: 'red:needs-work', filterTemplate: needsWorkFilterTemplate, filters: needsWorkFilters.sort(RedactionFilterSorter.byKey), - checker: annotationFilterChecker, + checker: (file: File, filter: INestedFilter) => annotationFilterChecker(file, filter, this._userService.currentUser.id), matchAll: true, }); diff --git a/apps/red-ui/src/app/utils/filter-utils.ts b/apps/red-ui/src/app/utils/filter-utils.ts index 1b08223df..cb32b5523 100644 --- a/apps/red-ui/src/app/utils/filter-utils.ts +++ b/apps/red-ui/src/app/utils/filter-utils.ts @@ -44,7 +44,7 @@ export function handleFilterDelta(oldFilters: INestedFilter[], newFilters: INest }); } -export const annotationFilterChecker = (file: File, filter: INestedFilter) => { +export const annotationFilterChecker = (file: File, filter: INestedFilter, currentUserId: string) => { switch (filter.id) { case 'analysis': { return file.analysisRequired; @@ -62,7 +62,7 @@ export const annotationFilterChecker = (file: File, filter: INestedFilter) => { return file.hasNone; } case 'updated': { - return file.hasUpdates; + return file.hasUpdates && file.assignee === currentUserId && !file.isApproved; } case 'image': { return file.hasImages;