Exemple #1
0
        public async void PushNotifyToAccounts(string orderCode, RequestTypeEnum type)
        {
            try
            {
                var mess = string.Empty;
                IEnumerable <Entities.Account> lstAcc = new List <Entities.Account>();
                switch (type)
                {
                case RequestTypeEnum.CSRequestDestroy:
                {
                    mess   = string.Format("Mã đơn {0} - CSKH báo hủy đơn!", orderCode);
                    lstAcc = _accountBo.GetListByRole(UserTypeEnum.KitchenManager.GetHashCode());
                    break;
                }

                case RequestTypeEnum.KitchenDestroy:
                {
                    mess   = string.Format("Mã đơn {0} - Quản lý bếp đã hủy đơn, cần báo lại khách!", orderCode);
                    lstAcc = _accountBo.GetListByRole(UserTypeEnum.CustomerService.GetHashCode());
                    break;
                }
                }

                foreach (var acc in lstAcc)
                {
                    var key   = KeyCacheHelper.GenCacheKeyStatic(ConstKeyCached.NotifyAccount, acc.UserName);
                    var score = DateTime.Now.Ticks;
                    await cacheClient.SortedSetAddAsync <string>(key, mess, score);
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
            }
        }
Exemple #2
0
        protected void RemoveCache <T>(string funcName, params object[] args)
        {
            var    cacheName = "<" + funcName + ">" + ":" + GetFriendlyTypeName(typeof(T));
            string cacheKey  = KeyCacheHelper.GenCacheKeySerialize(cacheName, args);

            cacheClient.Remove(cacheKey);
        }
Exemple #3
0
        public bool CheckExitstObsoleteJWTTokenOnCache(string checksumKey, string token)
        {
            string keyCached = KeyCacheHelper.GenCacheKeyStatic(ConstKeyCached.ObsoleteJWTToken, checksumKey);
            var    val       = cacheClient.Get(keyCached);

            if (!string.IsNullOrEmpty(val))
            {
                return(token == val);
            }
            return(false);
        }
Exemple #4
0
 public bool DeleteNotifyAccount(string userName)
 {
     try
     {
         var key = KeyCacheHelper.GenCacheKeyStatic(ConstKeyCached.NotifyAccount, userName);
         return(cacheClient.Remove(key));
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
     }
     return(false);
 }
Exemple #5
0
        public IEnumerable <string> GetNotifyForAccounts(string userName)
        {
            var result = new List <string>();

            try
            {
                var key = KeyCacheHelper.GenCacheKeyStatic(ConstKeyCached.NotifyAccount, userName);
                result = cacheClient.SortedSetRangeByRankAsync <string>(key).Result;
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
            }
            return(result);
        }
Exemple #6
0
        protected T Execute <T>(Func <T> func, string funcName, int cachedInMinutes, params object[] args)
        {
            if (!AllowCached)
            {
                return(func.Invoke());
            }

            string cacheName = KeyCacheHelper.GenCacheKeySerialize(funcName, args);

            T obj = cacheClient.Get <T>(cacheName, _httpContextAccessor.HttpContext);

            if (obj == null || EqualityComparer <T> .Default.Equals(obj, default(T)))
            {
                obj = func.Invoke();
                if (obj != null && !EqualityComparer <T> .Default.Equals(obj, default(T)))
                {
                    cachedInMinutes = cachedInMinutes > 0 ? cachedInMinutes : shortCacheDuration;
                    cacheClient.Set <T>(cacheName, obj, cachedInMinutes);
                }
            }

            return(obj);
        }
Exemple #7
0
        private string CreateCacheKey <T>(Func <T> func, object[] args)
        {
            var cacheName = func.Method.Name.Replace("b__0", string.Empty) + ":" + GetFriendlyTypeName(typeof(T));

            return(KeyCacheHelper.GenCacheKeySerialize(cacheName, args));
        }
Exemple #8
0
        public bool DeleteJWTTokenOnCache(string checksumKey)
        {
            string keyCached = KeyCacheHelper.GenCacheKeyStatic(ConstKeyCached.JWTToken, checksumKey);

            return(cacheClient.Remove(keyCached));
        }
Exemple #9
0
        public bool ChecksumJWTOnCache(string checksumKey)
        {
            string keyCached = KeyCacheHelper.GenCacheKeyStatic(ConstKeyCached.JWTToken, checksumKey);

            return(cacheClient.ContainsKey(keyCached));
        }
Exemple #10
0
        public bool SaveObsoleteJWTTokenOnCache(string checksumKey, string token)
        {
            string keyCached = KeyCacheHelper.GenCacheKeyStatic(ConstKeyCached.ObsoleteJWTToken, checksumKey);

            return(cacheClient.Set(keyCached, token, 1));
        }
Exemple #11
0
        public bool SaveJWTTokenOnCache(string checksumKey, string token)
        {
            string keyCached = KeyCacheHelper.GenCacheKeyStatic(ConstKeyCached.JWTToken, checksumKey);

            return(cacheClient.Set(keyCached, token, _weekExpiredInMinute));
        }