예제 #1
0
        /// <summary>
        /// 用户是否在公司里
        /// </summary>
        /// <param name="companyCode">公司编号</param>
        /// <param name="userCode">用户编号</param>
        /// <returns></returns>
        public static bool IsInOrganizeByCode(string companyCode, string userCode)
        {
            // 返回值
            bool result = false;

            // 检查参数有效性
            if (string.IsNullOrWhiteSpace(companyCode) || string.IsNullOrWhiteSpace(userCode))
            {
                return(result);
            }

            // 先判断缓存,减少数据库查询
            string key = "User:ByCompanyCode:ByCode" + companyCode + ":" + userCode;

            using (var redisClient = PooledRedisHelper.GetReadOnlyClient())
            {
                result = redisClient.ContainsKey(key);
                if (result)
                {
                    return(result);
                }
            }

            if (!result)
            {
                BaseUserManager manager = new BaseUserManager();
                BaseUserEntity  entity  = manager.GetObjectByCompanyCodeByCode(companyCode, userCode);
                SetCache(entity);
                result = true;
            }

            return(result);
        }