public static List <CommonSite> RetrieveSitesBySearch(Search paramsList) { List <CommonSite> sites = new List <CommonSite>(); sites.AddRange(DataSite.RetrieveSitesBySearch(paramsList)); return(sites); }
public static List <CommonSite> RetrieveSites() { List <CommonSite> sites = new List <CommonSite>(); sites.AddRange(DataSite.RetrieveSites()); return(sites); }
private DataUpdateItem ObtainDataUpdateItemByReflect(DataSite dataSite) { Assembly assembly = Assembly.GetExecutingAssembly(); string updaterFullName = "Lottery.DataUpdater.DataUpdateItems." + Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(_lotteryUpdateConfig.Name) + "." + Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(_lotteryUpdateConfig.Name) + "DataUpdateItem" + dataSite.Id; DataUpdateItem updateItem = assembly.CreateInstance(updaterFullName, false, BindingFlags.CreateInstance, null, new object[] { dataSite, LastPeriod, _lotteryUpdateConfig.Name }, null, null) as DataUpdateItem; return(updateItem); }
private IList <DataSite> LoaderDataSites(XmlNode node) { var datasites = new List <DataSite>(); foreach (XmlNode datasiteNode in node.SelectSingleNode("./datasites").ChildNodes) { var dataSite = new DataSite() { Id = Convert.ToInt32(datasiteNode.Attributes?["id"].InnerText), Count = Convert.ToInt32(datasiteNode.Attributes?["count"].InnerText), Name = datasiteNode.Attributes?["name"].InnerText, Enable = Convert.ToBoolean(datasiteNode.Attributes?["enable"].InnerText), Url = datasiteNode.Attributes?["url"].InnerText }; datasites.Add(dataSite); } return(datasites); }
private void RequestData(DataSite dataSite) { var dataUpdateItem = ObtainDataUpdateItemByReflect(dataSite); if (dataUpdateItem == null) { throw new LSException("获取彩票开始数据数据爬取器失败.=>" + dataSite.Name + dataSite.Id); } var newDataList = dataUpdateItem.RequestNewDatas(); lock (_lockObject) { if (newDataList != null && newDataList.Count > 0) { //必须排序 newDataList = newDataList.OrderBy(p => p.Period).ToList(); foreach (var newData in newDataList) { if (!_lotteryDataAppService.ExsitData(_lotteryDataJob.LotteryType.ToString(), newData.Period)) { var lastLotteryData = _lotteryDataAppService.Insert(newData); _lastPeriod = lastLotteryData.Period; string key = AppUtils.GetLotteryRedisKey(lastLotteryData.LotteryType, LsConstant.LastLotteryDataCacheKey); CacheHelper.SetCache(key, lastLotteryData); // todo:更新彩票分析数据 var lotteryEngine = LotteryEngine.GetLotteryEngine( Utils.StringConvertEnum <LotteryType>(lastLotteryData.LotteryType)); lotteryEngine.CalculateNextLotteryData(); } } LogDbHelper.LogDebug(string.Format("更新彩票{0}开奖数据数据成功,共{1}条数据", _lotteryDataJob.LotteryType, newDataList.Count), GetType().FullName + "=>RequestData", OperationType.Job); _lotteryDataJob.NextLotteryTime = _lotteryUpdateConfig.NextLotteryTime; } } }
public static ICollection <CommonSite> RetrieveSitesById(int[] id) { return(DataSite.RetrieveSitesById(id)); }
public static List <string> RetrieveCategories() { return(DataSite.RetrieveCategories()); }
public BjpksDataUpdateItem2(DataSite dataSite, long latestDataId, string lotteryName) : base(dataSite, latestDataId, lotteryName) { }
public static Boolean AddSite(CommonSite s) { return(DataSite.AddSite(s)); }
protected DataUpdateItem(DataSite dataSite, long latestDataId, string lotteryName) { _dataSite = dataSite; _latestDataId = latestDataId; _lotteryName = lotteryName; }