using CAPI.Custom.Repositories; using CAPI.Custom.Services.Events.Quotes; namespace CAPI.Custom.Services.EventHandlers.Quotes { public class BuyoutSupplierUpdatedHandler : IHandler { QuoteRepository repository = new QuoteRepository(); public void Handle(BuyoutSupplierUpdatedEvent domainEvent) { var buyoutSupplier = repository.GetBuyoutSupplierByItemId(domainEvent.BuyoutSupplierId); if (buyoutSupplier.Status == BuyoutStatus.QuoteReceived) { var quoteId = buyoutSupplier.ParentSurfaceItemId.GetValueOrDefault(); repository .RecalculateBuyoutItems(buyoutSupplier.itemID) .UpdateQuoteItemsFromBuyoutItems(buyoutSupplier.itemID) .CheckPrevisoulyQuotedItemPrice(quoteId) .ApplyCATListPriceToQuoteItems(quoteId) .RecalculateItemsTotals(quoteId) .RefreshFinalItems(quoteId) .EstimateDeliveryDate(quoteId) .RecalculateFinalTotals(quoteId); } } } }