Merged PR 838: #2169 Bugfix bei der Bestandsabfrage im Fenster weitere Verfügbarkeiten

#2169 Bugfix bei der Bestandsabfrage im Fenster weitere Verfügbarkeiten

Related work items: #2169
This commit is contained in:
Andreas Schickinger
2021-09-15 16:13:08 +00:00
committed by Nino Righi
parent e728860dd4
commit 09ac9bee7a
4 changed files with 16 additions and 8 deletions

View File

@@ -42,7 +42,8 @@
<ui-spinner [show]="stockFetching$ | async">
<span class="branch-stock">
<ui-icon icon="home" size="22px"></ui-icon>
{{ getStockInfo(branch.id)?.inStock || 0 }}
{{ branch.id | inStock: (inStock$ | async) }}
</span>
</ui-spinner>
</div>

View File

@@ -4,7 +4,7 @@ import { ItemDTO } from '@swagger/cat';
import { BranchDTO } from '@swagger/checkout';
import { UiModalRef } from '@ui/modal';
import { combineLatest } from 'rxjs';
import { filter, first, map, shareReplay, switchMap, tap } from 'rxjs/operators';
import { filter, map, shareReplay, switchMap, tap } from 'rxjs/operators';
import { geoDistance } from '@utils/common';
import { BehaviorSubject } from 'rxjs';
@@ -59,11 +59,6 @@ export class ModalAvailabilitiesComponent {
constructor(private modalRef: UiModalRef<void, { item: ItemDTO }>, private domainAvailabilityService: DomainAvailabilityService) {}
async getStockInfo(branchId: number) {
const stockInfo = await this.inStock$.pipe(first()).toPromise();
return stockInfo.find((info) => info.branchId === branchId);
}
filter(query: string) {
this.search$.next(query);
}

View File

@@ -5,9 +5,10 @@ import { UiIconModule } from '@ui/icon';
import { UiSearchboxModule } from '@ui/searchbox';
import { UiSpinnerModule } from 'apps/ui/spinner/src/lib/ui-spinner.module';
import { ModalAvailabilitiesComponent } from './availabilities.component';
import { InStockPipe } from './in-stock.pipe';
@NgModule({
declarations: [ModalAvailabilitiesComponent],
declarations: [ModalAvailabilitiesComponent, InStockPipe],
imports: [CommonModule, FormsModule, UiSearchboxModule, UiIconModule, UiSpinnerModule],
exports: [ModalAvailabilitiesComponent],
})

View File

@@ -0,0 +1,11 @@
import { Pipe, PipeTransform } from '@angular/core';
import { AvailabilityByBranchDTO } from 'apps/domain/availability/src/lib/defs/availability-by-branch-dto.model';
@Pipe({
name: 'inStock',
})
export class InStockPipe implements PipeTransform {
transform(branchId: number, inStock: AvailabilityByBranchDTO[]): number {
return inStock?.find((info) => info.branchId === branchId)?.inStock || 0;
}
}