Esempio n. 1
0
        public JsonResult addFavoriteItem([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"); // 商品 ID

            if (itemId == null)
            {
                return(new JsonResult(Return.Error("商品 ID 不能为空", HttpStatusCodes.Status400BadRequest)));
            }

            ItemDAL itemDal = new ItemDAL();

            if (itemDal.getItemById(itemId) == null)
            {
                return(new JsonResult(Return.Error("找不到此商品", StatusCodes.ItemNotFound)));
            }

            FavoriteItemDAL favoriteItemDal = new FavoriteItemDAL();
            bool            isFavoriteAdded = favoriteItemDal.toggleFavoriteItem(sessionUserId, itemId);

            var result = new { added = isFavoriteAdded }; // 返回是增加还是删除收藏项目

            return(new JsonResult(Return.Success(result)));
        }
Esempio n. 2
0
        public JsonResult listFavoriteItems([FromQuery] int page = 1)
        {
            // 登录验证
            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)));
            }

            FavoriteItemDAL favoriteItemDal = new FavoriteItemDAL();
            List <Item>     result          = favoriteItemDal.listFavoriteItemsByUserId(sessionUserId, page, pageSize);

            return(new JsonResult(Return.Success(result)));
        }