Example #1
0
        public async Task <IActionResult> POD(PackageDeliveredEvent packageDeliveredEvent)
        {
            await this.eventStoreService.Delivered(packageDeliveredEvent);

            this.messengerService.Delivered(packageDeliveredEvent);
            return(this.Ok());
        }
Example #2
0
        public async Task <bool> Delivered(PackageDeliveredEvent packageDeliveredEvent)
        {
            // Notes on this are similar to NetworkScan()
            var update = Builders <Package> .Update
                         .Set(t => t.State, PackageState.Delivered)
                         .Set(t => t.Signature, packageDeliveredEvent.Signature)
                         .Set(t => t.Location, packageDeliveredEvent.LatLon.ToBsonDocument())
                         .Set(t => t.Notes, new BsonDocument("message", "signed for by customer"));

            // I Am copying and Pasting, I shouldn't - ¯\_(ツ)_/¯
            var result = await this.collection.UpdateOneAsync(x => x.Barcode == packageDeliveredEvent.Barcode, update);

            return(result.ModifiedCount == 1);
        }
Example #3
0
 public void Delivered(PackageDeliveredEvent packageDeliveredEvent)
 {
     this.rabbitMessenger.SendMessage("package.driver-scan", packageDeliveredEvent, "pod");
 }
Example #4
0
 public async Task Delivered(PackageDeliveredEvent packageDelivered)
 {
     await this.Insert(packageDelivered.Barcode, PackageEventType.Delivered, packageDelivered);
 }