Beispiel #1
0
        //*******************************权限--验证*************************************
        /// <summary>
        ///  根据用户id以及请求信息验证用户是否有权限访问页面
        /// </summary>
        /// <param name="user_id"></param>
        /// <param name="controller"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        public bool CheckMenuByUser(int user_id, string controller, string action)
        {
            T_PageFolder folder = DBSession.IT_PermissionsDAL.GetMenuById(user_id, controller, action);

            if (null == folder)
            {
                return(false);
            }
            return(true);
        }
Beispiel #2
0
        /// <summary>
        ///  保存编辑菜单
        /// </summary>
        /// <param name="folder"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        public bool EditPageFolder(T_PageFolder folder, int id)
        {
            if (folder == null)
            {
                return(false);
            }
            int tempCopunt = DBSession.IT_PageFolderDAL.Modify(folder, s => s.folder_id == id, "folder_name",
                                                               "folder_image", "folder_url", "sm_code", "is_Bus", "Bus_Code", "folder_type");

            return(true);
        }
Beispiel #3
0
        /// <summary>
        ///  实现排序
        /// </summary>
        /// <param name="id"></param>
        /// <param name="type"></param>
        /// <returns></returns>
        public int OrderMenuById(int id, string type)
        {
            if (id == 0)
            {
                return(0);
            }
            HCQ2_Model.T_PageFolder folder    = DBSession.IT_PageFolderDAL.Select(s => s.folder_id == id).FirstOrDefault();
            HCQ2_Model.T_PageFolder folderNew = new T_PageFolder();
            int folder_order = 0;

            switch (type)
            {
            case "up":
            {
                folder_order = (int)folder.folder_order - 1;
                folderNew    =
                    DBSession.IT_PageFolderDAL.Select <int>(
                        s => s.folder_pid == folder.folder_pid && s.folder_order <= folder_order,
                        s => (int)s.folder_order, false).FirstOrDefault();
                if (folder != null)
                {
                    folder.folder_order = folder_order;
                }
                if (folderNew != null)
                {
                    folderNew.folder_order = folder_order + 1;
                }
            }
            break;

            case "down":
            {
                folder_order = (int)folder.folder_order + 1;
                folderNew    =
                    DBSession.IT_PageFolderDAL.Select <int>(
                        s => s.folder_pid == folder.folder_pid && s.folder_order >= folder_order,
                        s => (int)s.folder_order, true).FirstOrDefault();
                if (folder != null)
                {
                    folder.folder_order = folder_order;
                }
                if (folderNew != null)
                {
                    folderNew.folder_order = folder_order - 1;
                }
            }
            break;
            }
            Modify(folder, s => s.folder_id == folder.folder_id, "folder_order");
            Modify(folderNew, s => s.folder_id == folderNew.folder_id, "folder_order");
            return(folderNew.folder_id);
        }
Beispiel #4
0
        /// <summary>
        ///  实现删除
        /// </summary>
        /// <param name="folder_id"></param>
        /// <returns></returns>
        public bool DelFolder(int folder_id)
        {
            T_PageFolder folder = Select(s => s.folder_id == folder_id).FirstOrDefault();
            T_PageFolder page   = Select(s => s.folder_id == folder.folder_pid).FirstOrDefault();
            int          isBack = DBSession.IT_PageFolderDAL.Delete(s => s.folder_id == folder_id || s.folder_pid == folder_id);

            if (page != null && SelectCount(s => s.folder_pid == folder.folder_pid) == 0)
            {
                page.have_child = false;
                //有父目录
                Modify(page, s => s.folder_id == page.folder_id, "have_child");
            }
            return(isBack > 0 ? true : false);
        }
Beispiel #5
0
        /// <summary>
        ///  获取请求页面的元素集合
        /// </summary>
        /// <param name="controller"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        public static List <T_PageElement> GetElementByUser(string controller, string action)
        {
            if (null == MenusList)
            {
                return(null);
            }
            T_PageFolder folder =
                MenusList.FirstOrDefault(s => s.folder_url == (controller + "/" + action));

            if (null == folder)
            {
                return(null);
            }
            if (null == ElementsList)
            {
                return(null);
            }
            return(ElementsList.Where(s => s.folder_id == folder.folder_id).ToList());
        }
Beispiel #6
0
        /// <summary>
        ///  获取当前登录用户 指定页面的元素id集合
        /// </summary>
        /// <param name="controller"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        public static List <string> GetElementCodeByUser(string controller, string action)
        {
            List <string> list   = new List <string>();
            T_PageFolder  folder = OperateContext.Current.bllSession.T_PageFolder.Select(s => s.folder_url.Equals(controller + "/" + action)).FirstOrDefault();

            if (folder == null)
            {
                return(list);
            }
            return(OperateContext.Current.bllSession.T_PageElement.Select(s => s.folder_id == folder.folder_id).Select(s => s.pe_code).ToList());
            //if (null == MenusList)
            //    return list;
            //T_PageFolder folder =
            //    MenusList.FirstOrDefault(s =>(!string.IsNullOrEmpty(s.folder_url)) && s.folder_url.Contains(controller + "/" + action));
            //if (null == folder)
            //    return list;
            //if (null == ElementsList)
            //    return list;
            //return ElementsList.Where(s => s.folder_id == folder.folder_id).Select(s => s.pe_code).ToList();
        }
Beispiel #7
0
        /// <summary>
        ///  获取当前登录用户 指定页面的元素id集合
        /// </summary>
        /// <param name="controller"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        public static List <string> GetElementCodeByUser(string controller, string action)
        {
            List <string> list = new List <string>();

            if (null == MenusList)
            {
                return(list);
            }
            T_PageFolder folder =
                MenusList.FirstOrDefault(s => (!string.IsNullOrEmpty(s.folder_url)) && s.folder_url.Contains(controller + "/" + action));

            if (null == folder)
            {
                return(list);
            }
            if (null == ElementsList)
            {
                return(list);
            }
            return(ElementsList.Where(s => s.folder_id == folder.folder_id).Select(s => s.pe_code).ToList());
        }
Beispiel #8
0
        /// <summary>
        ///  保存信息菜单
        /// </summary>
        /// <param name="folder"></param>
        /// <param name="folder_pid"></param>
        /// <returns></returns>
        public int AddFolder(T_PageFolder folder, int folder_pid)
        {
            if (folder == null)
            {
                return(0);
            }
            folder.folder_pid = folder_pid;
            //根据folder_pid获取当前加入项的排序号
            T_PageFolder Order = DBSession.IT_PageFolderDAL.Select <int>(s => s.folder_pid == folder_pid,
                                                                         s => (int)s.folder_order, false).FirstOrDefault();
            int folder_order;

            if (Order != null)
            {
                folder_order = (int)Order.folder_order + 1;
            }
            else
            {
                folder_order = 1;
            }
            folder.folder_order = folder_order;
            int tempCount = DBSession.IT_PageFolderDAL.Add(folder);

            if (tempCount > 0)
            {
                T_PageFolder pageFolder =
                    DBSession.IT_PageFolderDAL.Select(s => s.folder_id == folder_pid).FirstOrDefault();
                if (pageFolder != null)
                {
                    pageFolder.have_child = true;
                    DBSession.IT_PageFolderDAL.Modify(pageFolder, s => s.folder_id == folder_pid, "have_child");
                }
                return(folder.folder_id);
            }
            return(0);
        }