Beispiel #1
0
        public virtual ActionResult AddtoBasket(BasketAddModel model)
        {
            var basketModel = new BasketAddModel
            {
                BasketId                = Sanitizer.GetSafeHtmlFragment(model.BasketId),
                DisplayOrder            = model.DisplayOrder,
                ProductId               = Sanitizer.GetSafeHtmlFragment(model.ProductId),
                Qty                     = model.Qty,
                ItemType                = model.ItemType,
                SubscriptionPlanId      = Sanitizer.GetSafeHtmlFragment(model.SubscriptionPlanId),
                PostCode                = model.PostCode,
                SubscriptionTermId      = Sanitizer.GetSafeHtmlFragment(model.SubscriptionTermId),
                UserSubscriptionPricing = model.UserSubscriptionPricing
            };

            if (basketModel.Qty > 0)
            {
                var resp = ValidateBasket(basketModel.BasketId, basketModel.ProductId, basketModel.Qty);
                if (resp)
                {
                    var basketData = _basketApi.AddToBasket(basketModel);
                    return(JsonSuccess(basketData, JsonRequestBehavior.AllowGet));
                }
                return(JsonSuccess(false, JsonRequestBehavior.AllowGet));
            }
            var basket = _basketApi.AddToBasket(basketModel);

            return(JsonSuccess(basket, JsonRequestBehavior.AllowGet));
        }
Beispiel #2
0
        public virtual ActionResult ReOrder(string id)
        {
            var result = _orderRepository.GetOrdDetail(Sanitizer.GetSafeHtmlFragment(id));
            var model  = new List <BasketAddModel>();

            if (result.Result != null && result.Result.Items.Any())
            {
                foreach (var item in result.Result.Items)
                {
                    var line = new BasketAddModel()
                    {
                        StockCode       = item.StockCode,
                        Qty             = item.Qty,
                        CustomInfo1     = item.CustomInfo1,
                        CustomInfo2     = item.CustomInfo2,
                        CustomInfo3     = item.CustomInfo3,
                        CustomInfo4     = item.CustomInfo4,
                        CustomInfo5     = item.CustomInfo5,
                        ParentProductId = item.ParentProductId.ToString()
                    };
                    model.Add(line);
                }
            }
            var basket = _basketApi.BulkAddProduct(model);

            return(JsonSuccess(basket, JsonRequestBehavior.AllowGet));
        }
Beispiel #3
0
        public Entity Handle(BasketAddModel model)
        {
            var account = GetAccount();

            var basket = BasketRepository.Get(account);

            basket.AddItem(ItemRepository.Get(model.Id));
            BasketRepository.Save(account, basket);

            return(BuildEntity(basket, account));
        }
Beispiel #4
0
 public IActionResult Add([FromBody] BasketAddModel basketAddModel)
 {
     if (basketAddModel == null)
     {
         return(BadRequest("Invalid form"));
     }
     // soit par l'Id soit par autre chose
     //var user = _userService.Get(x => x.Id == Un Genre didée);
     //var product = _productService.Get(x => x.Id == basketAddModel.ProductId);
     //var basket = new Basket(user, product);
     //_basketService.Add(basket);
     return(null);
 }
Beispiel #5
0
        public ActionResult AddtoBasket(BasketAddModel model)
        {
            var basketModel = new BasketAddModel
            {
                BasketId       = Sanitizer.GetSafeHtmlFragment(model.BasketId),
                DisplayOrder   = model.DisplayOrder,
                ProductId      = Sanitizer.GetSafeHtmlFragment(model.ProductId),
                Qty            = model.Qty,
                ItemType       = model.ItemType,
                SubscriptionId = Sanitizer.GetSafeHtmlFragment(model.SubscriptionId),
                PostCode       = model.PostCode
            };
            var basket = _basketApi.AddToBasket(basketModel);

            SiteUtils.SetBasketAction(basket?.Result.Id);
            return(JsonSuccess(basket?.Result, JsonRequestBehavior.AllowGet));
        }
Beispiel #6
0
        public ResponseModel <BasketModel> AddToBasket(BasketAddModel basketLine)
        {
            Guid basketId;

            Guid.TryParse(basketLine.BasketId, out basketId);
            var result = CallApi <BasketModel>(string.Format(ApiUrls.AddToBasket, basketId), JsonConvert.SerializeObject(basketLine), Method.POST);

            if (result.Result != null && !result.Result.IsQuote)
            {
                var cookie_basketId = new System.Web.HttpCookie(Constants.COOKIE_BASKETID)
                {
                    HttpOnly = true, Value = result.Result.Id, Expires = DateTime.Now.AddDays(Constants.COOKIE_DEVICEID_EXPIRES_DAYS)
                };
                if ((result.Result.LineItems == null || result.Result.LineItems.Count == 0))
                {
                    cookie_basketId.Expires = DateTime.Now.AddDays(-1);
                }
                System.Web.HttpContext.Current.Response.Cookies.Add(cookie_basketId);
            }
            return(result);
        }
 public Entity Post(BasketAddModel model)
 {
     return(new BasketModule(Request).Handle(model));
 }