Пример #1
0
        public void FromAddress()
        {
            if (SelectedDeliveryLine != null && SelectedDeliveryLine.FromAddress != null)
            {
                var fromAddr = new AddressDTO
                {
                    Country = "Ethiopia",
                    City    = "Addis Abeba"
                };

                fromAddr = MapperUtility <AddressDTO> .GetMap(SelectedDeliveryLine.FromAddress, fromAddr) as AddressDTO;

                if (fromAddr != null)
                {
                    fromAddr.Id = 0;

                    var addr = new AddressEntry(fromAddr);
                    addr.ShowDialog();
                    var dialogueResult = addr.DialogResult;
                    if (dialogueResult != null && (bool)dialogueResult)
                    {
                        SelectedDeliveryLine.FromAddress = fromAddr;
                        FromAdressDetail = new ObservableCollection <AddressDTO> {
                            fromAddr
                        };
                    }
                }
            }
        }
Пример #2
0
        public void ToAddress()
        {
            if (SelectedDeliveryLine != null)
            {
                var toAddr = new AddressDTO
                {
                    Country = "Ethiopia",
                    City    = "Addis Abeba"
                };

                if (SelectedDeliveryLine.ToAddress != null)
                {
                    toAddr = MapperUtility <AddressDTO> .GetMap(SelectedDeliveryLine.ToAddress, toAddr) as AddressDTO;
                }

                if (toAddr != null)
                {
                    var addr = new AddressEntry(toAddr);
                    addr.ShowDialog();
                    var dialogueResult = addr.DialogResult;
                    if (dialogueResult != null && (bool)dialogueResult)
                    {
                        SelectedDeliveryLine.ToAddress = toAddr;
                        ToAdressDetail = new ObservableCollection <AddressDTO> {
                            toAddr
                        };
                    }
                }
            }
        }
Пример #3
0
        private void SaveDeliveryLine(object obj)
        {
            try
            {
                SelectedDeliveryRoute.AssignedToStaffId = SelectedStaff.Id;
                if (SelectedVehicle != null)
                {
                    SelectedDeliveryRoute.VehicleId = SelectedVehicle.Id;
                }

                SelectedDeliveryRoute.FromAddressId = SelectedCompany.AddressId;
                SelectedDeliveryRoute.ToAddressId   = SelectedDelivery.OrderByClient.AddressId;
                _deliveryService.InsertOrUpdateDeliveryRouteChild(SelectedDeliveryRoute);

                var delivery = _deliveryService.Find(SelectedDelivery.Id.ToString());

                delivery.DeliverDirectly = DeliverDirectly;

                delivery.Status = DeliveryStatusTypes.AcceptanceScheduled;
                if (SelectedDeliveryRoute.StartedTime != null)
                {
                    delivery.Status = DeliveryStatusTypes.OnAcceptance;
                }
                if (SelectedDeliveryRoute.StartedTime != null && SelectedDeliveryRoute.EndedTime != null)
                {
                    delivery.Status = DeliveryStatusTypes.Accepted;
                }
                _deliveryService.InsertOrUpdate(delivery);

                //Create Delivery Route for each Line
                var delLines = SelectedDelivery.DeliveryLines.Where(
                    d => d.DeliveryType == DeliveryLineRouteTypes.Delivering).ToList();
                foreach (var deliveryLineDTO in delLines)
                {
                    var delRoute =
                        _deliveryService.GetDeliveryRouteChilds(deliveryLineDTO.Id, false).FirstOrDefault();

                    if (DeliverDirectly && delRoute == null)
                    {
                        delRoute = new DeliveryRouteDTO();
                        delRoute = (DeliveryRouteDTO)MapperUtility <DeliveryRouteDTO> .GetMap(SelectedDeliveryRoute, delRoute);

                        delRoute.DeliveryType   = DeliveryLineRouteTypes.Delivering;
                        delRoute.DeliveryLine   = null;
                        delRoute.DeliveryLineId = deliveryLineDTO.Id;
                        delRoute.FromAddressId  = SelectedDelivery.OrderByClient.AddressId;
                        delRoute.StartedTime    = null;
                        delRoute.EndedTime      = null;
                        delRoute.Id             = 0;

                        _deliveryService.InsertOrUpdateDeliveryRouteChild(delRoute);
                    }
                    if (delRoute != null && !DeliverDirectly)
                    {
                        delRoute.Enabled = false;
                        _deliveryService.InsertOrUpdateDeliveryRouteChild(delRoute);
                    }
                }

                CloseWindow(obj);
            }
            catch (Exception exception)
            {
                MessageBox.Show("Can't save"
                                + Environment.NewLine + exception.Message, "Can't save", MessageBoxButton.OK,
                                MessageBoxImage.Error);
            }
        }