protected void gvSavedPUFromCourierLocation_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName != "DeleteCommand")
            {
                return;
            }

            int index    = Convert.ToInt32(e.CommandArgument);
            int rowIndex = index;

            // Retrieve the row that contains the button clicked
            // by the user from the Rows collection.
            GridViewRow    row            = gvSavedPUFromCourierLocation.Rows[rowIndex];
            int            addressId      = Convert.ToInt32(gvSavedPUFromCourierLocation.DataKeys[row.RowIndex]["Id"]);
            DeliveryOption deliveryOption = getSelectedAddress(addressId);
            string         distributorId  = (this.Page as ProductsBase).DistributorID;

            if (deliveryOption != null)
            {
                switch (e.CommandName)
                {
                case "DeleteCommand":
                    ucShippingInfoControl.ShowPopupForPickup(CommandType.Delete,
                                                             new DeliveryOptionEventArgs(deliveryOption.Id,
                                                                                         string.Empty));
                    break;

                default:
                    return;
                }
            }
        }
Exemple #2
0
            public static AddressViewModel ConvertAddressToViewModel(DeliveryOption option,
                                                                     bool fetchCustomShippingMethods = false, string memberId = null, string locale = null)
            {
                var address = new AddressViewModel
                {
                    City                   = option.Address.City,
                    Country                = option.Address.Country,
                    CountyDistrict         = option.Address.CountyDistrict,
                    CloudId                = option.AddressId,
                    Line1                  = option.Address.Line1,
                    Line2                  = option.Address.Line2,
                    Line3                  = option.Address.Line3,
                    Line4                  = option.Address.Line4,
                    PostalCode             = option.Address.PostalCode,
                    StateProvinceTerritory = option.Address.StateProvinceTerritory,
                    NickName               = option.Alias,
                    IsPrimary              = option.IsPrimary,
                    PersonCloudId          = option.CustomerId,
                    LastUpdatedDate        = option.Created,
                    CustomShippingMethods  =
                        fetchCustomShippingMethods ? GetCustomShippingMethods(memberId, option, locale) : null
                };

                return(address);
            }
Exemple #3
0
        /// <summary>
        /// Creates MessageEventArgs
        /// </summary>
        /// <param name="message">Message to be delivered</param>
        /// <param name="deliverOption">How message should be delivered</param>
        /// <param name="messageTopic">Topic to which message belongs</param>
        /// <param name="topicName"> Topic on which message is published.</param>

        public MessageEventArgs(IMessage message, DeliveryOption deliverOption, ITopic messageTopic, string topicName)
        {
            _message        = message;
            _deliveryOption = deliverOption;
            _topic          = messageTopic;
            _topicName      = topicName;
        }
        public bool Create(Order order, DeliveryOption option, Address address)
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create($"http://127.0.0.1:8080/server/api/deliveries/");

            request.Method      = "POST";
            request.ContentType = "application/json";

            string nw = $"{{\"address\": {{\"id\": {address.id} }}, \"deliveryOption\": {{ \"id\": {option.id}}},\"order\": {{\"id\": {order.Id}}}";

            //Delivery del = new Delivery(address, option, order);

            //var json = JsonConvert.SerializeObject(del);

            using (var streamWriter = new StreamWriter(request.GetRequestStream()))
            {
                streamWriter.Write(nw);
            }

            using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
            {
                if (response.StatusCode == HttpStatusCode.Created)
                {
                    return(true);
                }
            }

            return(false);
        }
Exemple #5
0
 public static PickupViewModel ConvertDeliveryOptionToViewModel(DeliveryOption option)
 {
     return(new PickupViewModel()
     {
         Address = MobileAddressProvider.ModelConverter.ConvertAddressToViewModel(option),
         AddressType = option.AddressType,
         Alias = option.Alias,
         AltAreaCode = option.AltAreaCode,
         AltPhone = option.AltPhone,
         AreaCode = option.AreaCode,
         Attention = option.Attention == null? null : option.Attention.ToString(),
         CourierType = option.CourierType,
         Created = option.Created,
         DeliveryOptionId = option.Id,
         State = option.State,
         DeliveryType = option.Option.ToString(),
         OrderCategory = option.OrderCategory.ToString(),
         Information = option.Information,
         Description = option.Name,
         FreightCode = option.FreightCode,
         Warehouse = option.WarehouseCode,
         Name = option.Description,
         ShippingIntervaldays = option.ShippingIntervalDays,
         DisplayName = option.DisplayName,
         IsPrimary = option.IsPrimary,
         Recipient = option.Recipient,
         Phone = option.Phone,
         Id = option.Id,
         IDSaved = option.ID
     });
 }
        public ModifyBasketResponse ModifyBasket(ModifyBasketRequest request)
        {
            ModifyBasketResponse response = new ModifyBasketResponse();
            Basket basket = _basketRepository.FindBy(request.BasketId);

            if (basket == null)
            {
                throw new BasketDoesNotExistException();
            }

            AddProductsToBasket(request.ProductsToAdd, basket);

            UpdateLineQtys(request.ItemsToUpdate, basket);

            RemoveItemsFromBasket(request.ItemsToRemove, basket);

            if (request.SetShippingServiceIdTo != 0)
            {
                DeliveryOption deliveryOption = _deliveryOptionRepository.FindBy(request.SetShippingServiceIdTo);
                basket.SetDeliveryOption(deliveryOption);
            }

            ThrowExceptionIfBasketIsInvalid(basket);

            _basketRepository.Save(basket);
            _uow.Commit();

            response.Basket = basket.ConvertToBasketView();

            return(response);
        }
        /// Ready For Test
        public async Task <IActionResult> Delete(int deliveyOptionId)
        {
            try
            {
                DeliveryOption currentDeliveryOption = await _DbContext.DeliveryOptions.SingleOrDefaultAsync(d => d.Id == deliveyOptionId)
                                                       .ConfigureAwait(false);

                if (currentDeliveryOption is null)
                {
                    CoreFunc.Error(ref ErrorsList, "Delivery Option not found");
                    return(NotFound(ErrorsList));
                }

                if (currentDeliveryOption.IsPremitive)
                {
                    /// extract the errors and return bad request containing the errors
                    CoreFunc.Error(ref ErrorsList, "Delivery Option is primitive.");
                    return(StatusCode(412, ErrorsList));
                }

                _DbContext.DeliveryOptions.Remove(currentDeliveryOption);
                await _DbContext.SaveChangesAsync().ConfigureAwait(false);

                return(Ok("Delivery Option was deleted"));
            }
            catch (Exception ex)
            {
                CoreFunc.Error(ref ErrorsList, _LoggingService.LogException(Request.Path, ex, User));
                return(StatusCode(417, ErrorsList));
            }
        }
        /// <summary>
        ///     process shipping Address
        /// </summary>
        private void processShippingAddress()
        {
            if (getShippingAddressList() == null || shippingAddresses.Count() == 0)
            {
                dvViewAllShippingAddress.Visible    = false;
                dvNonPrimaryShippingAddress.Visible = true;
            }
            else
            {
                dvViewAllShippingAddress.Visible      = true;
                lbtShowAllShippingAddress.PostBackUrl = "/Ordering/SavedShippingAddress.aspx";

                if ((primaryShippingAddress = shippingAddresses.Where(s => s.IsPrimary).FirstOrDefault()) == null)
                {
                    dvPrimaryShippingAddress.Visible    = false;
                    dvNonPrimaryShippingAddress.Visible = true;
                    lblPickupDisplay.Visible            = false;
                }
                else
                {
                    string formattedAddress = (Page as ProductsBase).GetShippingProvider().
                                              FormatOrderPreferencesAddress(
                        primaryShippingAddress);
                    var pAddress = new HtmlGenericControl();
                    pAddress.InnerHtml = formattedAddress;
                    pnlPrimaryShippngAddress.Controls.Add(pAddress);

                    dvPrimaryShippingAddress.Visible    = true;
                    dvNonPrimaryShippingAddress.Visible = false;
                }
            }
        }
Exemple #9
0
 public void Deserialize(CompactReader reader)
 {
     _messageId               = reader.ReadObject() as string;
     _topic                   = reader.ReadObject() as string;
     _deliveryOption          = (DeliveryOption)reader.ReadByte();
     _notifyOnDeliveryFailure = reader.ReadBoolean();
 }
Exemple #10
0
        protected virtual ShippingInfo setPickupInfo(DeliveryOption deliveryOption,
                                                     DeliveryOptionType deliveryOptionType)
        {
            ShippingInfo shippingInfo = ShoppingCart.DeliveryInfo;
            int          deliveryOptionID = 0, shippingAddressID = 0;

            if (shippingInfo != null)
            {
                shippingAddressID = deliveryOptionType == DeliveryOptionType.Shipping
                                        ? deliveryOption.Id
                                        : shippingInfo.Address.ID;
                deliveryOptionID = deliveryOptionType == DeliveryOptionType.Shipping
                                       ? shippingInfo.Id
                                       : deliveryOption.Id;
            }
            else
            {
                shippingAddressID = deliveryOptionType == DeliveryOptionType.Shipping ? deliveryOption.Id : 0;
                deliveryOptionID  = deliveryOptionType == DeliveryOptionType.Shipping ? 0 : deliveryOption.Id;
            }
            updateShippingInfo(shippingAddressID,
                               deliveryOptionID,
                               deliveryOptionType);
            return(shippingInfo);
        }
Exemple #11
0
 protected virtual void shippingAddressChanged(ShippingAddress_V02 shippingAddress)
 {
     try
     {
         var deliveryOption = Session["OQVOldaddress"] as DeliveryOption;
         if (deliveryOption != null)
         {
             if (shippingAddress != null)
             {
                 if (ShoppingCart.DeliveryInfo != null)
                 {
                     DeliveryOption NewDeliveryOption = GetDeliveryOptionIDFromShippingAddress(shippingAddress.ID,
                                                                                               DeliveryOptionType
                                                                                               .Shipping);
                     //bug fix Bug 226409 because GetDeliveryOptionIDFromShippingAddress can return null need to put null validation
                     if (NewDeliveryOption != null)
                     {
                         updateShippingInfo(shippingAddress.ID, NewDeliveryOption.Id, DeliveryOptionType.Shipping);
                     }
                 }
             }
         }
         reload();
     }
     catch (Exception ex)
     {
         LoggerHelper.Error(string.Format("Error in shippingAddressChanged: shippingAddress {0},error:{1}", (shippingAddress == null)?"null":shippingAddress.ID.ToString(), ex));
     }
 }
Exemple #12
0
        public override string GetCommandParameters(out string commandName)
        {
            StringBuilder details = new StringBuilder();

            string topicName = _metaData[TopicConstant.TopicName] as string;

            topicName = topicName.Split(TopicConstant.TopicSeperator)[1];

            commandName = "MessagingService.Publish";
            details.Append("Topic : " + topicName);
            details.Append(" ; ");
            string size = _value != null ? ((UserBinaryObject)_value).Size.ToString() : "0";

            details.Append("Size : " + size);
            details.Append(" ; ");
            TimeSpan expirationTime = new TimeSpan(_command.expiration);
            string   expiration     = expirationTime != TimeSpan.MaxValue ? expirationTime.ToString() : "NO_EXPIRATION";

            details.Append("Expiratoin : " + expiration);
            details.Append(" ; ");

            bool           notifyOnFailure = bool.Parse(_metaData[TopicConstant.NotifyOption] as string);
            DeliveryOption deliveryOption  = (DeliveryOption)(int.Parse(_metaData[TopicConstant.DeliveryOption] as string));

            details.Append("DeliveryOption : " + deliveryOption);
            details.Append(" ; ");
            details.Append("NotifyOnDeliveryFailure : " + notifyOnFailure);
            details.Append(" ; ");


            //details.AppendLine("Dependency: " + cmdInfo. != null ? "true" : "false");
            return(details.ToString());
        }
Exemple #13
0
        private void loadAddressEditMode()
        {
            int id = 0;

            if (DropdownNickName.SelectedIndex >= 0)
            {
                if (int.TryParse(DropdownNickName.SelectedValue, out id))
                {
                    DeliveryOption deliveryOption = getSelectedAddress(id,
                                                                       (DeliveryOptionType)
                                                                       Enum.Parse(typeof(DeliveryOptionType),
                                                                                  DeliveryType.SelectedValue));
                    if (deliveryOption != null)
                    {
                        pAddress.InnerHtml = ProductsBase.GetShippingProvider()
                                             .FormatShippingAddress(deliveryOption,
                                                                    getDeliveryOptionTypeFromDropdown(
                                                                        DeliveryType),
                                                                    ShoppingCart != null &&
                                                                    ShoppingCart.DeliveryInfo != null
                                                                                    ? ShoppingCart.DeliveryInfo
                                                                    .Description
                                                                                    : string.Empty, true);
                    }
                }
            }
        }
Exemple #14
0
 // Alle Felder, die NOT NULL sind, werden hier gesetzt.
 public Store(string location, string floor, string companyName, StoreState state, DeliveryOption deliveryOption)
 {
     Location       = location;
     Floor          = floor;
     CompanyName    = companyName;
     State          = state;
     DeliveryOption = deliveryOption;
 }
Exemple #15
0
        public ActionResult DeleteConfirmed(int id)
        {
            DeliveryOption deliveryOption = db.DeliveryOption.Find(id);

            db.DeliveryOption.Remove(deliveryOption);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemple #16
0
        [Authorize(AppConst.AccessPolicies.Secret)] /// Done
        public async Task <IActionResult> Put([FromBody] DeliveryOption modifiedDeliveryOption)
        {
            try
            {
                /// get the current category
                DeliveryOption currentDeliveryOption = await _DbContext.DeliveryOptions
                                                       .SingleOrDefaultAsync(c => c.Id == modifiedDeliveryOption.Id)
                                                       .ConfigureAwait(false);

                // if the current category does not exists
                if (currentDeliveryOption == null)
                {
                    CoreFunc.Error(ref ErrorsList, "Category Not Found");
                    return(NotFound(ErrorsList));
                }

                if (await _DbContext.DeliveryOptions
                    .AnyAsync(d => d.Name.Equals(modifiedDeliveryOption.Name) && d.Id != modifiedDeliveryOption.Id).ConfigureAwait(false))
                {
                    /// extract the errors and return bad request containing the errors
                    CoreFunc.Error(ref ErrorsList, "Delivery Option Name already exists.");
                    return(StatusCode(412, ErrorsList));
                }

                currentDeliveryOption.Name = modifiedDeliveryOption.Name;
                if (!(currentDeliveryOption.IsPremitive && currentDeliveryOption.MinimumOrderTotal == 0))
                {
                    currentDeliveryOption.MinimumOrderTotal = modifiedDeliveryOption.MinimumOrderTotal;
                }
                if (!(currentDeliveryOption.IsPremitive && currentDeliveryOption.Price == 0))
                {
                    currentDeliveryOption.Price = modifiedDeliveryOption.Price;
                }


                TryValidateModel(currentDeliveryOption);

                if (!ModelState.IsValid)
                {
                    CoreFunc.ExtractErrors(ModelState, ref ErrorsList);
                    return(UnprocessableEntity(ErrorsList));
                }

                _DbContext.DeliveryOptions.Update(currentDeliveryOption);

                await _DbContext.SaveChangesAsync().ConfigureAwait(false);


                return(Ok(currentDeliveryOption));
            }
            catch (Exception ex)
            {
                CoreFunc.Error(ref ErrorsList, _LoggingService.LogException(Request.Path, ex, User));
                return(StatusCode(417, ErrorsList));
            }
        }
Exemple #17
0
        /// <summary>
        /// Publishes the messages.
        /// </summary>
        /// <param name="message"></param>
        /// <param name="deliverOption"></param>
        /// <param name="notifyDeliveryFailure"></param>
        /// <exception cref="NotImplementedException"></exception>
        public void Publish(Message message, DeliveryOption deliverOption, bool notifyDeliveryFailure = false)
        {
            if (TopicSearchOptions.ByName != _searchOptions)
            {
                throw new OperationFailedException(ErrorCodes.PubSub.PATTERN_BASED_PUBLISHING_NOT_ALLOWED, ErrorMessages.GetErrorMessage(ErrorCodes.PubSub.PATTERN_BASED_PUBLISHING_NOT_ALLOWED));
            }
            try
            {
                _readerWriterLock.AcquireReaderLock(Timeout.Infinite);

                if (message == null)
                {
                    throw new ArgumentNullException("message");
                }
                if (_isDisposed)
                {
                    throw new OperationFailedException(ErrorCodes.PubSub.TOPIC_DISPOSED, ErrorMessages.GetErrorMessage(ErrorCodes.PubSub.TOPIC_DISPOSED, Name));
                }

                UsageStats stats = new UsageStats();
                stats.BeginSample();
                BitSet flagMap = new BitSet();
                long   size    = 0;
                object value   = message.Payload;


                value = _cacheImpl.SafeSerialize(value, _cacheImpl.Name, ref flagMap, _cacheImpl, ref size, UserObjectType.CacheItem);


                if (_perfStatsCollector != null && value != null && value is byte[])
                {
                    _perfStatsCollector.IncrementAvgItemSize(((byte[])value).Length);
                }

                Hashtable metaInfo = new Hashtable();
                metaInfo.Add(TopicConstant.TopicName, TopicConstant.TopicTag + _topicName);
                metaInfo.Add(TopicConstant.DeliveryOption, ((int)deliverOption).ToString());
                metaInfo.Add(TopicConstant.NotifyOption, notifyDeliveryFailure.ToString());

                long expiration = GetExpirationTime(message);

                _cacheImpl.PublishMessage(message.MessageId, value, message.CreationTime.Ticks, expiration, metaInfo, flagMap);

                if (_perfStatsCollector != null)
                {
                    stats.EndSample();
                    _perfStatsCollector.IncrementMsecPerMessagePublish(stats.Current);
                    _perfStatsCollector.IncrementMessagePublishedPerSec();
                }
            }
            finally
            {
                _readerWriterLock.ReleaseReaderLock();
            }
        }
        private void RenderDeletePickupView()
        {
            bool isXML = true;

            this.divAddPickUp.Visible    = false;
            this.divDeletePickUp.Visible = true;
            this.btnContinue.Text        = GetLocalResourceObject("btnContinueDelete") as string;

            ShippingAddress_V01 shipAddr = new ShippingAddress_V01();

            shipAddr.Address         = new Address_V01();
            shipAddr.Address.Country = CountryCode;

            var deliveryOptionList = (this.Page as ProductsBase).GetShippingProvider().
                                     GetDeliveryOptions(DeliveryOptionType.Pickup, shipAddr);

            DeliveryOption pickupDeliveryOption = deliveryOptionList.Find(p => p.Id == this.WorkedUponDeliveryOptionId);

            this.lblName.Text = pickupDeliveryOption.Description;

            string      controlPath = getDeleteAddressControlPath(ref isXML);
            AddressBase addressBase = new AddressControl();

            addressBase.XMLFile = controlPath;
            this.colDeletePickUp.Controls.Add((Control)addressBase);

            addressBase.DataContext = pickupDeliveryOption;

            var pickUpLocationPreferences = (this.Page as ProductsBase).GetShippingProvider().
                                            GetPickupLocationsPreferences(
                (this.Page as ProductsBase).DistributorID,
                CountryCode);
            PickupLocationPreference_V01 selectedPickupPreference = pickUpLocationPreferences.Find
                                                                        (p => p.PickupLocationID == this.WorkedUponDeliveryOptionId);

            if (selectedPickupPreference != null)
            {
                this.lblDeleteIsPrimaryText.Text = selectedPickupPreference.IsPrimary
                                                       ? GetLocalResourceObject("PrimaryYes.Text") as string
                                                       : GetLocalResourceObject("PrimaryNo.Text") as string;
                this.lblDeleteNicknameText.Text = selectedPickupPreference.PickupLocationNickname;

                if (selectedPickupPreference.IsPrimary) //Eval UC:3.5.3.7 (deleting primary)
                {
                    this.lblErrors.Text = PlatformResources.GetGlobalResourceString("ErrorMessage",
                                                                                    "PrimaryPickupPreferenceDeleteNotAllowed");
                    this.btnContinue.Enabled = false;
                    return;
                }
                else //Eval UC:3.5.3.6 (deleting non-primary)
                {
                    this.btnContinue.Enabled = true;
                }
            }
        }
Exemple #19
0
        public ActionResult Create([Bind(Include = "Id,Name,Active")] DeliveryOption deliveryOption)
        {
            if (ModelState.IsValid)
            {
                db.DeliveryOptions.Add(deliveryOption);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(deliveryOption));
        }
Exemple #20
0
        private void DeliveryNormalTapGestureRecognizer_OnTapped(object sender, EventArgs e)
        {
            Frame          senderFrame = (Frame)sender;
            DeliveryOption shopi       = new DeliveryOption("Normal Shipping", 35, "normal_shipping.png");

            senderFrame.HasShadow          = true;
            ExpressShippingFrame.HasShadow = false;
            //ItemPair bk = senderFrame.BindingContext as ItemPair;
            DeliveryIsSelected = true;
            DisplayAlert("Frame Tapped ", "Delivery Name : " + shopi.Name + " Delivery Price : " + shopi.Price, "Ok");
        }
Exemple #21
0
        public void Publish(Message message, DeliveryOption deliverOption, bool notifyDeliveryFailure = false)
        {
            try
            {
                _readerWriterLock.AcquireReaderLock(Timeout.Infinite);

                if (message == null)
                {
                    throw new ArgumentNullException("message");
                }
                if (_isDisposed)
                {
                    throw new Exception(string.Format("Topic '{0}' is disposed.", Name));
                }

                UsageStats stats = new UsageStats();
                stats.BeginSample();
                BitSet flagMap = new BitSet();
                long   size    = 0;
                object value   = message.Payload;


                value = _cacheImpl.SafeSerialize(value, _cacheImpl.Name, ref flagMap, _cacheImpl, ref size);


                if (_perfStatsCollector != null && value != null && value is byte[])
                {
                    _perfStatsCollector.IncrementAvgItemSize(((byte[])value).Length);
                }


                Hashtable metaInfo = new Hashtable();
                metaInfo.Add(TopicConstant.TopicName, TopicConstant.TopicTag + _topicName);
                metaInfo.Add(TopicConstant.DeliveryOption, ((int)deliverOption).ToString());
                metaInfo.Add(TopicConstant.NotifyOption, notifyDeliveryFailure.ToString());

                long expiration = GetExpirationTime(message);

                _cacheImpl.PublishMessage(message.MessageId, value, message.CreationTime.Ticks, expiration, metaInfo,
                                          flagMap);

                if (_perfStatsCollector != null)
                {
                    stats.EndSample();
                    _perfStatsCollector.IncrementMsecPerMessagePublish(stats.Current);
                    _perfStatsCollector.IncrementMessagePublishedPerSec();
                }
            }
            finally
            {
                _readerWriterLock.ReleaseReaderLock();
            }
        }
Exemple #22
0
        public async Task EditAsync(DeliveryOption _deliveryOption)
        {
            var _deliveryOptionToEdit = await GetById(_deliveryOption.Id);

            if (_deliveryOptionToEdit != null)
            {
                _deliveryOptionToEdit.Title       = _deliveryOption.Title;
                _deliveryOptionToEdit.Description = _deliveryOption.Description;

                await _context.SaveChangesAsync();
            }
        }
            /// <summary>
            /// Verifies whether the delivery mode is valid or not throwing <see cref="DataValidationException"></see> if not valid.
            /// </summary>
            /// <param name="deliveryModeId">The identifier of the delivery mode to be verified.</param>
            private void ValidateDeliveryMode(string deliveryModeId)
            {
                var            deliveryOptionDataRequest  = new GetDeliveryOptionDataRequest(deliveryModeId, new QueryResultSettings(new ColumnSet("CODE"), PagingInfo.AllRecords));
                var            deliveryOptionDataResponse = this.Context.Execute <EntityDataServiceResponse <DeliveryOption> >(deliveryOptionDataRequest);
                DeliveryOption deliveryOption             = deliveryOptionDataResponse.PagedEntityCollection.FirstOrDefault();

                if (deliveryOption == null)
                {
                    RetailLogger.Log.CrtWorkflowUpdateDeliverySpecificationRequestHandlerDeliveryModeNotFound(deliveryModeId);
                    throw new DataValidationException(DataValidationErrors.Microsoft_Dynamics_Commerce_Runtime_InvalidDeliveryMode, "The provided delivery mode if was not found.");
                }
            }
        private DeliveryOption getPrimaryPUFromCourierLocation()
        {
            try
            {
                pickupLocationPreferences =
                    (Page as ProductsBase).GetShippingProvider()
                    .GetPickupLocationsPreferences((Page as ProductsBase).DistributorID,
                                                   (Page as ProductsBase).CountryCode);
                if (pickupLocationPreferences == null)
                {
                    return(null);
                }

                primaryPickupLocationPreference = pickupLocationPreferences.Where(s => s.IsPrimary).First();
                if (null != primaryPickupLocationPreference)
                {
                    var shippingInfo =
                        ShippingProvider.GetShippingProvider(CountryCode)
                        .GetShippingInfoFromID(DistributorID, Locale,
                                               DeliveryOptionType.PickupFromCourier,
                                               primaryPickupLocationPreference.ID, 0);
                    if (null != shippingInfo)
                    {
                        var deliveryOption = new DeliveryOption(shippingInfo.WarehouseCode, shippingInfo.FreightCode,
                                                                DeliveryOptionType.Pickup);
                        if (shippingInfo.Address != null)
                        {
                            deliveryOption.Address = shippingInfo.Address.Address;
                        }

                        if (HLConfigManager.Configurations.DOConfiguration.IsChina)
                        {
                            deliveryOption.Alias       = primaryPickupLocationPreference.PickupLocationNickname;
                            deliveryOption.Id          = primaryPickupLocationPreference.PickupLocationID;
                            deliveryOption.Description = shippingInfo.Name + " " + shippingInfo.Description;
                        }
                        else
                        {
                            deliveryOption.Alias       = shippingInfo.Name;
                            deliveryOption.Id          = primaryPickupLocationPreference.PickupLocationID;
                            deliveryOption.Description = shippingInfo.Description;
                        }
                        return(deliveryOption);
                    }
                }
            }
            catch (Exception)
            {
                return(null);
            }
            return(null);
        }
Exemple #25
0
        private void DeliveryExpressTapGestureRecognizer_OnTapped(object sender, EventArgs e)
        {
            var senderFrame = (Frame)sender;
            var shopi       = new DeliveryOption("Express Shipping", 70, "express_shipping.png");

            senderFrame.HasShadow            = true;
            senderFrame.OutlineColor         = Color.FromHex("#443E43");
            NormalShippingFrame.HasShadow    = false;
            NormalShippingFrame.OutlineColor = Color.FromHex("#F9FAFC");
            //ItemPair bk = senderFrame.BindingContext as ItemPair;
            DeliveryIsSelected = true;
            //DisplayAlert("Frame Tapped ", "Delivery Name : " + shopi.Name + " Delivery Price : " + shopi.Price, "Ok");
        }
        public ActionResult SelectDelivery(int?id)
        {
            //POBIERANIE wybranej dostawy  - poprawic


            DeliveryOption delo = db.DeliveryOption.Find(id);



            deliversOptions.Add(delo);
            isNull = false;

            return(RedirectToAction("Index"));
        }
        public static string ToStringExtended(this DeliveryOption me)
        {
            switch (me)
            {
            case DeliveryOption.DropOffPoint:
                return("drop_off_point");

            case DeliveryOption.InStore:
                return("in_store");

            default:
                throw new NotImplementedException();
            }
        }
Exemple #28
0
        public ActionResult Edit([Bind(Include = "Id,Name,Active")] DeliveryOption deliveryOption)
        {
            string newNum = Request.Params["unum"];
            int    num    = 0;
            bool   res    = int.TryParse(newNum, out num);

            if (ModelState.IsValid)
            {
                db.Entry(deliveryOption).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index", new { unum = num }));
            }
            return(View(deliveryOption));
        }
Exemple #29
0
        // GET: DeliveryOptions/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DeliveryOption deliveryOption = db.DeliveryOptions.Find(id);

            if (deliveryOption == null)
            {
                return(HttpNotFound());
            }
            return(View(deliveryOption));
        }
        private object OrderBy(String sortKey, DeliveryOption pickupLocation)
        {
            switch (sortKey)
            {
            case "Alias":
                return(pickupLocation.Alias);

            case "Description":
                return(pickupLocation.Description);

            default:
                break;
            }
            return(pickupLocation.Description);
        }
        private IEnumerable<DeliveryOption> UspsParseRates(string response, IShipment package)
        {
            var optionCollection = new List<DeliveryOption>();

            using (var reader = new XmlTextReader(new StringReader(response)))
            {
                while (reader.Read())
                {
                    if ((reader.Name == "Error") && (reader.NodeType == XmlNodeType.Element))
                    {
                        string errorText = "";

                        while (reader.Read())
                        {
                            if ((reader.Name == "HelpContext") && (reader.NodeType == XmlNodeType.Element))
                            {
                                errorText += "USPS Help Context: " + reader.ReadString() + ", ";
                            }

                            if ((reader.Name == "Description") && (reader.NodeType == XmlNodeType.Element))
                            {
                                errorText += "Error Desc: " + reader.ReadString();
                            }
                        }

                        throw new ProviderException("USPS Error returned: " + errorText);
                    }

                    if ((reader.Name == "Postage") && (reader.NodeType == XmlNodeType.Element))
                    {
                        int serviceCode;
                        Int32.TryParse(reader.GetAttribute("CLASSID"), out serviceCode);
                        string postalRate = "";
                        String mailService = "";

                        reader.Read();

                        if (reader.Name == "MailService" && reader.NodeType == XmlNodeType.Element)
                        {
                            mailService = reader.ReadString();
                            reader.ReadEndElement();
                        }

                        if (reader.Name == "Rate" && reader.NodeType == XmlNodeType.Element)
                        {
                            postalRate = reader.ReadString();
                            reader.ReadEndElement();
                        }

                        IEnumerable<UspsDeliveryOption> options = GetDeliveryOptions(serviceCode, package);

                        if (options == null)
                        {
                            continue;
                        }

                        decimal rate;

                        if (!Decimal.TryParse(postalRate, out rate))
                        {
                            continue;
                        }

                        if (!String.IsNullOrEmpty(_processorSettings.UspsAdditionalHandlingCharge))
                        {
                            decimal additionalHandling;

                            if (Decimal.TryParse(_processorSettings.UspsAdditionalHandlingCharge, out additionalHandling))
                            {
                                rate += additionalHandling;
                            }
                        }

                        // Weed out unavailable service rates
                        //if (options.Any(option => option.Fits(weight, width, length, height)))
                        //{
                        var deliveryOption = new DeliveryOption { Rate = rate, Service = mailService, ServiceCode = serviceCode.ToString() };
                        optionCollection.Add(deliveryOption);
                        //}
                    }
                }

                return optionCollection;
            }
        }
        private IEnumerable<DeliveryOption> UpsParseRates(string response)
        {
            var optionCollection = new DeliveryOptionCollection();

            var sr = new StringReader(response);
            var tr = new XmlTextReader(sr);

            try
            {
                while (tr.Read())
                {
                    if ((tr.Name == "Error") && (tr.NodeType == XmlNodeType.Element))
                    {
                        string errorText = "";
                        while (tr.Read())
                        {
                            if ((tr.Name == "ErrorCode") && (tr.NodeType == XmlNodeType.Element))
                            {
                                errorText += "UPS Rating Error, Error Code: " + tr.ReadString() + ", ";
                            }
                            if ((tr.Name == "ErrorDescription") && (tr.NodeType == XmlNodeType.Element))
                            {
                                errorText += "Error Desc: " + tr.ReadString();
                            }
                        }
                        throw new ProviderException("UPS Error returned: " + errorText);
                    }
                    if ((tr.Name == "RatedShipment") && (tr.NodeType == XmlNodeType.Element))
                    {
                        string serviceCode = "";
                        string monetaryValue = "";
                        while (tr.Read())
                        {
                            if ((tr.Name == "Service") && (tr.NodeType == XmlNodeType.Element))
                            {
                                while (tr.Read())
                                {
                                    if ((tr.Name == "Code") && (tr.NodeType == XmlNodeType.Element))
                                    {
                                        serviceCode = tr.ReadString();
                                        tr.ReadEndElement();
                                    }
                                    if ((tr.Name == "Service") && (tr.NodeType == XmlNodeType.EndElement))
                                    {
                                        break;
                                    }
                                }
                            }
                            if (((tr.Name == "RatedShipment") && (tr.NodeType == XmlNodeType.EndElement)) || ((tr.Name == "RatedPackage") && (tr.NodeType == XmlNodeType.Element)))
                            {
                                break;
                            }
                            if ((tr.Name == "TotalCharges") && (tr.NodeType == XmlNodeType.Element))
                            {
                                while (tr.Read())
                                {
                                    if ((tr.Name == "MonetaryValue") && (tr.NodeType == XmlNodeType.Element))
                                    {
                                        monetaryValue = tr.ReadString();
                                        tr.ReadEndElement();
                                    }
                                    if ((tr.Name == "TotalCharges") && (tr.NodeType == XmlNodeType.EndElement))
                                    {
                                        break;
                                    }
                                }
                            }
                        }

                        var service = serviceCode;
                        var rate = Convert.ToDecimal(monetaryValue);

                        // tack on additional handling charge for each bag
                        if (!String.IsNullOrEmpty(_processorSettings.UpsAdditionalHandlingCharge))
                        {
                            decimal additionalHandling = Convert.ToDecimal(_processorSettings.UpsAdditionalHandlingCharge);
                        }

                        //Weed out unwanted or unkown service rates
                        if (service.ToUpper() != "UNKNOWN" && IncludedService(serviceCode))
                        {
                            var option = new DeliveryOption { Rate = rate, Service = service };
                            optionCollection.Add(option);
                        }
                    }
                }
                sr.Dispose();
                return optionCollection;
            }
            catch (SystemException ex)
            {
                throw new SystemException(ex.Message);
            }
            finally
            {
                sr.Close();
                tr.Close();
            }
        }
 public void Given()
 {
     _freeDeliveryThreshold = 50m;
     
     _deliveryOption = new DeliveryOption(_freeDeliveryThreshold, 10m, null);
 }