Ejemplo n.º 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);
        }
Ejemplo n.º 2
0
        private void buttonCreateRoute_Click(object sender, EventArgs e)
        {
            if (comboBoxDriver.SelectedIndex == -1)
            {
                MessageBox.Show("Wybierz kierowcę.", "Nieprawdiłowy formularz", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            if (comboBoxVehicle.SelectedIndex == -1)
            {
                MessageBox.Show("Wybierz samochód.", "Nieprawdiłowy formularz", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            if (listViewVehicleParcels.Items.Count == 0)
            {
                MessageBox.Show("Wybierz paczki.", "Nieprawdiłowy formularz", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            int        driverId  = couriers.Employees.ToArray()[comboBoxDriver.SelectedIndex].Id;
            int        carId     = vehicles.Vehicles.ToArray()[comboBoxVehicle.SelectedIndex].Id;
            List <int> parcelIds = new List <int>();

            foreach (ListViewItem item in listViewVehicleParcels.Items)
            {
                parcelIds.Add((int)item.Tag);
            }

            NewRouteDTO dto = _routeController.CreateRoute(driverId, carId, parcelIds.ToArray());

            if (dto.Status == Api.Enums.NewRouteStatus.Failure)
            {
                MessageBox.Show(dto.ErrorMessage, "Problem", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else if (dto.Status == Api.Enums.NewRouteStatus.Success)
            {
                MessageBox.Show("Trasa została utworzona", "Sukces", MessageBoxButtons.OK, MessageBoxIcon.Information);
                DialogResult = DialogResult.OK;
            }
        }