public async Task Consume(ConsumeContext <PackReadyToSendEvent> context) { try { var pack = await packToDeliveryRepo.GetByConditionFirst(x => x.OrderId == context.Message.OrderId); await ChangePackStatusToReadyToSend(pack, context.Message.OrderId); } catch (Exception ex) { logger.LogError(ex.Message); throw; } logger.LogInformation($"Successfully handled event: {context.MessageId} at {this} - {context}"); }
public async Task Consume(ConsumeContext <ProductionFinishedEvent> context) { try { var packToDelivery = await packToDeliveryRepo.GetByConditionFirst(x => x.OrderId == context.Message.OrderId); packToDelivery.ProductsQuantity += context.Message.ProductsQuantity; } catch (NullDataException) { await CreateNewPackToDelivery(context); } await SaveChanges(); logger.LogInformation($"Successfully handled event: {context.MessageId} at {this} - {context}"); }
public async Task <Unit> Handle(LoadPackCommand request, CancellationToken cancellationToken) { var pack = await packToDeliveryRepo.GetByConditionFirst(x => x.Id == request.PackId); var loadingPlace = await loadingPlaceRepo.GetByConditionFirst(x => x.Id == request.LoadingPlaceId); ValidateLoadingPlaceAmountOfSpace(pack, loadingPlace); SetPackLoadingPlace(pack, loadingPlace); IncreaseLoadingPlaceLoadedQuantity(pack, loadingPlace); await loadingPlaceRepo.SaveAllAsync(); await bus.Publish(new ChangeOrderStatusEvent(pack.OrderId, OrderStatus.ReadyToSend)); return(Unit.Value); }