private List <MenuJson> GenerateMenuInfo(string rolePermission, DataTable dtMenu) { List <MenuJson> list = new List <MenuJson>(); foreach (DataRow row in dtMenu.Rows) { int menuType = int.Parse(row["MenuType"].ToString()); if (menuType != 0) { continue; } MenuJson menu = new MenuJson(); menu.id = int.Parse(row["Id"].ToString()); menu.text = row["MenuText"].ToString(); menu.Url = row["Url"].ToString(); menu.MenuType = menuType; menu.ParentId = int.Parse(row["ParentId"].ToString()); menu.IsEnable = Convert.ToBoolean(row["IsEnable"]); GenerateChildren(menu, dtMenu, rolePermission.Split(',')); list.Add(menu); } return(list); }
// // GET: /Test/ public ActionResult Index() { MenuInfo menu = new MenuInfo("开始训练", MenuInfo.ButtonType.view, "http://wx.zzd123.com/wechat/Calendar"); MenuInfo menu2 = new MenuInfo("免费体验", new MenuInfo[] { new MenuInfo("免费行为测评", MenuInfo.ButtonType.view, "http://wx.zzd123.com/Free/FreeScale"), new MenuInfo("免费心理服务", MenuInfo.ButtonType.view, "http://wx.zzd123.com/Free/FreeHeartList") }); // MenuInfo menu2 = new MenuInfo("行为测评", MenuInfo.ButtonType.view, "http://www.sina.com"); //MenuInfo relatedInfo = new MenuInfo("相关链接", new MenuInfo[] { // new MenuInfo("公司介绍", MenuInfo.ButtonType.click, "Event_Company"), // new MenuInfo("官方网站", MenuInfo.ButtonType.view, "http://www.iqidi.com"), // new MenuInfo("提点建议", MenuInfo.ButtonType.click, "Event_Suggestion"), // new MenuInfo("联系客服", MenuInfo.ButtonType.click, "Event_Contact"), // new MenuInfo("发邮件", MenuInfo.ButtonType.view, "http://mail.qq.com/cgi-bin/qm_share?t=qm_mailme&email=S31yfX15fn8LOjplKCQm") //}); MenuJson menujson = new MenuJson(); menujson.button.AddRange(new MenuInfo[] { menu, menu2 }); string token = AccessTokenService.GetAccessToken(); string postData = JsonConvert.SerializeObject(menujson); ViewBag.x = WechatService.wechatApi("CreateMenu", token, postData); return(View()); }
public ErrJson CreateMenu(string accessToken, MenuJson menuJson) { var url = string.Format("https://api.weixin.qq.com/cgi-bin/menu/create?access_token={0}", accessToken); string postData = menuJson.ToJson(); return(GetWeiXinResultHelper.GetExecuteResult(url, postData)); }
protected void GetBtn_Click(object sender, EventArgs e) { IMenuApi menuapi = new MenuApi(); MenuJson MJ = menuapi.GetMenu(token); lblMsg.Text = MJ.ToJson(); }
public static MenuJson GetMenuJson() { MenuInfo BeneficialInfo = new MenuInfo("惠民服务", new MenuInfo[] { new MenuInfo("办理生育服务证", ButtonType.CLICK, "birth"), new MenuInfo("流动人口婚育证明", ButtonType.CLICK, "marriage"), new MenuInfo("办理各类计生证明", ButtonType.CLICK, "planning"), new MenuInfo("奖励/扶助", ButtonType.CLICK, "aids"), new MenuInfo("其他计生服务", ButtonType.VIEW, "http://spjs.chinacloudsites.cn/static/OtherPlanning.html") }); MenuInfo PolicyInfo = new MenuInfo("政策宣传", new MenuInfo[] { new MenuInfo("单独两孩政策", ButtonType.CLICK, "oneTwo"), new MenuInfo("农村合作医疗", ButtonType.CLICK, "cooperative"), new MenuInfo("奖励/扶助", ButtonType.CLICK, "reward"), new MenuInfo("政策法规", ButtonType.CLICK, "law") }); MenuInfo NotificationInfo = new MenuInfo("关注我们", new MenuInfo[] { new MenuInfo("通知通告", ButtonType.CLICK, "activity"), new MenuInfo("电话咨询服务", ButtonType.CLICK, "phone"), new MenuInfo("在线咨询服务", ButtonType.CLICK, "online"), new MenuInfo("特色工作", ButtonType.CLICK, "characteristic"), new MenuInfo("保健卫生知识", ButtonType.CLICK, "health") }); MenuJson MJ = new MenuJson(); MJ.button.AddRange(new MenuInfo[] { BeneficialInfo, PolicyInfo, NotificationInfo }); return(MJ); }
protected void CreateBtn_Click(object sender, EventArgs e) { IMenuApi menuapi = new MenuApi(); MenuJson MJ = DealWithMenu.GetMenuJson(); ErrJson EJ = menuapi.CreateMenu(token, MJ); lblMsg.Text = EJ.errcode + ":" + EJ.errmsg; }
private void btnGetMenuJson_Click(object sender, EventArgs e) { IMenuApi menuBLL = new MenuApi(); MenuJson menu = menuBLL.GetMenu(token); if (menu != null) { Console.WriteLine(menu.ToJson()); } }
private void GenerateChildren(MenuJson menuInfo, DataTable dtMenu, string[] permission) { foreach (DataRow row in dtMenu.Rows) { int menuType = int.Parse(row["MenuType"].ToString()); int parentId = int.Parse(row["ParentId"].ToString()); if (menuInfo.id != parentId) { continue; } MenuJson menu = new MenuJson(); menu.id = int.Parse(row["Id"].ToString()); menu.text = row["MenuText"].ToString(); menu.Url = row["Url"].ToString(); menu.MenuType = menuType; menu.iconCls = "tree-file"; menu.ParentId = parentId; menu.IsEnable = Convert.ToBoolean(row["IsEnable"]); // 获取出所有的权限 Hashtable htCondition = new Hashtable(); htCondition.Add("MenuId", menu.id); var dbm = DataBaseFactory.Instance.Create(); var dtPerm = dbm.GetDataTable("*", "Sys_Permission", htCondition, "Id"); foreach (DataRow permissionRow in dtPerm.Rows) { PermissionJson permissionJson = new PermissionJson(); permissionJson.id = int.Parse(permissionRow["Id"].ToString()); permissionJson.Code = permissionRow["Code"].ToString(); permissionJson.MenuId = int.Parse(permissionRow["MenuId"].ToString()); permissionJson.text = permissionRow["Text"].ToString(); permissionJson.Description = permissionRow["Description"].ToString(); permissionJson.iconCls = "icon-man"; // TODO 张春雨 - 权限菜单 - 获取真实用户权限 permissionJson.Checked = permission.Contains(permissionRow["Code"].ToString()); if (menu.children == null) { menu.children = new List <BaseTreeItemJson>(); } menu.children.Add(permissionJson); } if (menuInfo.children == null) { menuInfo.children = new List <BaseTreeItemJson>(); } menuInfo.children.Add(menu); GenerateChildren(menu, dtMenu, permission); } }
/// <summary> /// 获取菜单数据 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <returns></returns> public static MenuJson GetMenu(string accessToken) { MenuJson menu = null; var url = string.Format("https://api.weixin.qq.com/cgi-bin/menu/get?access_token={0}", accessToken); MenuListJson list = JsonHelper.ConvertJson <MenuListJson>(url); if (list != null) { menu = list.menu; } return(menu); }
public ActionResult CreateMenuold() { MenuInfo menu = new MenuInfo("开始训练", MenuInfo.ButtonType.view, "http://wx.zzd123.com/wechat/Calendar"); MenuInfo menu2 = new MenuInfo("免费体验", new MenuInfo[] { new MenuInfo("免费行为测评", MenuInfo.ButtonType.view, "http://wx.zzd123.com/Free/FreeScale"), new MenuInfo("免费心理服务", MenuInfo.ButtonType.view, "http://wx.zzd123.com/Free/FreeHeartList") }); MenuJson menujson = new MenuJson(); menujson.button.AddRange(new MenuInfo[] { menu, menu2 }); string token = AccessTokenService.GetAccessToken(); string postData = JsonConvert.SerializeObject(menujson); ViewBag.x = WechatService.wechatApi("CreateMenu", token, postData); return(View()); }
private void FetchMenu(List <Menu> allMenus, Menu menu, List <long> userMenus, List <MenuJson> showMenus, Func <List <long>, Menu, bool> filter) { if (!filter(userMenus, menu)) { return; } var menuJson = new MenuJson(menu); showMenus.Add(menuJson); var children = allMenus.Where(a => a.ParentId == menu.Id).OrderBy(a => a.ByOrder).ToList(); if (children.Count > 0) { menuJson.children = new List <MenuJson>(); foreach (var cMenu in children) { FetchMenu(allMenus, cMenu, userMenus, menuJson.children, filter); } } }
/*For Controller****************************************************************************/ public void UpdateMenuRecursive(MenuJson parent) { int internalOrder = 0; foreach (var item in parent.children) { BaseMenu menu = db.BaseMenus.Find(item.id); if (menu != null) { menu.noOrder = internalOrder; menu.menuID = parent.id; internalOrder++; db.SaveChanges(); if (item.children != null) { UpdateMenuRecursive(item); } } } }
// GET: Menu public ActionResult CreateDefault() { MenuInfo productInfo = new MenuInfo("软件产品", new MenuInfo[] { new MenuInfo("移动办公平台", MenuInfo.ButtonType.click, "patient"), new MenuInfo("安全审核办公平台", MenuInfo.ButtonType.click, "aqscgl") }); MenuInfo frameworkInfo = new MenuInfo("框架产品", new MenuInfo[] { new MenuInfo("Web开发框架", MenuInfo.ButtonType.click, "web"), new MenuInfo("代码生成工具", MenuInfo.ButtonType.click, "database2sharp") }); MenuInfo relatedInfo = new MenuInfo("相关链接", new MenuInfo[] { new MenuInfo("公司介绍", MenuInfo.ButtonType.click, "Event_Company"), new MenuInfo("官方网站", MenuInfo.ButtonType.view, "http://www.bjdflld.com/wx"), //new MenuInfo("官方网站", ButtonType.click, "http://www.bjdflld.com"), new MenuInfo("提点建议", MenuInfo.ButtonType.click, "Event_Suggestion"), new MenuInfo("联系客服", MenuInfo.ButtonType.click, "Event_Contact"), //new MenuInfo("发邮件", ButtonType.view, "http://mail.qq.com/cgi-bin/qm_share?t=qm_mailme&email=S31yfX15fn8LOjplKCQm") new MenuInfo("发邮件", MenuInfo.ButtonType.click, "Event_Mail") }); MenuJson menuJson = new MenuJson(); menuJson.button.AddRange(new MenuInfo[] { productInfo, frameworkInfo, relatedInfo }); var auth = WXInterface.GetAccessToken(Config.AppID, Config.AppSecret); if (WXInterface.DeleteMenu(auth.access_token).Success) { var ret = WXInterface.CreateMenu(auth.access_token, menuJson); if (!ret.Success) { return(Content("创建微信公众号菜单失败!\n" + ret.ErrorMessage)); } } return(View()); }
private void btnCreateMenu_Click(object sender, EventArgs e) { MenuInfo productInfo = new MenuInfo("软件产品", new MenuInfo[] { new MenuInfo("病人资料管理系统", ButtonType.click, "patient"), new MenuInfo("客户关系管理系统", ButtonType.click, "crm"), new MenuInfo("酒店管理系统", ButtonType.click, "hotel"), new MenuInfo("送水管理系统", ButtonType.click, "water") }); MenuInfo frameworkInfo = new MenuInfo("框架产品", new MenuInfo[] { new MenuInfo("Win开发框架", ButtonType.click, "win"), new MenuInfo("WCF开发框架", ButtonType.click, "wcf"), new MenuInfo("混合式框架", ButtonType.click, "mix"), new MenuInfo("Web开发框架", ButtonType.click, "web"), new MenuInfo("代码生成工具", ButtonType.click, "database2sharp") }); MenuInfo relatedInfo = new MenuInfo("相关链接", new MenuInfo[] { new MenuInfo("公司介绍", ButtonType.click, "Event_Company"), new MenuInfo("官方网站", ButtonType.view, "http://www.iqidi.com"), new MenuInfo("提点建议", ButtonType.click, "Event_Suggestion"), new MenuInfo("联系客服", ButtonType.click, "Event_Contact"), new MenuInfo("发邮件", ButtonType.view, "http://mail.qq.com/cgi-bin/qm_share?t=qm_mailme&email=S31yfX15fn8LOjplKCQm") }); MenuJson menuJson = new MenuJson(); menuJson.button.AddRange(new MenuInfo[] { productInfo, frameworkInfo, relatedInfo }); //Console.WriteLine(menuJson.ToJson()); //if (MessageUtil.ShowYesNoAndWarning("您确认要创建菜单吗") == System.Windows.Forms.DialogResult.Yes) //{ // IMenuApi menuBLL = new MenuApi(); // CommonResult result = menuBLL.CreateMenu(token, menuJson); // Console.WriteLine("创建菜单:" + (result.Success ? "成功" : "失败:" + result.ErrorMessage)); //} }
/// <summary> /// 创建菜单 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <param name="menuJson">菜单对象</param> /// <returns></returns> public static CommonResult CreateMenu(string accessToken, MenuJson menuJson) { string postData = menuJson.ToJsonString(); return(CreateMenu(accessToken, postData)); }
public void GetMenuReference(ref MenuJson json) { json = menuJson; }