Esempio n. 1
0
        /// <summary>
        /// 增加数据
        /// </summary>
        /// <param name="adminId">管理员id</param>
        /// <param name="appId">公众号appid</param>
        /// <returns></returns>
        public WebResult <bool> CreateMenu(string token)
        {
            //提交的微信格式类集合
            List <MenuButton> menuList = new List <MenuButton>();
            var list = GetList(x => !x.IsDelete);
            //加载第一级菜单
            List <MpMenu> firstLevelMenu = list.Where(x => string.IsNullOrEmpty(x.ParentID)).ToList();

            if (firstLevelMenu != null && firstLevelMenu.Count > 0)
            {
                foreach (var item in firstLevelMenu)
                {
                    MenuButton menu = new MenuButton();
                    //查找该菜单是否有子级菜单
                    List <MpMenu> childrenList = list.Where(x => x.ParentID == item.ID).ToList();
                    if (childrenList != null && childrenList.Count != 0)
                    {
                        //有菜单 加载二级菜单
                        menu = MpMenuConvertToWxMenu(item, true);
                        menu.SubButtonList = ListMpMenuConvertToWxMenu(childrenList);
                    }
                    else
                    {
                        menu = MpMenuConvertToWxMenu(item, false);
                    }
                    menuList.Add(menu);
                }
            }


            //发送
            MenuFunction fuc = new MenuFunction();

            if (fuc.MenuDelete(token)["state"].ToString() == "success")
            {
                if (fuc.MenuCreate(token, menuList)["errcode"].ToString() != "0")
                {
                    return(Result(true));
                }
                else
                {
                    return(Result(false));
                }
            }
            else
            {
                return(Result(false, "提交菜单到微信服务器出错"));
            }
        }