Beispiel #1
0
        public override void SetAuthorization(string tabId)
        {
            StringBuilder auth = new StringBuilder();
            object        obj  = HttpContext.Session[Constant.SESSION_AUTHORIZATION];

            if (obj != null)
            {
                AuthorizationMdl authorization = (AuthorizationMdl)obj;
                string           pageName      = this.GetType().Name.GetPageName();

                string funId   = pageName + "_" + tabId + "_carryforward";
                bool   isValid = authorization.checkPermissionByFuncUrl(funId);
                auth.Append(tabId).Append("_carryforward:\"").Append(isValid).Append("\",");

                funId   = pageName + "_" + tabId + "_edit";
                isValid = authorization.checkPermissionByFuncUrl(funId);
                auth.Append(tabId).Append("_edit:\"").Append(isValid).Append("\",");

                funId   = pageName + "_" + tabId + "_delete";
                isValid = authorization.checkPermissionByFuncUrl(funId);
                auth.Append(tabId).Append("_delete:\"").Append(isValid).Append("\",");

                funId   = pageName + "_" + tabId + "_query";
                isValid = authorization.checkPermissionByFuncUrl(funId);
                auth.Append(tabId).Append("_query:\"").Append(isValid).Append("\",");

                funId   = pageName + "_" + tabId + "_exportexcel";
                isValid = authorization.checkPermissionByFuncUrl(funId);
                auth.Append(tabId).Append("_exportexcel:\"").Append(isValid).Append("\"");
            }

            ViewData["authorization"] = "{" + auth.ToString() + "}";
        }
Beispiel #2
0
        public ActionResult index()
        {
            try
            {
                string tabId = this.Request["menuId"];
                ViewData["config"] = "{tabId:\"" + tabId + "\",pageid:\"" + this.GetType().Name.GetPageName() + "\"}";

                StringBuilder auth = new StringBuilder();
                object        obj  = HttpContext.Session[Constant.SESSION_AUTHORIZATION];
                if (obj != null)
                {
                    AuthorizationMdl authorization = (AuthorizationMdl)obj;
                    string           pageName      = this.GetType().Name.GetPageName();

                    string funId   = pageName + "_" + tabId + "_update";
                    bool   isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_update:\"").Append(isValid).Append("\",");

                    funId   = pageName + "_" + tabId + "_openperiod";
                    isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_openperiod:\"").Append(isValid).Append("\",");

                    funId   = pageName + "_" + tabId + "_closeperiod";
                    isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_closeperiod:\"").Append(isValid).Append("\",");

                    funId   = pageName + "_" + tabId + "_query";
                    isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_query:\"").Append(isValid).Append("\",");

                    funId   = pageName + "_" + tabId + "_exportexcel";
                    isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_exportexcel:\"").Append(isValid).Append("\"");
                }

                ViewData["authorization"] = "{" + auth.ToString() + "}";

                return(this.View("stperiod"));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #3
0
        /// <summary>
        /// Purpose: 获取顶层菜单,过滤无权限
        /// </summary>
        public void listTopMenu()
        {
            try
            {
                AuthorizationMdl authMdl       = (AuthorizationMdl)this.HttpContext.Session[Constant.SESSION_AUTHORIZATION];
                MenuConfigBll    menuConfigBll = new MenuConfigBll();

                List <tstmnucfg> array  = menuConfigBll.getTopMenu();
                ArrayList        result = new ArrayList();
                for (int i = 0; i < array.Count; i++)
                {
                    tstmnucfg mdl = (tstmnucfg)array[i];

                    System.Globalization.CultureInfo culture = (System.Globalization.CultureInfo) this.HttpContext.Session[Constant.SESSION_CULTURE];
                    String text = HRMSRes.ResourceManager.GetString(mdl.rsid, culture);
                    if (text != null)
                    {
                        mdl.munm = text;
                    }

                    if (mdl.muid != "Y")
                    {
                        if (getSubMenu(mdl.muid).Count > 0)
                        {
                            result.Add(mdl);
                        }
                    }
                    else
                    {
                        result.Add(mdl);
                    }
                }
                Response.Output.Write(JavaScriptConvert.SerializeObject(result));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #4
0
        /// <summary>
        /// Purpose: 获取下一层菜单,过滤无权限
        /// </summary>
        /// <param name="pami"></param>
        /// <returns></returns>
        private ArrayList getSubMenu(string pami)
        {
            ArrayList result = new ArrayList();

            try
            {
                AuthorizationMdl authMdl       = (AuthorizationMdl)this.HttpContext.Session[Constant.SESSION_AUTHORIZATION];
                MenuConfigBll    menuConfigBll = new MenuConfigBll();
                List <tstmnucfg> array         = menuConfigBll.getSubMenu(pami);
                for (int i = 0; i < array.Count; i++)
                {
                    tstmnucfg mdl = (tstmnucfg)array[i];
                    if (authMdl.checkPermissionByFuncId(mdl.fnid))
                    {
                        result.Add(mdl);
                    }
                }
                return(result);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #5
0
        /// <summary>
        /// Purpose: 将Authorization Xml String转换成Authorization对象
        /// </summary>
        /// <param name="_AuthXmlText"></param>
        /// <returns></returns>
        public AuthorizationMdl ParseAuthorizationXml(string _AuthXmlText)
        {
            AuthorizationMdl result = new AuthorizationMdl();

            try
            {
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(_AuthXmlText);
                XmlNodeList nodes;
                result.Action = doc.SelectSingleNode("/Authorization/Action").InnerText.ToString();

                //result.User = doc.SelectSingleNode("/Authorization/User").InnerText.ToString();
                XmlNode userNode = doc.SelectSingleNode("/Authorization/User");
                UserMdl user     = new UserMdl();
                user.urid   = userNode.Attributes["urid"].Value.ToString();
                user.urnm   = userNode.Attributes["urnm"].Value.ToString();
                user.sfid   = userNode.Attributes["sfid"].Value.ToString();
                result.User = user;

                XmlNodeList   AppNodes     = doc.SelectNodes("/Authorization/Application");
                List <AppMdl> applications = new List <AppMdl>();
                for (int i = 0; i < AppNodes.Count; i++)
                {
                    AppMdl appMdl = new AppMdl();
                    appMdl.apnm    = AppNodes[i].Attributes["name"].Value;
                    appMdl.Web_Url = AppNodes[i].Attributes["url"].Value;
                    nodes          = AppNodes[i].SelectNodes("Roles/Role");
                    List <RoleMdl> roles = new List <RoleMdl>();
                    for (int j = 0; j < nodes.Count; j++)
                    {
                        RoleMdl roleMdl = new RoleMdl();
                        roleMdl.roty           = nodes[j].Attributes["roty"].Value;
                        roleMdl.Is_System_Role = (Public_Flag)Enum.Parse(typeof(Public_Flag), nodes[j].Attributes["issr"].Value);
                        roleMdl.Role_Id        = nodes[j].Attributes["roid"].Value;
                        roleMdl.Role_Name      = nodes[j].Attributes["ronm"].Value;
                        roleMdl.alep           = nodes[j].Attributes["alep"].Value;
                        roles.Add(roleMdl);
                    }
                    appMdl.Roles = roles;
                    nodes        = AppNodes[i].SelectNodes("Modules/Module");
                    List <ModuleMdl> modules = new List <ModuleMdl>();
                    for (int j = 0; j < nodes.Count; j++)
                    {
                        ModuleMdl module = new ModuleMdl();
                        module.Name = nodes[j].Attributes["name"].Value;
                        XmlNodeList        fNodes    = nodes[j].SelectNodes("Functions/Function");
                        List <FunctionMdl> functions = new List <FunctionMdl>();
                        for (int k = 0; k < fNodes.Count; k++)
                        {
                            FunctionMdl funtion = new FunctionMdl();
                            funtion.Id         = fNodes[k].Attributes["id"].Value;
                            funtion.Name       = fNodes[k].Attributes["name"].Value;
                            funtion.Url        = fNodes[k].Attributes["url"].Value;
                            funtion.Permission = (Security_Permission_Type)Enum.Parse(typeof(Security_Permission_Type), fNodes[k].InnerText.ToString());
                            functions.Add(funtion);
                        }
                        module.Functions = functions;
                        modules.Add(module);
                    }
                    appMdl.Modules = modules;

                    applications.Add(appMdl);
                }
                result.Applications = applications;

                return(result);
            }
            catch (UtilException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new UtilException(ex.Message, ex);
            }
        }
Beispiel #6
0
        public ActionResult index()
        {
            try
            {
                table_name = this.Request["tableName"];
                string tabId = this.Request["menuId"];

                List <ColumnMdl> columns = this.getColumns(table_name);

                MasterDataBll bll      = new MasterDataBll(table_name);
                bool          isLocked = false;

                #region MUF
                var q = (from p in (List <string>)HttpContext.Session[Constant.SESSION_CURRENT_MUF]
                         where p == tabId.Substring(1, tabId.Length - 1)
                         select p).ToList();

                bool muf = q.Count > 0 ? true : false;
                #endregion

                ViewData["config"] = responseJson(columns, tabId, table_name, isLocked, muf);

                StringBuilder auth = new StringBuilder();
                object        obj  = HttpContext.Session[Constant.SESSION_AUTHORIZATION];
                if (obj != null)
                {
                    AuthorizationMdl authorization = (AuthorizationMdl)obj;
                    string           pageName      = this.GetType().Name.GetPageName();

                    string funId   = pageName + "_" + tabId + "_masterdata_add";
                    bool   isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_masterdata_add:\"").Append(isValid).Append("\",");

                    funId   = pageName + "_" + tabId + "_masterdata_edit";
                    isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_masterdata_edit:\"").Append(isValid).Append("\",");

                    funId   = pageName + "_" + tabId + "_masterdata_delete";
                    isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_masterdata_delete:\"").Append(isValid).Append("\",");

                    funId   = pageName + "_" + tabId + "_masterdata_export";
                    isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_masterdata_export:\"").Append(isValid).Append("\",");

                    funId   = pageName + "_" + tabId + "_masterdata_import";
                    isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_masterdata_import:\"").Append(isValid).Append("\",");

                    funId   = pageName + "_" + tabId + "_masterdata_query";
                    isValid = authorization.checkPermissionByFuncUrl(funId);
                    auth.Append(tabId).Append("_masterdata_query:\"").Append(isValid).Append("\"");
                }

                ViewData["authorization"] = "{" + auth.ToString() + "}";
            }
            catch (UtilException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new UtilException(ex.Message, ex);
            }
            return(this.View("MasterData"));
        }