Example #1
0
        /// <summary>
        /// 根据省市区名称获取对应的省市区编码 add by caoheyang 20150407
        /// </summary>
        /// <param name="model">参数实体</param>
        /// <returns></returns>
        public string GetOpenCode(Ets.Model.ParameterModel.Area.ParaAreaNameInfo model)
        {
            var    redis      = new ETS.NoSql.RedisCache.RedisCache();
            string key        = MD5.Encrypt(string.Format("{0}_{1}_{2}", model.ProvinceName, model.CityName, model.AreaName).Replace(" ", ""));
            string cacheValue = redis.Get <string>(key);

            if (string.IsNullOrWhiteSpace(cacheValue))
            {
                DMAreaCodeInfo tempModel = new AreaDao().GetOpenCodeSql(model);
                if (tempModel == null)
                {
                    return(null);
                }
                else if (tempModel.AreaIsOpen == 0 || tempModel.ProvinceIsOpen == 0 || tempModel.CityIsOpen == 0)
                {
                    redis.Set(key, SystemConst.CityOpenInfo, DateTime.Now.AddDays(30));
                }
                else
                {
                    redis.Set(key, string.Format("{0}_{1}_{2}", tempModel.ProvinceCode, tempModel.CityCode, tempModel.AreaCode)
                              , DateTime.Now.AddDays(30));
                }
            }
            return(redis.Get <string>(key));
        }
Example #2
0
        /// <summary>
        /// 修改开发城市后更新Redis缓存
        /// danny-20150413
        /// </summary>
        /// <param name="version"></param>
        /// <returns></returns>
        public void ResetOpenCityListRedis()
        {
            AreaModelList areaList = new AreaModelList();
            var           redis    = new ETS.NoSql.RedisCache.RedisCache();
            IList <Model.DomainModel.Area.AreaModel> list = dao.GetOpenCitySql();

            areaList.AreaModels = list;
            areaList.Version    = Config.ApiVersion;
            if (list != null)
            {
                redis.Set(RedissCacheKey.Ets_Service_Provider_Common_GetOpenCity_New, JsonHelper.ToJson(areaList));
            }
        }
        /// <summary>
        /// 获取全局变量表数据,已加入缓存
        /// 窦海超
        /// 2015年4月2日 13:15:02
        /// </summary>
        public static GlobalConfigModel GlobalConfigGet(int GroupId)
        {
            GlobalConfigModel model = null;

            #region redis判断,如果没有加到redis中
            var    redis    = new ETS.NoSql.RedisCache.RedisCache();
            string cacheKey = string.Format(RedissCacheKey.Ets_Dao_GlobalConfig_GlobalConfigGet, GroupId);//缓存的KEY
            model = redis.Get <GlobalConfigModel>(cacheKey);
            if (CurrentGlobalVersion != ETS.Config.GlobalVersion || model == null)
            {
                CurrentGlobalVersion = ETS.Config.GlobalVersion;
                model = new GlobalConfigDao().GlobalConfigMethod(GroupId);
                redis.Set(cacheKey, model);
            }
            #endregion
            return(model);
        }
        /// <summary>
        /// 设置全局变量表数据TimeSubsidies
        /// </summary>
        /// <param name="opName"></param>
        /// <param name="value"></param>
        /// <param name="Remark"></param>
        /// <returns></returns>
        public bool UpdateTimeSubsidies(string opName, string value, string Remark, int GroupId, int StrategyId)
        {
            bool result = false;

            using (IUnitOfWork tran = EdsUtilOfWorkFactory.GetUnitOfWorkOfEDS())
            {
                if (_dao.AddSubsidiesLog("TimeSubsidies", opName, Remark, GroupId, StrategyId))
                {
                    result = _dao.UpdateTimeSubsidies(value, GroupId);
                }
                var          redis    = new ETS.NoSql.RedisCache.RedisCache();
                const string cacheKey = RedissCacheKey.Ets_Dao_GlobalConfig_GlobalConfigGet;
                redis.Delete(cacheKey);
                var model = new GlobalConfigDao().GlobalConfigMethod(GroupId);
                redis.Set(cacheKey, model);
                tran.Complete();
            }
            return(result);
        }
Example #5
0
        /// <summary>
        /// 根据appkey和版本查询配置信息
        /// </summary>
        /// <param name="appkey">appkey</param>
        /// <param name="version">版本号码</param>
        /// <returns></returns>
        public GroupApiConfigModel GetGroupApiConfigByAppKey(string appkey, string version)
        {
            var redis = new ETS.NoSql.RedisCache.RedisCache();
            GroupApiConfigModel model = redis.Get <GroupApiConfigModel>(appkey + version);

            if (model == null)
            {
                GroupApiConfigModel tempmodel = _dao.GetGroupApiConfigByAppKey(appkey, version);
                if (tempmodel == null)
                {
                    return(null);
                }
                else
                {
                    redis.Set(appkey + version, tempmodel);
                    return(redis.Get <GroupApiConfigModel>(appkey + version));
                }
            }
            else
            {
                return(model);
            }
        }
Example #6
0
        /// <summary>
        /// 获取开通城市的省市区
        /// 窦海超
        /// 2015年3月19日 17:09:53
        /// </summary>
        /// <param name="version">当前版本号</param>
        /// <param name="isResultData">是否返回所有数据,因为APP端调用时如果是最新则不需要返回AreaModelList的值</param>
        /// <returns></returns>
        public Model.Common.ResultModel <Model.DomainModel.Area.AreaModelList> GetOpenCity(string version, bool isResultData = true)
        {
            AreaModelList areaList = new AreaModelList();
            var           redis    = new ETS.NoSql.RedisCache.RedisCache();
            string        key      = RedissCacheKey.Ets_Service_Provider_Common_GetOpenCity_New;

            //if (Config.ApiVersion == version)
            //{
            //    //如果配置开通城市版本相同,则返回空数据
            //    return ResultModel<AreaModelList>.Conclude(ETS.Enums.CityStatus.Newest, null);
            //}
            string strAreaList = redis.Get <string>(key);

            if (!string.IsNullOrEmpty(strAreaList))
            {
                areaList = JsonHelper.JsonConvertToObject <AreaModelList>(strAreaList);
            }
            if (areaList.AreaModels == null || areaList.AreaModels.Count <= 0)
            {
                IList <AreaModel> list = dao.GetOpenCitySql();
                areaList            = new AreaModelList();
                areaList.AreaModels = list;
                //areaList.Version = Config.ApiVersion;
                if (list != null)
                {
                    redis.Set(key, JsonHelper.JsonConvertToString(areaList));
                    //redis.Set(key, areaList);
                }
            }
            areaList.Version = Config.ApiVersion;
            if (Config.ApiVersion == version && !isResultData)
            {
                areaList.AreaModels = null;
                return(ResultModel <AreaModelList> .Conclude(ETS.Enums.CityStatus.UnNewest, areaList));
            }
            return(ResultModel <AreaModelList> .Conclude(ETS.Enums.CityStatus.Newest, areaList));
        }