Exemple #1
0
        public NewRouteDTO CreateRoute(int driverId, int carId, int[] parcelIds)
        {
            NewRouteDTO dto;

            try
            {
                Route route = _routeService.CreateRoute(driverId, carId, parcelIds);

                foreach (RoutePoint point in route.RoutePoints)
                {
                    _parcelService.AssignCourier(point.Parcel, driverId);
                    _parcelService.ChangeParcelStatus(point.Parcel, Model.Enums.ParcelStatus.OnWayToTheCustomer);
                }
                dto = new NewRouteDTO()
                {
                    Route  = route,
                    Status = Enums.NewRouteStatus.Success
                };
            }
            catch (Exception ex)
            {
                dto = new NewRouteDTO()
                {
                    ErrorMessage = ex.Message,
                    Status       = Enums.NewRouteStatus.Failure
                };
            }

            return(dto);
        }
Exemple #2
0
 public bool ChangeParcelStatus(int id, ParcelStatus status)
 {
     try
     {
         _parcelService.ChangeParcelStatus(_parcelService.GetById(id), status);
     }
     catch (ParcelNotFoundInDatabaseException e)
     {
         Console.WriteLine(e.ToString());
         return(false);
     }
     catch (NothingAddedToDatabaseException e)
     {
         Console.WriteLine(e.ToString());
         return(false);
     }
     return(true);
 }