Esempio n. 1
0
        public async Task <List <ModuleApplication> > Initial(string group)
        {
            var data = new List <ModuleApplication>();
            var principalIdentity = RequestContext.Principal.Identity;
            var userId            = principalIdentity.GetUserId();

            //1 - CMS, 2 - Patient Services, 3 - Internal Services
            if (userId.Length > 0)
            {
                string key = ":" + group + ":" + userId;
                data = (List <ModuleApplication>)MemoryCacheObject.GetCacheObject(ObjectCacheProfile.CACHE_MODULE_USER + key);
                if (data == null)
                {
                    List <string> list = new List <string> {
                        "Group", "Userid", "DefaultRoleInitial"
                    };
                    var para = APIProvider.APIGeneratorParameter(list, group, userId, APIConstant.DefaultRoleInitial);

                    var source = await _module.Initial(para);

                    data = Mapper.Map <List <ModuleApplication> >(source);

                    MemoryCacheObject.CacheObject(ObjectCacheProfile.CACHE_MODULE_USER + key, data, 1200); //6h
                }

                if (data == null)
                {
                    data = new List <ModuleApplication>();
                }

                return(data);
            }
            return(data);
        }
Esempio n. 2
0
        private UserCache AccessCacheUserData()
        {
            var userCache = (UserCache)MemoryCacheObject.GetCacheObject(ObjectCacheProfile.CACHE_PROFILE_USER + _userSession.UserId);

            if (userCache == null)
            {
                UserSecretInfoViewModel info = APIProvider.Authorize_GetNonAsync <UserSecretInfoViewModel>(_userSession.BearerToken, "Account", "GetSecretInfo", null, APIConstant.API_Resource_Authorize);
                if (info != null)
                {
                    var       patientId     = (info.PatientId == null ? string.Empty : info.PatientId);
                    UserCache cacheUserData = new UserCache();
                    cacheUserData.Image     = (info.Image != null ? FileManagement.ByteArrayToImageBase64(info.Image) : string.Empty);
                    cacheUserData.UserName  = _userSession.UserName;
                    cacheUserData.PatientId = patientId;
                    cacheUserData.UserId    = _userSession.UserId;

                    MemoryCacheObject.CacheObject(ObjectCacheProfile.CACHE_PROFILE_USER + _userSession.UserId, cacheUserData);

                    return(cacheUserData);
                }
            }
            return(userCache);
        }