private ForwardingEvent GetForwardingEventFrom(SroEvent @event) { var _event = new ForwardingEvent() { Dates = new ShipmentEventDates(), Locations = new ForwardedToLocations() }; _event.PackageHasArrived = GetIsPackageArrivedFrom(@event); _event.BoundryMessage = GetBoundryMessageFrom(@event); _event.Dates.OccurredAt = SroResponseJsonAdapter.GetDateTimeFrom(@event); _event.Locations.ForwardedFrom = SroResponseJsonAdapter.GetLocationFrom(@event); _event.Locations.ForwardedTo = GetForwardedToLocationFrom(@event); _event.ArrivedAt = GetArrivalDateTimeFrom(_event.Locations.ForwardedTo); return(_event); }
public async Task PushToForwardingEventList(string id, ForwardingEvent @event) { var filter = FilterBuilder.Where(shipment => shipment.Id == ObjectId.Parse(id)); var update = UpdateBuilder.Push(shipment => shipment.ForwardingEvents, @event); await Collections.Shipments.UpdateOneAsync(filter, update); }