Пример #1
0
        public string QueryButtonTree()
        {
            string result = string.Empty;
            var    list   = Application.CommonService.QuerySysButtonList(x => x.SbStatus == 1);

            #region 把实体转为JSON节点实体
            var listNode = new List <TreeNodeVM>();
            foreach (var item in list)
            {
                listNode.Add(new TreeNodeVM()
                {
                    Id   = item.SbId,
                    Pid  = item.SbPid,
                    Text = item.SbBtnText,
                    Ext1 = item.SbBtnIcon,
                    Ext2 = item.SbBtnClass,
                    Ext3 = item.SbDescribe
                });
            }
            #endregion

            result = TreeTo.ListToTree(listNode, "Pid", "Id", new List <string> {
                Guid.Empty.ToString()
            });

            if (string.IsNullOrWhiteSpace(result))
            {
                result = "[]";
            }

            return(result);
        }
Пример #2
0
        public ActionResultVM DelCatalog(string code, string id)
        {
            var vm = new ActionResultVM();

            var uinfo = new UserAuthAid(HttpContext).Get();

            using var db = new ContextBase();
            var ds = db.DocSet.Find(code);

            if (ds?.Uid != uinfo.UserId)
            {
                vm.Set(ARTag.unauthorized);
                return(vm);
            }

            var listdsd    = db.DocSetDetail.Where(x => x.DsCode == code && string.IsNullOrEmpty(x.DsdContentMd)).ToList();
            var removelist = TreeTo.FindToTree(listdsd, "DsdPid", "DsdId", new List <string> {
                id
            });

            removelist.Add(listdsd.Where(x => x.DsdId == id).FirstOrDefault());
            db.DocSetDetail.RemoveRange(removelist);

            int num = db.SaveChanges();

            vm.Set(num > 0);

            return(vm);
        }
Пример #3
0
        public string QueryMenu(string type)
        {
            string result   = string.Empty;
            var    listMenu = Application.CommonService.QuerySysMenuList(x => x.SmStatus == 1, false);

            if (type != "all")
            {
                #region 根据登录用户查询角色配置的菜单
                var userinfo = Apps.LoginService.GetLoginUserInfo(HttpContext);
                if (!string.IsNullOrWhiteSpace(userinfo.RoleId))
                {
                    var role = Application.CommonService.QuerySysRoleEntity(x => x.SrId == userinfo.RoleId);
                    if (role != null)
                    {
                        var menuArray = role.SrMenus.Split(',').ToList();

                        listMenu = listMenu.Where(x => menuArray.Contains(x.SmId)).ToList();
                    }
                    else
                    {
                        listMenu = new List <Domain.SysMenu>();
                    }
                }
                else
                {
                    listMenu = new List <Domain.SysMenu>();
                }
                #endregion
            }

            #region 把实体转为JSON节点实体
            var listNode = new List <TreeNodeVM>();
            foreach (var item in listMenu)
            {
                listNode.Add(new TreeNodeVM()
                {
                    Id   = item.SmId,
                    Pid  = item.SmPid,
                    Text = item.SmName,
                    Ext1 = item.SmUrl,
                    Ext2 = item.SmIcon
                });
            }
            #endregion

            result = TreeTo.ListToTree(listNode, "Pid", "Id", new List <string> {
                Guid.Empty.ToString()
            });

            if (string.IsNullOrWhiteSpace(result))
            {
                result = "[]";
            }

            return(result);
        }
Пример #4
0
        public ActionResultVM MenuTree()
        {
            var vm = new ActionResultVM();

            try
            {
                var code = RouteData.Values["id"]?.ToString();

                using var db = new ContextBase();
                var list = db.DocSetDetail.Where(x => x.DsCode == code).OrderBy(x => x.DsdOrder).Select(x => new
                {
                    x.DsdId,
                    x.DsdPid,
                    x.DsdTitle,
                    x.DsdOrder,
                    IsCatalog = string.IsNullOrEmpty(x.DsdContentMd)
                }).ToList();

                var listtree = TreeTo.ListToTree(list, "DsdPid", "DsdId", new List <string> {
                    Guid.Empty.ToString()
                });
                if (string.IsNullOrWhiteSpace(listtree))
                {
                    vm.Set(ARTag.lack);
                }
                else
                {
                    vm.data = listtree.ToJArray();
                    vm.Set(ARTag.success);
                }
            }
            catch (Exception ex)
            {
                vm.Set(ex);
                ConsoleTo.Log(ex);
            }

            return(vm);
        }