Esempio n. 1
0
        public async Task <ActionResult> CreateModule(string id, string parentid = "")
        {
            (List <SysDictionary> list, long count)buttons = await SysDictionaryDAL.QueryAsync(w => w.Status == 1 && w.Parent.DictNo == AuthorizeName.PermissionButton);

            ViewBag.ButtonList = buttons.list.Select(s => new SelectListItem {
                Text = s.DictName, Value = s.DictNo.ToString()
            }).ToList();

            (List <SysMenu> list, long count)menus = await SysMenuDAL.QueryAsync(w => w.Status == 1);

            //var lists = menus.list.Select(s => new SysMenuTreeNode
            //{
            //    name = s.MenuName,
            //    id = s.Id.ToString()
            //}).ToList();

            ViewBag.SysMenuList = menus.list.Select(s => new SelectListItem {
                Text = s.MenuName, Value = s.Id.ToString()
            }).ToList();

            SysMenuView model = new SysMenuView()
            {
                Status = 1
            };

            if (!string.IsNullOrEmpty(parentid))
            {
                model.ParentID = Convert.ToInt32(parentid);
            }
            return(View(model));
        }
Esempio n. 2
0
        public async Task <ActionResult> UpdateModule(string id)
        {
            //获取菜单已经绑定的按钮
            var menubuttons = await SysMenuButtonDAL.QueryAsync(u => u.MenuID == Convert.ToInt32(id), null, null);

            //回去权限按钮字典
            (List <SysDictionary> list, long count)buttons = await SysDictionaryDAL.QueryAsync(w => w.Status == 1 && w.Parent.DictNo == AuthorizeName.PermissionButton);

            ViewBag.ButtonList = buttons.list.Select(s => new SelectListItem
            {
                Text     = s.DictName,
                Value    = s.DictNo.ToString(),
                Selected = menubuttons.list.Exists(e => e.ButtonCode == s.DictNo)
            }).ToList();

            (List <SysMenu> list, long count)menus = await SysMenuDAL.QueryAsync(w => w.Status == 1);

            ViewBag.SysMenuList = menus.list.Select(s => new SelectListItem
            {
                Text  = s.MenuName,
                Value = s.Id.ToString()
            }).ToList();

            SysMenuView model = new SysMenuView()
            {
            };

            if (!string.IsNullOrEmpty(id) && id != "0")
            {
                int _id       = Convert.ToInt32(id);
                var tempModel = await new SysMenuDAL().GetByOneAsync(w => w.Id == _id);
                model = _mapper.Map <SysMenuView>(tempModel);
            }
            return(View(model));
        }
Esempio n. 3
0
        public async Task <ActionResult> Create([FromBody] SysMenuView model)
        {
            var resdata = await AutoException.Excute <long>(async (result) =>
            {
                model.CreateBy = "admin";
                model.CreateDt = DateTime.Now;
                model.ParentID = model.ParentID == null ? 0 : model.ParentID;
                result.Data    = await new SysMenuDAL().InsertAsync(model);
                if (result.Data == 0)
                {
                    throw new Exception("数据新增异常,JSON:" + Newtonsoft.Json.JsonConvert.SerializeObject(model));
                }
                else
                {
                    if (!string.IsNullOrEmpty(model.menubuttons))
                    {
                        var idstr = Newtonsoft.Json.JsonConvert.DeserializeObject <List <dynamic> >(model.menubuttons);
                        List <SysMenuButton> rolelist = (from p in idstr
                                                         select new SysMenuButton
                        {
                            MenuID = result.Data,
                            ButtonCode = p.id,
                            ButtonName = p.title,
                            Status = 1,
                            CreateDt = DateTime.Now,
                            CreateBy = model.UpdateBy
                        }).ToList();
                        await SysMenuButtonDAL.BatchInsertAsync(rolelist);
                    }
                }
            }, false);

            return(Json(resdata));
        }
Esempio n. 4
0
        /// <summary>
        /// 获取全部菜单,后台管理菜单用
        /// </summary>
        /// <returns></returns>
        public IList <SysMenuView> GetAllSysMenuList()
        {
            var mlist = _service.FindByFuncAsync <SysMenuEntity>(t => true);
            var pList = _service.FindByFuncAsync <SysPermissionEntity>(t => true);

            var rootListTemp = mlist.Result.Where(t => t.PMenuId == 0).OrderBy(t => t.Sort);
            var rootList     = new List <SysMenuView>();

            foreach (var item in rootListTemp)
            {
                var childList     = new List <SysMenuChildrenView>();
                var childListTemp = mlist.Result.Where(all => all.PMenuId == item.MenuId).OrderBy(t => t.Sort).ToList();
                foreach (var childItem in childListTemp)
                {
                    var childModel = new SysMenuChildrenView().CopyFrom(childItem);
                    childModel.Permission = pList.Result.Where(t => t.MenuId == childItem.MenuId).ToList();
                    childList.Add(childModel);
                }
                var model = new SysMenuView().CopyFrom(item);
                model.Children   = childList;
                model.Permission = pList.Result.Where(t => t.MenuId == item.MenuId).ToList();
                rootList.Add(model);
            }
            return(rootList);
        }