#3567 B2B Meldenummer auf der Artikeldetailseite

This commit is contained in:
Lorenz Hilpert
2022-10-20 14:13:11 +02:00
parent 08ef5f0853
commit 6e6551ceae

View File

@@ -8,6 +8,7 @@ import { ComponentStore, tapResponse } from '@ngrx/component-store';
import { ItemDTO, ResponseArgsOfItemDTO } from '@swagger/cat';
import { AvailabilityDTO } from '@swagger/checkout';
import { UiErrorModalComponent, UiModalService } from '@ui/modal';
import { isEmpty } from 'lodash';
import { combineLatest, Observable, of } from 'rxjs';
import { catchError, filter, first, map, shareReplay, switchMap, tap } from 'rxjs/operators';
@@ -238,17 +239,32 @@ export class ArticleDetailsStore extends ComponentStore<ArticleDetailsState> {
readonly isDeliveryB2BAvailabilityAvailable$ = this.select(this.deliveryB2BAvailability$, (availability) =>
this.domainAvailabilityService.isAvailable({ availability })
);
//#endregion
//#endregion#
readonly sscText$ = combineLatest([
this.item$,
this.isDownload$,
this.pickUpAvailability$,
this.deliveryDigAvailability$,
this.deliveryB2BAvailability$,
this.downloadAvailability$,
]).pipe(
map(([item, isDownload, pickupAvailability, deliveryDigAvailability, downloadAvailability]) => {
const availability = isDownload ? downloadAvailability : pickupAvailability || deliveryDigAvailability;
map(([item, isDownload, pickupAvailability, deliveryDigAvailability, deliveryB2BAvailability, downloadAvailability]) => {
// const availability = isDownload ? downloadAvailability : pickupAvailability || deliveryDigAvailability || deliveryB2BAvailability;
let availability: AvailabilityDTO;
if (isDownload) {
availability = downloadAvailability;
} else {
if (pickupAvailability?.sscText) {
availability = pickupAvailability;
} else if (deliveryDigAvailability?.sscText) {
availability = deliveryDigAvailability;
} else if (deliveryB2BAvailability?.sscText) {
availability = deliveryB2BAvailability;
}
}
if (item?.catalogAvailability?.supplier === 'S' && !isDownload) {
return [item?.catalogAvailability?.ssc, item?.catalogAvailability?.sscText].filter((f) => !!f).join(' - ');