Exemple #1
0
        /// <summary>
        /// 显示主功能
        /// </summary>
        /// <param name="_func"></param>
        private void ShowFunction(BasicFunction _func)
        {
            switch (_func)
            {
            case BasicFunction.Session:
                openTable(_func.ToString(), "会话", userID);
                break;

            case BasicFunction.Assistant:
                openTable(_func.ToString(), "个人秘书", userID);
                break;

            case BasicFunction.SocialNet:
                openTable(_func.ToString(), "社交网络", userID);
                break;

            case BasicFunction.Market:
                openTable(_func.ToString(), "电子商城", userID);
                break;

            case BasicFunction.News:
                openTable(_func.ToString(), "新闻", userID);
                break;
            }
        }
Exemple #2
0
        public IBasicFunctionRegistrator Register(BasicFunction basicFunction)
        {
            var defaultWithViewFunction = GetDefaultFunctionsWithView();
            var result = GetModuleFunctionContainer();

            if (defaultWithViewFunction.Contains(basicFunction) && result.Functions.All(o => o != BasicFunction.View.ToString()))
            {
                result.Functions.Add(BasicFunction.View.ToString());
            }

            if (result.Functions.All(o => o.ToLower() != basicFunction.ToString().ToLower()))
            {
                switch (basicFunction)
                {
                case BasicFunction.Delete:
                    result.Functions.Add("DeleteItems");
                    break;

                case BasicFunction.Toggle:
                    result.Functions.Add("ToggleStatus");
                    break;

                default:
                    result.Functions.Add(basicFunction.ToString());
                    break;
                }
            }
            return(this);
        }
Exemple #3
0
        public bool UserHasAccess(BasicFunction basicFunction, string moduleNameNoWhitespace, int userId)
        {
            bool hasAccess = false;

            if (moduleNameNoWhitespace != null && moduleNameNoWhitespace.Trim() != string.Empty)
            {
                string functionName = string.Format("{0}{1}",
                                                    basicFunction.ToString(),
                                                    moduleNameNoWhitespace);

                hasAccess = (from a in UnitOfWork.Repository <UserGroupMap>().GetAll
                             join b in UnitOfWork.Repository <UserGroupFunction>().GetAll on a.UserGroupId equals b.UserGroupId
                             join c in UnitOfWork.Repository <CentralFunction>().GetAll on b.CentralFunctionId equals c.CentralFunctionId
                             where c.FunctionName == functionName & a.UserId == userId
                             select c.FunctionName)
                            .Any();
            }

            return(hasAccess);
        }