Ejemplo n.º 1
0
        public IHttpActionResult DispatcherProcessRide(ProcessRideRequestModel rideProcessRequest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            string hash = Thread.CurrentPrincipal.Identity.Name;

            Ride rideToProcess = _unitOfWork.RideRepository.FilterRidesIncludeAll(r => r.Id == rideProcessRequest.RideId).FirstOrDefault();

            rideToProcess.RideStatus   = (int)RideStatus.PROCESSED;
            rideToProcess.DriverId     = rideProcessRequest.DriverId;
            rideToProcess.DispatcherId = rideProcessRequest.DispatcherId;
            _unitOfWork.RideRepository.Update(rideToProcess);
            _unitOfWork.Complete();

            return(StatusCode(HttpStatusCode.NoContent));
        }
Ejemplo n.º 2
0
        public IHttpActionResult DriverTakeOverRide(ProcessRideRequestModel driverTakeOverRequest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            string hash = Thread.CurrentPrincipal.Identity.Name;

            Ride rideToProcess = _unitOfWork.RideRepository.FilterRidesIncludeAll(r => r.Id == driverTakeOverRequest.RideId).FirstOrDefault();

            rideToProcess.RideStatus = (int)RideStatus.ACCEPTED;
            rideToProcess.DriverId   = driverTakeOverRequest.DriverId;
            _unitOfWork.RideRepository.Update(rideToProcess);
            _unitOfWork.Complete();

            rideToProcess = _unitOfWork.RideRepository.FilterRidesIncludeAll(r => r.Id == rideToProcess.Id).FirstOrDefault();
            RideDto takenRide = _iMapper.Map <Ride, RideDto>(rideToProcess);

            return(Ok(takenRide));
        }