mirror of
https://dev.azure.com/hugendubel/ISA/_git/ISA-Frontend
synced 2025-12-28 22:42:11 +01:00
#1631 Refactor - Removed Search Service from Checkout Review Component
This commit is contained in:
@@ -3,7 +3,6 @@ import { Router } from '@angular/router';
|
||||
import { ApplicationService } from '@core/application';
|
||||
import { AvailabilityService } from '@domain/availability';
|
||||
import { DomainCheckoutService } from '@domain/checkout';
|
||||
import { SearchService } from '@swagger/cat';
|
||||
import { AvailabilityDTO, DestinationDTO, ShoppingCartItemDTO } from '@swagger/checkout';
|
||||
import { UiMessageModalComponent, UiModalService } from '@ui/modal';
|
||||
import { PrintCartComponent } from '@modal/printer';
|
||||
@@ -118,7 +117,6 @@ export class CheckoutReviewComponent {
|
||||
private domainCheckoutService: DomainCheckoutService,
|
||||
private applicationService: ApplicationService,
|
||||
private availabilityService: AvailabilityService,
|
||||
private search: SearchService,
|
||||
private uiModal: UiModalService,
|
||||
private sso: SsoService,
|
||||
private router: Router,
|
||||
@@ -144,12 +142,6 @@ export class CheckoutReviewComponent {
|
||||
|
||||
async changeItem(shoppingCartItem: ShoppingCartItemDTO) {
|
||||
this.showChangeButtonSpinnerItemId = shoppingCartItem.id;
|
||||
const item = await this.search
|
||||
.SearchSearch({
|
||||
input: { qs: shoppingCartItem.product.ean },
|
||||
})
|
||||
.pipe(map((response) => response?.result[0]))
|
||||
.toPromise();
|
||||
|
||||
const quantity = shoppingCartItem.quantity;
|
||||
|
||||
@@ -165,7 +157,11 @@ export class CheckoutReviewComponent {
|
||||
|
||||
const takeAwayAvailability = await this.availabilityService
|
||||
.getTakeAwayAvailability({
|
||||
item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price },
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
quantity,
|
||||
branch,
|
||||
})
|
||||
@@ -173,7 +169,11 @@ export class CheckoutReviewComponent {
|
||||
|
||||
const pickupAvailability = await this.availabilityService
|
||||
.getPickUpAvailability({
|
||||
item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price },
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
branch,
|
||||
quantity,
|
||||
})
|
||||
@@ -181,22 +181,33 @@ export class CheckoutReviewComponent {
|
||||
|
||||
const digAvailability = await this.availabilityService
|
||||
.getDigDeliveryAvailability({
|
||||
item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price },
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
quantity,
|
||||
})
|
||||
.toPromise();
|
||||
|
||||
const b2bAvailability = await this.availabilityService
|
||||
.getB2bDeliveryAvailability({
|
||||
item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price },
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
quantity,
|
||||
branch,
|
||||
})
|
||||
.toPromise();
|
||||
|
||||
const downloadAvailability = await this.availabilityService
|
||||
.getDownloadAvailability({
|
||||
item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price },
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
})
|
||||
.toPromise();
|
||||
|
||||
@@ -230,7 +241,14 @@ export class CheckoutReviewComponent {
|
||||
|
||||
if (availableOptions.includes('dig-delivery') && availableOptions.includes('b2b-delivery')) {
|
||||
let shippingAvailability = await this.availabilityService
|
||||
.getDeliveryAvailability({ item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price }, quantity })
|
||||
.getDeliveryAvailability({
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
quantity,
|
||||
})
|
||||
.toPromise();
|
||||
if (shippingAvailability && this.availabilityService.isAvailable({ availability: shippingAvailability })) {
|
||||
availableOptions.push('delivery');
|
||||
@@ -269,7 +287,11 @@ export class CheckoutReviewComponent {
|
||||
content: PurchasingOptionsModalComponent,
|
||||
data: {
|
||||
availableOptions,
|
||||
item,
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
shoppingCartItem,
|
||||
branchNo: branch.branchNumber,
|
||||
processId: this.applicationService.activatedProcessId,
|
||||
@@ -297,13 +319,6 @@ export class CheckoutReviewComponent {
|
||||
let availability: AvailabilityDTO;
|
||||
|
||||
if (quantity) {
|
||||
const item = await this.search
|
||||
.SearchSearch({
|
||||
input: { qs: shoppingCartItem.product.ean },
|
||||
})
|
||||
.pipe(map((response) => response?.result[0]))
|
||||
.toPromise();
|
||||
|
||||
const branch = shoppingCartItem?.destination?.data?.targetBranch?.data;
|
||||
|
||||
if (orderType) {
|
||||
@@ -312,7 +327,11 @@ export class CheckoutReviewComponent {
|
||||
availability = await this.availabilityService
|
||||
.getTakeAwayAvailability({
|
||||
branch,
|
||||
item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price },
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
quantity,
|
||||
})
|
||||
.toPromise();
|
||||
@@ -321,7 +340,11 @@ export class CheckoutReviewComponent {
|
||||
availability = await this.availabilityService
|
||||
.getPickUpAvailability({
|
||||
branch,
|
||||
item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price },
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
quantity,
|
||||
})
|
||||
.toPromise();
|
||||
@@ -329,7 +352,11 @@ export class CheckoutReviewComponent {
|
||||
case 'Versand':
|
||||
availability = await this.availabilityService
|
||||
.getDeliveryAvailability({
|
||||
item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price },
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
quantity,
|
||||
})
|
||||
.toPromise();
|
||||
@@ -337,7 +364,11 @@ export class CheckoutReviewComponent {
|
||||
case 'DIG-Versand':
|
||||
availability = await this.availabilityService
|
||||
.getDigDeliveryAvailability({
|
||||
item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price },
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
quantity,
|
||||
})
|
||||
.toPromise();
|
||||
@@ -345,15 +376,24 @@ export class CheckoutReviewComponent {
|
||||
case 'B2B-Versand':
|
||||
availability = await this.availabilityService
|
||||
.getB2bDeliveryAvailability({
|
||||
item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price },
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
quantity,
|
||||
branch,
|
||||
})
|
||||
.toPromise();
|
||||
break;
|
||||
case 'Download':
|
||||
availability = await this.availabilityService
|
||||
.getDownloadAvailability({ item: { itemId: item.id, ean: item.product.ean, price: item.catalogAvailability.price } })
|
||||
.getDownloadAvailability({
|
||||
item: {
|
||||
itemId: Number(shoppingCartItem.product.catalogProductNumber),
|
||||
ean: shoppingCartItem.product.ean,
|
||||
price: shoppingCartItem.availability.price,
|
||||
},
|
||||
})
|
||||
.toPromise();
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user