public async Task <IActionResult> DNC(PackageFailedDeliveryEvent packageFailedDeliveryEvent) { await this.eventStoreService.Failed(packageFailedDeliveryEvent); this.messengerService.FailedDelivery(packageFailedDeliveryEvent); return(this.Ok()); }
public async Task <bool> FailedDelivery(PackageFailedDeliveryEvent failedDeliveryEvent) { // Notes on this are similar to NetworkScan() var update = Builders <Package> .Update .Set(t => t.State, PackageState.FailedDelivery) .Set(t => t.Notes, new BsonDocument("failureReason", failedDeliveryEvent.FailedReason)); // Could DRY this statement, easier to read for demo var result = await this.collection.UpdateOneAsync(x => x.Barcode == failedDeliveryEvent.Barcode, update); return(result.ModifiedCount == 1); }
public void FailedDelivery(PackageFailedDeliveryEvent packageFailedDeliveryEvent) { this.rabbitMessenger.SendMessage("package.driver-scan", packageFailedDeliveryEvent, "dnc"); }
public async Task Failed(PackageFailedDeliveryEvent packageFailedDeliveryEvent) { await this.Insert(packageFailedDeliveryEvent.Barcode, PackageEventType.DeliveryFailed, packageFailedDeliveryEvent); }