/// <summary>
        /// 勾选购物车
        /// </summary>
        /// <param name="sku"></param>
        /// <returns></returns>
        //public ActionResult SelectedItem(string sku, string selected = "1")
        public ActionResult SelectedItems([ModelBinder(typeof(JsonBinder <SelectedItem[]>))] SelectedItem[] skus)
        {
            if (skus == null || !skus.Any())
            {
                return(this.HandleError("参数错误:缺少商品号。"));
            }

            try
            {
                bool isOk = false;
                isOk = CartBll.SelectedItem(base.LoginUser.UserID, skus, base.DeliveryRegion, base.GetCart());//TODO:待增加销售区域
                if (isOk)
                {
                    return(this.HandleSuccess("添加成功!", this.GetShoppingCartItemsCount()));
                }
                else
                {
                    return(this.HandleError("添加失败"));
                }
            }
            catch (Exception exception)
            {
                return(this.HandleError(exception));
            }
        }
Exemple #2
0
        private static void AddCart(HttpContext context)
        {
            string mid    = context.Request["mid"];
            string mprice = context.Request["mprice"];
            string number = context.Request["number"];
            string pid    = context.Request["pid"];
            bool   res    = false;

            try
            {
                if (mid != null && mid != "")
                {
                    CartBll cartbll = new CartBll();
                    res = cartbll.InsertCart(Convert.ToInt32(mid), Convert.ToDecimal(mprice), Convert.ToInt32(number), Convert.ToInt32(pid));
                }
                if (res)
                {
                    context.Response.Write("sucess");
                }
                else
                {
                    context.Response.Write("fail");
                }
            }

            catch
            {
                context.Response.Write("false");
            }
        }
        public ActionResult AddItem(string sku, int qty)
        {
            if (string.IsNullOrWhiteSpace(sku))
            {
                return(this.HandleError("参数错误:缺少商品号。"));
            }

            if (qty < 1)
            {
                return(this.HandleError("最少购买一件选定的商品才能将其加入购物车。"));
            }

            try
            {
                bool isOk = CartBll.AddItemByUserId(base.LoginUser.UserID, sku, qty, language, base.ExchangeRate, base.DeliveryRegion);//TODO:待增加销售区域
                if (isOk)
                {
                    return(this.HandleSuccess("添加成功!", this.GetShoppingCartItemsCount()));
                }
                else
                {
                    return(this.HandleError("添加失败"));
                }
            }
            catch (Exception exception)
            {
                return(this.HandleError(exception));
            }
        }
        public ActionResult ModifyProduct(string sku, string newSku, int qty)
        {
            try
            {
                ViewBag.sku = newSku;
                if (string.IsNullOrEmpty(sku) || string.IsNullOrEmpty(newSku))
                {
                    return(this.HandleError("无法找到该商品"));
                }
                if (sku == newSku)
                {
                    return(this.HandleError("与当前商品相同"));
                }
                var isOk = CartBll.UpdateItemByUserId(newSku, base.LoginUser.UserID, sku, qty, base.language, base.ExchangeRate, base.DeliveryRegion);

                if (isOk)
                {
                    return(this.Items(newSku));
                }
                return(this.HandleError("商品更新失败"));
            }
            catch (Exception ex)
            {
                return(HandleError(ex));
            }
        }
Exemple #5
0
        private void BindList(int userid)
        {
            CartBll       cartbll  = new CartBll();
            List <T_Cart> cartlist = new List <T_Cart>();

            cartlist             = cartbll.GetCartListByUserId(userid);
            DataList1.DataSource = cartlist;
            DataList1.DataBind();
        }
Exemple #6
0
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            int count = Convert.ToInt32(context.Request["count"]);
            int id    = Convert.ToInt32(context.Request["cartid"]);

            bool flag = new CartBll().Update(id, count);

            context.Response.Write(flag);
        }
        /// <summary>
        /// 清空购物车。
        /// </summary>
        /// <returns>
        /// 返回购物车我的订单视图。
        /// </returns>
        /// <remarks>
        /// url:/shoppingcart/clearall
        /// </remarks>
        //[Login]
        //public ActionResult ClearAll()
        //{
        //    try
        //    {
        //        bool isOk = CartBll.ClearAll(base.LoginUser.UserID, base.DeliveryRegion);
        //        if (isOk)
        //        {
        //            return this.HandleSuccess("删除成功!");
        //        }
        //        else
        //        {
        //            return this.HandleError("更新失败");
        //        }
        //    }
        //    catch (Exception ex)
        //    {
        //        return HandleError(ex);
        //    }
        //}

        ///// <summary>
        ///// 清除下架商品
        ///// </summary>
        ///// <returns></returns>
        ///// <remarks>
        ///// url:/shoppingcart/ClearInvalidProducts
        ///// </remarks>
        //[Login]
        //public ActionResult ClearInvalidProducts(List<string> skus)
        //{
        //    try
        //    {
        //        bool isOk = CartBll.DeleteItemByUserId(base.LoginUser.UserID, skus.ToArray(), base.DeliveryRegion);//TODO:待增加销售区域
        //        if (isOk)
        //        {
        //            return this.HandleSuccess("删除成功!");
        //        }
        //        else
        //        {
        //            return this.HandleError("更新失败");
        //        }
        //    }
        //    catch (Exception ex)
        //    {
        //        return HandleError(ex);
        //    }
        //}
        #endregion

        #region Private

        /// <summary>
        /// 获取购物车总数量
        /// </summary>
        /// <returns></returns>
        private int GetShoppingCartItemsCount()
        {
            try
            {
                return(CartBll.GetMiniShoppingCart(base.LoginUser.UserID, base.language, base.DeliveryRegion));
            }
            catch (Exception ex)
            {
                LogHelper.Error("GetShoppingCartItemsCount", ex);
                return(0);
            }
        }
Exemple #8
0
        private void BindList()
        {
            int           userid = Convert.ToInt32(Request["id"]);
            List <T_Cart> model  = new List <T_Cart>();
            CartBll       bll    = new CartBll();

            model = bll.GetCartListByUserId(userid);
            if (model.Count() > 0)
            {
                this.cartdata.DataSource = model;
                this.cartdata.DataBind();
            }
        }
Exemple #9
0
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            int  cartId = Convert.ToInt32(context.Request["cartId"]);
            bool flag   = new CartBll().Delete(cartId);

            if (flag)
            {
                context.Response.Write("ok");
            }
            else
            {
                context.Response.Write("error");
            }
        }
Exemple #10
0
 public ActionResult Index()
 {
     if (this.LoginUser == null || this.LoginUser.Status != 1)
     {
         return(this.HandleError(MessageType.RequireAuthorize, ""));
     }
     try
     {
         var itemModel = base.GetCart();
         if (itemModel != null && itemModel.Items.Any())
         {
             if (itemModel.Items.Where(d => d.IsChecked).Count() > 0)
             {
                 var firstShopRealTaxType = itemModel.Items.Where(d => d.IsChecked).FirstOrDefault().RealTaxType;
                 if (firstShopRealTaxType == 1)
                 {
                     foreach (var productTwo in itemModel.HKSecWareHouseItems)
                     {
                         CartBll.updateShoppingCartByRealtype(base.LoginUser.UserID, productTwo.Sku, base.DeliveryRegion, false);
                     }
                     itemModel.HKSecWareHouseItems.ToList().FindAll(d => d.IsChecked).ForEach(c => c.IsChecked = false);
                 }
                 if (firstShopRealTaxType == 2)
                 {
                     foreach (var productOne in itemModel.HKOneWareHouseItems)
                     {
                         productOne.IsChecked = false;
                         CartBll.updateShoppingCartByRealtype(base.LoginUser.UserID, productOne.Sku, base.DeliveryRegion, false);
                     }
                     itemModel.HKOneWareHouseItems.ToList().FindAll(d => d.IsChecked).ForEach(c => c.IsChecked = false);
                 }
             }
         }
         return(this.View(itemModel));
     }
     catch (SFO2OException)
     {
         return(this.View(new CartViewModel(base.ExchangeRate)));
     }
     catch (Exception ex)
     {
         return(this.HandleError(ex));
     }
 }
Exemple #11
0
        private void DelCart(HttpContext context)
        {
            string carid = context.Request["carid"];
            //   string mprice = context.Request["mprice"];
            bool res = false;

            if (carid != null && carid != "")
            {
                CartBll cartbll = new CartBll();
                res = cartbll.DelCartById(Convert.ToInt32(carid));
            }
            if (res)
            {
                context.Response.Write("sucess");
            }
            else
            {
                context.Response.Write("fail");
            }
        }
Exemple #12
0
        private void AddOrder(HttpContext context)
        {
            OrderBll bll           = new OrderBll();
            string   card_birthday = context.Request["card_birthday"];
            string   paytype       = context.Request["paytype"];
            string   remark        = context.Request["remark"];
            string   bastdate      = context.Request["bastdate"];


            string     ordercode  = DateTime.Now.ToString("yyyyMMddffffff");
            AddressBll addressbll = new AddressBll();
            CartBll    carbll     = new CartBll();
            UserBll    userbll    = new UserBll();
            int        userid     = userbll.GetUserIdByToken();

            if (carbll.GetCartListByUserId(userid).Count() > 0)
            {
                if (addressbll.GetAddressByUserId() != null)
                {
                    if (bll.AddOrderByUserId(card_birthday, bastdate, paytype, remark, ordercode))
                    {
                        context.Response.Write(ordercode);
                    }


                    else
                    {
                        context.Response.Write("fail");
                    }
                }
                else
                {
                    context.Response.Write("addressfail");
                }
            }
            else
            {
                context.Response.Write("cartisnull");
            }
        }
Exemple #13
0
        public ActionResult UpdateQty(string sku, int qty)
        {
            if (string.IsNullOrWhiteSpace(sku))
            {
                return(this.HandleError("参数错误:缺少商品号。"));
            }

            if (qty < 1)
            {
                return(this.HandleError("最少购买一件选定的商品才能将其加入购物车。"));
            }

            try
            {
                bool isOk = CartBll.UpdateQtyByUserId(base.LoginUser.UserID, sku, qty, language, base.ExchangeRate, base.DeliveryRegion);//TODO:待增加销售区域
                if (isOk)
                {
                    return(this.HandleSuccess("更新成功!"));
                }
                else
                {
                    return(this.HandleError("更新失败"));
                }
            }
            catch (SFO2OException ex)
            {
                if (ex.InnerException != null)
                {
                    return(this.HandleError(ex.Message, data: ex.InnerException.Message));
                }
                else
                {
                    return(this.HandleError(ex));
                }
            }
            catch (Exception ex)
            {
                return(this.HandleError(ex));
            }
        }
Exemple #14
0
 private void GetCart(HttpContext context)
 {
     try
     {
         bool    res     = false;
         CartBll cartbll = new CartBll();
         UserBll userbll = new UserBll();
         int     userid  = userbll.GetUserIdByToken();
         if (userid != 0)
         {
             context.Response.Write(cartbll.GetCartNumByUserId(userid).ToString());
         }
         else
         {
             context.Response.Write("0");
         }
     }
     catch
     {
         context.Response.Write("0");
     }
 }
Exemple #15
0
        public ActionResult DeleteItems(string[] skus)
        {
            if (!skus.Any())
            {
                return(this.HandleError("参数错误:缺少商品号。"));
            }

            try
            {
                bool isOk = CartBll.DeleteItemByUserId(base.LoginUser.UserID, skus.ToArray(), base.DeliveryRegion);//TODO:待增加销售区域
                if (isOk)
                {
                    return(this.HandleSuccess("删除成功!"));
                }
                else
                {
                    return(this.HandleError("更新失败"));
                }
            }
            catch (Exception ex)
            {
                return(this.HandleError(ex));
            }
        }