BlockScience / rideshare-model

0 stars 0 forks source link

Integrate in handle_complete_ride_event code #50

Open SeanMcOwen opened 3 months ago

SeanMcOwen commented 3 months ago

Blocked on #12 being finished first

Code:

def handle_complete_ride_event(self, event, event_queue, current_time):
    ride_id = event.spaces["ride_id"]
    driver_id = event.spaces["driver_id"]
    ride_request = self.ride_requests[ride_id]
    driver = next(d for d in self.drivers if d.name == driver_id)
    print(f"Completing ride {ride_id} by driver {driver_id} at time {current_time}")

    driver.complete_ride()
    ride_request.complete()
    ride_request.rider.complete_ride()
    ride_request.metadata["dropoff_time"] = current_time
    driver.current_rider = None
    driver.current_request = None
    driver.reset()

    self.completed_rides.append(ride_request)
    print(f"Ride {ride_id} completed")