public JsonResult deleteShoppingCartItem([FromBody] JObject data)
        {
            string sessionUserId   = HttpContext.Session.GetString("userId");
            string sessionPassword = HttpContext.Session.GetString("password");

            UserDAL userDal = new UserDAL();

            // 权限验证
            if (sessionUserId == null || userDal.getUserById(sessionUserId)?.password != sessionPassword)
            {
                return(new JsonResult(Return.Error("用户未登录或无权限访问", HttpStatusCodes.Status401Unauthorized)));
            }

            string itemId = data.Value <string>("item_id");

            ShoppingCartItemDAL shoppingCartItemDal = new ShoppingCartItemDAL();
            ShoppingCartItem    shoppingCartItem    = shoppingCartItemDal.getShoppingCartItemByUserIdAndItemId(sessionUserId, itemId);

            if (shoppingCartItem == null)
            {
                return(new JsonResult(Return.Error("找不到此购物车商品", StatusCodes.ItemNotFound)));
            }

            int result = shoppingCartItemDal.deleteShoppingCartItem(shoppingCartItem);

            return(new JsonResult(Return.Success(result)));
        }
        public JsonResult updateShoppingCartItem([FromBody] JObject data)
        {
            string sessionUserId   = HttpContext.Session.GetString("userId");
            string sessionPassword = HttpContext.Session.GetString("password");

            UserDAL userDal = new UserDAL();

            // 权限验证
            if (sessionUserId == null || userDal.getUserById(sessionUserId)?.password != sessionPassword)
            {
                return(new JsonResult(Return.Error("用户未登录或无权限访问", HttpStatusCodes.Status401Unauthorized)));
            }

            string itemId = data.Value <string>("item_id");

            ShoppingCartItemDAL shoppingCartItemDal = new ShoppingCartItemDAL();
            ShoppingCartItem    shoppingCartItem    = shoppingCartItemDal.getShoppingCartItemByUserIdAndItemId(sessionUserId, itemId);

            if (shoppingCartItem == null)
            {
                return(new JsonResult(Return.Error("找不到此购物车商品", StatusCodes.ItemNotFound)));
            }

            int?count = data.Value <int?>("count");

            if (count == null)
            {
                return(new JsonResult(Return.Error("数量不能为空", HttpStatusCodes.Status400BadRequest)));
            }

            shoppingCartItem.count = Math.Max(Math.Min((int)count, 99), 1);

            int result = shoppingCartItemDal.updateShoppingCartItem(shoppingCartItem);

            return(new JsonResult(Return.Success(new { count = shoppingCartItem.count })));
        }