public async Task <IActionResult> AddInventory(string ShopId, string Name, string SKU, string Option, string Category)
        {
            ClaimsPrincipal  principal   = HttpContext.User as ClaimsPrincipal;
            var              UserId      = _userManager.GetUserId(principal);
            UsersShoperToken shop        = _dbContext.ShoperToken.First <UsersShoperToken>(x => (x.UserID == UserId && x.Id == Int32.Parse(ShopId)));
            Inventories      inventories = new Inventories()
            {
                ShopUrl  = shop.ShopUrl,
                Sku      = SKU,
                Category = Category,
                Name     = Name,
                Option   = Option,
                UserID   = UserId,
                ShopId   = ShopId,
                Status   = "Otwarta"
            };

            _dbContext.Inventories.Add(inventories);
            _dbContext.SaveChanges();
            List <Inventories> _inventories   = _dbContext.Inventories.Where <Inventories>(x => (x.UserID == UserId && x.ShopId == ShopId)).ToList <Inventories>();
            ShopCategories     shopCategories = await ShopCategories.GetCategories(shop.ShopUrl, shop.Token);

            Tuple <ShopCategories, string, List <Inventories> > tuple = new Tuple <ShopCategories, string, List <Inventories> >(shopCategories, ShopId, _inventories);

            return(View("Inventories", tuple));
        }
        public async Task <IActionResult> Inventory(string ShopId)
        {
            ClaimsPrincipal    principal      = HttpContext.User as ClaimsPrincipal;
            var                UserId         = _userManager.GetUserId(principal);
            UsersShoperToken   shop           = _dbContext.ShoperToken.First <UsersShoperToken>(x => (x.UserID == UserId && x.Id == Int32.Parse(ShopId)));
            List <Inventories> inventories    = _dbContext.Inventories.Where <Inventories>(x => (x.UserID == UserId && x.ShopId == ShopId)).ToList <Inventories>();
            ShopCategories     shopCategories = await ShopCategories.GetCategories(shop.ShopUrl, shop.Token);

            Tuple <ShopCategories, string, List <Inventories> > tuple = new Tuple <ShopCategories, string, List <Inventories> >(shopCategories, ShopId, inventories);

            return(View("Inventories", tuple));
        }
        protected override void ShowPage()
        {
            if (userid == -1)
            {
                AddErrLine("你尚未登录");
                return;
            }
            if (config.Enablemall < 2)
            {
                AddErrLine("当前操作只有在开启商城(高级)模式时才可以使用!");
                return;
            }

            user     = Users.GetUserInfo(userid);
            shopinfo = Shops.GetShopByUserId(user.Uid);

            if (!DNTRequest.IsPost())
            {
                shopcategorydt       = ShopCategories.GetShopCategoryTable(shopinfo.Shopid);
                shopcategorydt_count = shopcategorydt.Rows.Count;
                shopcategorydata     = ShopCategories.GetShopCategoryJson(shopcategorydt);
                categoryoptions      = ShopCategories.GetShopCategoryOption(shopcategorydt, false);
            }
            else
            {
                if (ForumUtils.IsCrossSitePost())
                {
                    AddErrLine("您的请求来路不正确,无法提交。如果您安装了某种默认屏蔽来路信息的个人防火墙软件(如 Norton Internet Security),请设置其不要禁止来路信息后再试。");
                    return;
                }
                string operation = DNTRequest.GetFormString("operation");
                if (operation != "add")
                {
                    int shopcategoryid = DNTRequest.GetFormInt("categoryid", 0);
                    if (shopcategoryid <= 0)
                    {
                        AddErrLine("店铺商品分类参数无效<br />");
                        return;
                    }

                    shopcategoryinfo = ShopCategories.GetShopCategoryByCategoryId(shopcategoryid);
                }

                shopid = 0;
                item   = DNTRequest.GetString("item");

                switch (operation)
                {
                case "delete":     //删除分类
                {
                    if (shopcategoryinfo == null || shopcategoryinfo.Categoryid <= 0)
                    {
                        AddErrLine("要删除的店铺商品分类参数无效<br />");
                        return;
                    }
                    if (!ShopCategories.DeleteCategoryByCategoryId(shopcategoryinfo))
                    {
                        AddErrLine("对不起,当前节点下面还有子结点,因此不能删除<br />");
                        return;
                    }
                    break;
                }

                case "edit":     //编辑分类名称
                {
                    if (shopcategoryinfo == null || shopcategoryinfo.Categoryid <= 0)
                    {
                        AddErrLine("要修改的店铺商品分类参数无效<br />");
                        return;
                    }
                    string editname = DNTRequest.GetString("editcategoryname");
                    if (editname == "")
                    {
                        AddErrLine("店铺商品分类名称未变更或不能为空<br />");
                        return;
                    }
                    shopcategoryinfo.Name = editname;
                    ShopCategories.UpdateShopCategory(shopcategoryinfo);
                    break;
                }

                case "add":     //添加分类
                {
                    shopcategoryinfo        = new Shopcategoryinfo();
                    shopcategoryinfo.Name   = DNTRequest.GetFormString("addcategoryname");
                    shopcategoryinfo.Shopid = shopinfo.Shopid;

                    int addtype = DNTRequest.GetInt("addtype", 0);
                    if (addtype > 0 && addtype <= 2)
                    {
                        int targetcategoryid = DNTRequest.GetFormInt("selectcategoryid", 0);

                        if (targetcategoryid <= 0)
                        {
                            AddErrLine("要添加到的目标分类参数无效<br />");
                            return;
                        }

                        targetshopcategoryinfo = ShopCategories.GetShopCategoryByCategoryId(targetcategoryid);
                        if (targetshopcategoryinfo == null || targetshopcategoryinfo.Categoryid <= 0)
                        {
                            AddErrLine("要添加到的目标分类参数无效<br />");
                            return;
                        }
                    }

                    ShopCategories.CreateShopCategory(shopcategoryinfo, targetshopcategoryinfo, addtype);
                    break;
                }

                case "move":     //移动分类
                {
                    int targetcategoryid = DNTRequest.GetFormInt("targetcategoryid", 0);

                    if (targetcategoryid <= 0)
                    {
                        AddErrLine("要移动到的目标分类参数无效<br />");
                        return;
                    }

                    targetshopcategoryinfo = ShopCategories.GetShopCategoryByCategoryId(targetcategoryid);
                    if (targetshopcategoryinfo == null || targetshopcategoryinfo.Categoryid <= 0)
                    {
                        AddErrLine("要移动到的目标分类参数无效<br />");
                        return;
                    }
                    string target_parentidlist = "," + targetshopcategoryinfo.Parentidlist.Trim() + ",";
                    if (target_parentidlist.IndexOf("," + shopcategoryinfo.Categoryid.ToString() + ",") > 0)
                    {
                        AddErrLine("不能将当前分类移动到其子分类<br />");
                        return;
                    }
                    ShopCategories.MoveShopCategory(shopcategoryinfo, targetshopcategoryinfo, DNTRequest.GetInt("isaschildnode", 0) == 1 ? true : false);
                    break;
                }
                }

                SetUrl("usercpshopcategory.aspx?item=" + item);
                SetMetaRefresh();
                AddMsgLine("操作成功. <br />(<a href=\"usercpmygoods.aspx?item=" + item + "\">点击这里返回</a>)<br />");
            }
        }
        protected override void ShowPage()
        {
            if (userid == -1)
            {
                AddErrLine("你尚未登录");
                return;
            }

            if (config.Enablemall < 2)
            {
                AddErrLine("当前操作只有在开启商城(高级)模式时才可以使用!");
                return;
            }

            user = Users.GetUserInfo(userid);

            if (item == "")
            {
                item = "shopcategory";
            }

            if (item == "recommend")
            {
                recommendgoodslist = Goods.GetGoodsRecommendManageList(userid, 6, 1, "");
            }

            reccount = (shopgoodscategoryid <= 0) ? Goods.GetGoodsCountBySellerUid(userid, true) : Goods.GetGoodsCountByShopCategory(shopgoodscategoryid, "");

            // 得到分页大小设置
            int pagesize = 10;

            //修正请求页数中可能的错误
            if (pageid < 1)
            {
                pageid = 1;
            }

            //获取总页数
            pagecount = reccount % pagesize == 0 ? reccount / pagesize : reccount / pagesize + 1;
            if (pagecount == 0)
            {
                pagecount = 1;
            }

            if (pageid > pagecount)
            {
                pageid = pagecount;
            }

            shopinfo = Shops.GetShopByUserId(user.Uid);
            //如果不是提交...
            if (!ispost)
            {
                if (shopgoodscategoryid <= 0)
                {
                    goodslist = Goods.GetGoodsListBySellerUID(userid, true, pagesize, pageid, "lastupdate", 1);
                }
                else
                {
                    goodslist = Goods.GetGoodsInfoListByShopCategory(shopgoodscategoryid, pagesize, pageid, "", "lastupdate", 1);
                }

                pagenumbers          = Utils.GetPageNumbers(pageid, pagecount, "usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid, 8);
                shopcategorydt       = ShopCategories.GetShopCategoryTable(shopinfo.Shopid);
                shopcategorydt_count = shopcategorydt.Rows.Count;
                shopcategorydata     = ShopCategories.GetShopCategoryJson(shopcategorydt);
                categoryoptions      = ShopCategories.GetShopCategoryOption(shopcategorydt, true);
            }
            else
            {
                string operation = DNTRequest.GetString("operation");

                if (operation == "")
                {
                    operation = "movecategory";
                }

                switch (operation)
                {
                case "movecategory":     //移动到商品分类
                {
                    if (goodsidlist == "")
                    {
                        AddErrLine("你未选中任何商品");
                        return;
                    }

                    int selectcategoryid = DNTRequest.GetInt("selectcategoryid", 0);
                    if (selectcategoryid <= 0)
                    {
                        AddErrLine("你未选择要移动到的商品分类");
                        return;
                    }
                    if (Goods.IsSeller(goodsidlist, userid))
                    {
                        if (Goods.MoveGoodsShopCategory(goodsidlist, selectcategoryid) > 0)
                        {
                            SetUrl("usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid);
                            SetMetaRefresh();
                            AddMsgLine("操作成功. <br />(<a href=\"usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid + "\">点击这里返回</a>)<br />");
                        }
                        else
                        {
                            AddErrLine("商品参数信息无效或所选商品已在该分类下");
                            return;
                        }
                    }
                    else
                    {
                        AddErrLine("你不是当前商品的卖家,因此无法移动该商品到指定的分类");
                        return;
                    }
                    break;
                }

                case "removecategory":     //移除商品分类
                {
                    int removeshopgoodscategoryid = DNTRequest.GetInt("removeshopgoodscategoryid", 0);

                    int removegoodsid = DNTRequest.GetInt("removegoodsid", 0);

                    if (removeshopgoodscategoryid <= 0 || removegoodsid <= 0)
                    {
                        AddErrLine("移除分类信息错误");
                        return;
                    }

                    if (Goods.IsSeller(removegoodsid.ToString(), userid))
                    {
                        if (Goods.RemoveGoodsShopCategory(removegoodsid, removeshopgoodscategoryid) > 0)
                        {
                            SetUrl("usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid);
                            SetMetaRefresh();
                            AddMsgLine("操作成功. <br />(<a href=\"usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid + "\">点击这里返回</a>)<br />");
                        }
                        else
                        {
                            AddErrLine("商品参数信息无效或所选商品已在该分类下");
                            return;
                        }
                    }
                    else
                    {
                        AddErrLine("您不是当前商品的卖家,因此无法移除该商品的分类");
                        return;
                    }
                    break;
                }

                case "recommend":     //推荐商品
                {
                    if (goodsidlist == "")
                    {
                        AddErrLine("您未选中任何商品");
                        return;
                    }
                    if ((recommendgoodslist.Count + goodsidlist.Split(',').Length) > 5)
                    {
                        AddErrLine("您推荐的商品总数已大于5, 因为无法进行推荐");
                        return;
                    }

                    if (Goods.IsSeller(goodsidlist, userid))
                    {
                        Goods.RecommendGoods(goodsidlist);
                        SetUrl("usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid);
                        SetMetaRefresh();
                        AddMsgLine("操作成功. <br />(<a href=\"usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid + "\">点击这里返回</a>)<br />");
                    }
                    else
                    {
                        AddErrLine("您不是当前商品的卖家,因此无法推荐该商品");
                        return;
                    }
                    break;
                }

                case "cancelrecommend":     //取消推荐商品
                {
                    goodsidlist = DNTRequest.GetString("cancelrecommendgoodsid");
                    if (goodsidlist == "")
                    {
                        AddErrLine("您未选中任何商品");
                        return;
                    }

                    if (Goods.IsSeller(goodsidlist, userid))
                    {
                        Goods.CancelRecommendGoods(goodsidlist);
                        SetUrl("usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid);
                        SetMetaRefresh();
                        AddMsgLine("操作成功. <br />(<a href=\"usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid + "\">点击这里返回</a>)<br />");
                    }
                    else
                    {
                        AddErrLine("你不是当前商品的卖家,因此无法取消推荐该商品");
                        return;
                    }
                    break;
                }

                case "updatedisplayorder":     //更新商品显示顺序
                {
                    foreach (Goodsinfo goodsinfo in recommendgoodslist)
                    {
                        //当显示顺序值发生变化时,则更新相应的商品信息
                        if (goodsinfo.Displayorder != DNTRequest.GetInt("displayorder_" + goodsinfo.Goodsid, 0))
                        {
                            goodsinfo.Displayorder = DNTRequest.GetInt("displayorder_" + goodsinfo.Goodsid, 0);
                            Goods.UpdateGoods(goodsinfo);
                        }
                    }

                    SetUrl("usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid);
                    SetMetaRefresh();
                    AddMsgLine("操作成功. <br />(<a href=\"usercpshopgoodsmanage.aspx?item=" + item + "&shopgoodscategoryid=" + shopgoodscategoryid + "\">点击这里返回</a>)<br />");
                    break;
                }
                }
            }
        }