public static AtomConfigModel Get(string code) { //缓存策略 var key = "atom_conf_get_" + code; var exist = AtomConfigCacheManage.GetIfExist <AtomConfigModel>(key); if (exist != null) { return(exist); } var now = DateTime.Now; var result = SonFact.Cur.Top <AtomConfig, AtomConfigModel>(t => t.ConfigCode == code && t.Enable == true); if (result.StartTime != null && result.StartTime.Value > now) { return(null); } if (result.EndTime != null && result.EndTime.Value < now) { return(null); } if (result != null) { AtomConfigCacheManage.AddCache(code, result); } return(result); }
public static List <AtomConfigValueModel> GetVals(string pCode, int relId) { //缓存策略 var key = "atom_conf_getvals_" + pCode + "_" + relId; var exist = AtomConfigCacheManage.GetIfExist <List <AtomConfigValueModel> >(key); if (exist != null) { return(exist); } var now = DateTime.Now; var result = new List <AtomConfigValueModel>(); var cate = GetCate(pCode); if (cate == null || cate.CateChildren == null || cate.CateChildren.Count == 0) { return(null); } foreach (var item in cate.CateChildren) { result.Add(GetVal(item.CateCode, relId)); } if (result != null) { AtomConfigCacheManage.AddCache(key, result); } return(result); }
public static AtomCateConfigModel GetCate(string pCode) { //缓存策略 var key = "atom_conf_getcate_" + pCode; var exist = AtomConfigCacheManage.GetIfExist <AtomCateConfigModel>(key); if (exist != null) { return(exist); } var result = SonFact.Cur.Top <AtomCateConfig, AtomCateConfigModel>(t => t.CateCode == pCode && t.Enable == true); if (result == null) { return(null); } var cates = SonFact.Cur.FindMany <AtomCateConfig, AtomCateConfigModel>(t => t.ParentCateCode == pCode && t.Enable == true); result.CateChildren = cates; if (result != null) { AtomConfigCacheManage.AddCache(key, result); } return(result); }
public static AtomConfigModel Gets(string parentCode) { //缓存策略 var key = "atom_conf_gets_" + parentCode; var exist = AtomConfigCacheManage.GetIfExist <AtomConfigModel>(key); if (exist != null) { return(exist); } var now = DateTime.Now; var result = SonFact.Cur.Top <AtomConfig, AtomConfigModel>(t => t.ConfigCode == parentCode && t.Enable == true); if (result.StartTime != null && result.StartTime.Value > now) { return(null); } if (result.EndTime != null && result.EndTime.Value < now) { return(null); } if (result == null) { return(null); } result.AtomChildren = new List <AtomConfigModel>(); var list = SonFact.Cur.FindMany <AtomConfig, AtomConfigModel>(t => t.ParentCode == result.ConfigCode && t.Enable == true); foreach (var item in list) { if (item.StartTime != null && item.StartTime.Value > now) { continue; } if (item.EndTime != null && item.EndTime.Value < now) { continue; } result.AtomChildren.Add(item); } if (result != null) { AtomConfigCacheManage.AddCache(key, result); } return(result); }
public static AtomConfigValueModel GetVal(string code, int relId) { //缓存策略 var key = "atom_conf_getval_" + code + "_" + relId; var exist = AtomConfigCacheManage.GetIfExist <AtomConfigValueModel>(key); if (exist != null) { return(exist); } var now = DateTime.Now; var result = SonFact.Cur.Top <AtomConfigValue, AtomConfigValueModel>(t => t.CateCode == code && t.RelId == relId && t.Enable == true); //如果没有可用的配置则使用默认配置 if (result == null || result.StartTime != null && result.StartTime.Value > now || result.EndTime != null && result.EndTime.Value < now) { result = SonFact.Cur.Top <AtomConfigValue, AtomConfigValueModel>(t => t.CateCode == code && t.RelId == 0 && t.Enable == true); } if (result == null) { return(null); } if (result.StartTime != null && result.StartTime.Value > now) { return(null); } if (result.EndTime != null && result.EndTime.Value < now) { return(null); } var cate = SonFact.Cur.Find <AtomCateConfig>(result.ConfigValueId); result.CateName = cate.CateName; if (result != null) { AtomConfigCacheManage.AddCache(key, result); } return(result); }