示例#1
0
        public static MvcHtmlString GenerateMenu(this HtmlHelper htmlHelper)
        {
            StringBuilder sb = new StringBuilder();
            string        s  = "Dashboard.Service.Services.MasterData.SysManagement.SysFunctionService";
            ISysFunction <SysFunction> service = (ISysFunction <SysFunction>)Assembly.Load("Dashboard.Service").CreateInstance(s);

            var userRoleId = Authentication.CurrentUser.SysRole.SysRoleId;

            List <FunctionGroupType> groupTypes = (from g in service.GetMenuGroup(userRoleId)
                                                   select(FunctionGroupType) g).ToList();

            foreach (var group in groupTypes)
            {
                sb.Append("<div class='accordionHeader'>");
                sb.Append("<h2>");
                sb.Append(string.Format("<span class='Folder_{0}'>Folder</span><={0}></h2>", group.ToString(), group.ToString()));
                sb.Append("</div>");
                /*分组结束*/
                sb.Append("<div class='accordionContent'>");
                sb.Append(" <ul class='tree'>");

                foreach (var m in service.GetMenuFromGroup(userRoleId, (int)group))
                {
                    string url = string.Format("<a href='/{0}/{1}' target='navTab' rel='{2}' fresh='false' external='true' ><div class='{3}'></div><={4}.{5}></a>"
                                               , m.ControllerName, m.ActionName, m.SysFunctionId, m.ControllerName + '_' + m.ActionName, m.ControllerName, m.ActionName);
                    sb.Append(string.Format("<li>{0}</li>", url));
                }
                sb.Append(" </ul></div>");
            }
            return(MvcHtmlString.Create(sb.ToString()));
        }
示例#2
0
        public JsonResult UserLogOn_Pad(FormCollection collection)
        {
            Language lang;
            var      service = new SysUserService();
            SysUser  user    = service.Login(collection["UserName"], collection["Password"]);

            if (user == null || string.Compare(user.Pwd, collection["Password"], false) != 0)
            {
                return(Json(new { success = false, msg = "<=PwdorNameError>" }));
            }
            else
            {
                DateTime dt = DateTime.Today;
                if (!(user.ValidDateFrom <= dt && user.ValidDateTo >= dt) || !user.Active)
                {
                    return(Json(new { success = false, msg = "<=UserExpireError>" }));
                }

                //密码过期修改
                if (!user.PasswordDate.HasValue)
                {
                    string errorMsg = string.Empty;
                    user.PasswordDate = DateTime.Now.Date;
                    bool success = service.Save(user, out errorMsg);
                    if (!success)
                    {
                        return(Json(new { success = false, msg = errorMsg }));
                    }
                }
                else
                {
                    if (user.PasswordDate.Value.AddDays(30).Date <= DateTime.Now.Date)
                    {
                        lang = (Language)int.Parse(collection["Lang"]);
                        Response.Cookies["Lang"].Value   = lang == Language.English ? "English" : "SimplifiedChinese";
                        Response.Cookies["Lang"].Expires = DateTime.Now.AddDays(365);
                        return(Json(new { success = false, msg = "expired" }));
                    }
                }

                FormsService.SignIn(collection["UserName"], false);
                lang = (Language)int.Parse(collection["Lang"]);
                Response.Cookies["Lang"].Value   = lang == Language.English ? "English" : "SimplifiedChinese";
                Response.Cookies["Lang"].Expires = DateTime.Now.AddDays(365);
                string s = "FrogDashboard.Service.Services.MasterData.SysManagement.SysFunctionService";
                ISysFunction <SysFunction> service_ = (ISysFunction <SysFunction>)Assembly.Load("FrogDashboard.Service").CreateInstance(s);
                var userRoleId = user.RoleId;
                if (service_.GetUserFunction(userRoleId).Where(c => c.ControllerName == "OrderManagement" && c.ActionName == "TmsForPad").Count() > 0)
                {
                    return(Json(new { success = true, msg = "<LoginSuccess>", URL = "Pad" }));
                }
                else
                {
                    return(Json(new { success = true, msg = "<LoginSuccess>", URL = "Index" }));
                }
            }
        }
示例#3
0
        public static bool HasPermission(string controller, string action)
        {
            StringBuilder sb = new StringBuilder();
            string        s  = "Dashboard.Service.Services.MasterData.SysManagement.SysFunctionService";
            ISysFunction <SysFunction> service = (ISysFunction <SysFunction>)Assembly.Load("Dashboard.Service").CreateInstance(s);
            var userRoleId = CurrentUser.RoleId;

            if (service.GetUserPermission(userRoleId).Any(c => string.Compare(c.ControllerName, controller, true) == 0 &&
                                                          string.Compare(c.ActionName, action, true) == 0))
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
示例#4
0
        // public SysUserDBAccess _userAccess = new SysUserDBAccess();

        public ActionResult Index()
        {
            string domainAndName = System.Web.HttpContext.Current.User.Identity.Name;

            var userRoles = Authentication.Authentication.GetUserRoles();

            ViewBag.UserRoles = userRoles;

            ViewBag.SysRole = Authentication.Authentication.CurrentUserRole;
            string s = "Dashboard.Service.Services.MasterData.SysManagement.SysFunctionService";
            ISysFunction <SysFunction> service_ = (ISysFunction <SysFunction>)Assembly.Load("Dashboard.Service").CreateInstance(s);
            var userRoleId = Authentication.Authentication.CurrentUser.RoleId;
            var str        = Request.Browser.Browser;

            if (str == "Safari" && service_.GetUserFunction(userRoleId).Where(c => c.ControllerName == "OrderManagement" && c.ActionName == "TmsForPad").Count() > 0)
            {
                return(Redirect("/OrderManagement/TmsOrderForPad"));
            }
            return(View());
        }
示例#5
0
        /// <summary>
        /// 功能权限
        /// </summary>
        /// <param name="controller">按钮所在的controller</param>
        /// <param name="action">按钮所在的action</param>
        /// <param name="id">按钮的html id</param>
        /// <param name="value">按钮的名称</param>
        /// <returns></returns>
        public static MvcHtmlString GenerateButton(this HtmlHelper htmlHelper, string controller, string action,
                                                   string id, string value)
        {
            StringBuilder sb = new StringBuilder();
            string        s  = "Dashboard.Service.Services.MasterData.SysManagement.SysFunctionService";
            ISysFunction <SysFunction> service = (ISysFunction <SysFunction>)Assembly.Load("Dashboard.Service").CreateInstance(s);

            var userRoleId = Authentication.CurrentUser.RoleId;

            if (service.GetUserFunction(userRoleId).Any(c => string.Compare(c.ControllerName, controller, true) == 0 &&
                                                        string.Compare(c.ActionName, action, true) == 0))
            {
                sb.Append(string.Format("<input type='button' class='button' id='{0}' value='{1}' />", id, value));
            }
            else
            {
                //sb.Append(string.Format("<input type='button' class='button' id='{0}' value='{1}' disabled= 'disabled'/>", id, value));
                sb.Append(string.Format("<input type='button' class='button' id='{0}' value='{1}' style= 'display:none;'/>", id, value));
            }
            return(MvcHtmlString.Create(sb.ToString()));
        }
示例#6
0
 public RoleController(ISysRole repositoryRole, ISysFunction repositoryFun, ISysMenu repositoryMenu)
 {
     ISysRoleService     = repositoryRole;
     ISysFunctionService = repositoryFun;
     ISysMenuService     = repositoryMenu;
 }
示例#7
0
 public MenuController(ISysFunction repositoryFun, ISysMenu repositoryMenu)
 {
     ISysFunctionService = repositoryFun;
     ISysMenuService     = repositoryMenu;
 }