diff --git a/ui/ui-frontend/projects/archive-search/src/app/archive/archive-search/archive-search.component.html b/ui/ui-frontend/projects/archive-search/src/app/archive/archive-search/archive-search.component.html index 38482192ece62c77ab8cc56ea5f4222cf0f745be..29945eed3166631be6bbd52b752753080f11be7b 100644 --- a/ui/ui-frontend/projects/archive-search/src/app/archive/archive-search/archive-search.component.html +++ b/ui/ui-frontend/projects/archive-search/src/app/archive/archive-search/archive-search.component.html @@ -224,56 +224,6 @@ {{ 'ARCHIVE_SEARCH.FOLDER' | translate }} </div> </vitamui-common-table-filter-option> - <vitamui-common-table-filter-option value="Subgrp"> - <div class="table-filter-icon"> - <i class="vitamui-icon vitamui-icon-folder vitamui-row-icon status-badge"></i> - {{ 'ARCHIVE_SEARCH.SUBGRP' | translate }} - </div> - </vitamui-common-table-filter-option> - <vitamui-common-table-filter-option value="Subseries"> - <div class="table-filter-icon"> - <i class="vitamui-icon vitamui-icon-folder vitamui-row-icon status-badge"></i> - {{ 'ARCHIVE_SEARCH.SUBSERIES' | translate }} - </div> - </vitamui-common-table-filter-option> - <vitamui-common-table-filter-option value="Series"> - <div class="table-filter-icon"> - <i class="vitamui-icon vitamui-icon-folder vitamui-row-icon status-badge"></i> - {{ 'ARCHIVE_SEARCH.SERIES' | translate }} - </div> - </vitamui-common-table-filter-option> - <vitamui-common-table-filter-option value="Collection"> - <div class="table-filter-icon"> - <i class="vitamui-icon vitamui-icon-folder vitamui-row-icon status-badge"></i> - {{ 'ARCHIVE_SEARCH.COLLECTION' | translate }} - </div> - </vitamui-common-table-filter-option> - <vitamui-common-table-filter-option value="Class"> - <div class="table-filter-icon"> - <i class="vitamui-icon vitamui-icon-folder vitamui-row-icon status-badge"></i> - {{ 'ARCHIVE_SEARCH.CLASS' | translate }} - </div> - </vitamui-common-table-filter-option> - - <vitamui-common-table-filter-option value="Subfonds"> - <div class="table-filter-icon"> - <i class="vitamui-icon vitamui-icon-folder vitamui-row-icon status-badge"></i> - {{ 'ARCHIVE_SEARCH.SUBFONDS' | translate }} - </div> - </vitamui-common-table-filter-option> - - <vitamui-common-table-filter-option value="Fonds"> - <div class="table-filter-icon"> - <i class="vitamui-icon vitamui-icon-folder vitamui-row-icon status-badge"></i> - {{ 'ARCHIVE_SEARCH.FONDS' | translate }} - </div> - </vitamui-common-table-filter-option> - <vitamui-common-table-filter-option value="Otherlevel"> - <div class="table-filter-icon"> - <i class="vitamui-icon vitamui-icon-folder vitamui-row-icon status-badge"></i> - {{ 'ARCHIVE_SEARCH.OTHERLEVEL' | translate }} - </div> - </vitamui-common-table-filter-option> </vitamui-common-table-filter> </ng-template> diff --git a/ui/ui-frontend/projects/archive-search/src/app/archive/archive-search/archive-search.component.ts b/ui/ui-frontend/projects/archive-search/src/app/archive/archive-search/archive-search.component.ts index 0ebe50d7f87175e24040d05c95c126e57569e609..6982054633228bd8f648f8af9680cb9d87af82ff 100644 --- a/ui/ui-frontend/projects/archive-search/src/app/archive/archive-search/archive-search.component.ts +++ b/ui/ui-frontend/projects/archive-search/src/app/archive/archive-search/archive-search.component.ts @@ -43,7 +43,7 @@ import { ActivatedRoute } from '@angular/router'; import { TranslateService } from '@ngx-translate/core'; import { merge, Subject, Subscription } from 'rxjs'; import { debounceTime } from 'rxjs/operators'; -import { Direction, StartupService } from 'ui-frontend-common'; +import { CriteriaDataType, CriteriaOperator, Direction, StartupService } from 'ui-frontend-common'; import { ArchiveSharedDataServiceService } from '../../core/archive-shared-data-service.service'; import { ArchiveService } from '../archive.service'; import { FilingHoldingSchemeNode } from '../models/node.interface'; @@ -57,6 +57,7 @@ import { SearchCriteriaEltDto, SearchCriteriaStatusEnum, SearchCriteriaTypeEnum, + SearchCriteriaValue, } from '../models/search.criteria'; import { Unit } from '../models/unit.interface'; import { VitamUISnackBarComponent } from '../shared/vitamui-snack-bar'; @@ -192,7 +193,7 @@ export class ArchiveSearchComponent implements OnInit, OnChanges, OnDestroy { archiveUnits: Unit[]; ontologies: any; filterMapType: { [key: string]: string[] } = { - status: ['Folder', 'Document', 'Subfonds', 'Class', 'Subgrp', 'Otherlevel', 'Series', 'Subseries', 'Collection', 'Fonds'], + status: ['Folder', 'Document'], }; shouldShowPreviewArchiveUnit = false; @@ -282,18 +283,7 @@ export class ArchiveSearchComponent implements OnInit, OnChanges, OnDestroy { this.searchCriterias = new Map(); this.searchCriteriaKeys = []; - this.filterMapType.Type = [ - 'Folder', - 'Document', - 'Subfonds', - 'Class', - 'Subgrp', - 'Otherlevel', - 'Series', - 'Subseries', - 'Collection', - 'Fonds', - ]; + this.filterMapType.Type = ['Folder', 'Document']; const searchCriteriaChange = merge(this.orderChange, this.filterChange).pipe(debounceTime(FILTER_DEBOUNCE_TIME_MS)); @@ -535,14 +525,10 @@ export class ArchiveSearchComponent implements OnInit, OnChanges, OnDestroy { buildFieldsCriteriaListForQUery() { this.searchCriterias.forEach((criteria: SearchCriteria) => { if (criteria.category === SearchCriteriaTypeEnum.FIELDS) { - const strValues: CriteriaValue[] = []; this.updateCriteriaStatus(SearchCriteriaStatusEnum.NOT_INCLUDED, SearchCriteriaStatusEnum.IN_PROGRESS); - criteria.values.forEach((elt) => { - strValues.push(elt.value); - }); this.criteriaSearchList.push({ criteria: criteria.key, - values: strValues, + values: criteria.values.map((elt: SearchCriteriaValue) => elt.value), operator: criteria.operator, category: SearchCriteriaTypeEnum[SearchCriteriaTypeEnum.FIELDS], dataType: criteria.dataType, @@ -550,25 +536,32 @@ export class ArchiveSearchComponent implements OnInit, OnChanges, OnDestroy { } }); - const typesFilterValues: CriteriaValue[] = []; - this.filterMapType.Type.forEach((filter) => { - if (filter === 'Document') { - typesFilterValues.push({ id: 'File', value: 'File' }); - typesFilterValues.push({ id: 'Item', value: 'Item' }); - } else if (filter === 'Folder') { - typesFilterValues.push({ id: 'RecordGrp', value: 'RecordGrp' }); - } else { - typesFilterValues.push({ id: filter, value: filter }); - } - }); + if (this.filterMapType.Type.length != 2) { + const typesFilterValues: CriteriaValue[] = []; + + this.filterMapType.Type.forEach((filter) => { + if (filter === 'Document') { + typesFilterValues.push({ id: 'Item', value: 'Item' }); + } else if (filter === 'Folder') { + typesFilterValues.push({ id: 'RecordGrp', value: 'RecordGrp' }); + typesFilterValues.push({ id: 'File', value: 'File' }); + typesFilterValues.push({ id: 'Subfonds', value: 'Subfonds' }); + typesFilterValues.push({ id: 'Class', value: 'Class' }); + typesFilterValues.push({ id: 'Subgrp', value: 'Subgrp' }); + typesFilterValues.push({ id: 'Otherlevel', value: 'Otherlevel' }); + typesFilterValues.push({ id: 'Series', value: 'Series' }); + typesFilterValues.push({ id: 'Subseries', value: 'Subseries' }); + typesFilterValues.push({ id: 'Collection', value: 'Collection' }); + typesFilterValues.push({ id: 'Fonds', value: 'Fonds' }); + } + }); - if (typesFilterValues.length > 0) { this.criteriaSearchList.push({ criteria: 'DescriptionLevel', values: typesFilterValues, - operator: 'EQ', + operator: CriteriaOperator.EQ, category: SearchCriteriaTypeEnum[SearchCriteriaTypeEnum.FIELDS], - dataType: 'STRING', + dataType: CriteriaDataType.STRING, }); } }