示例#1
0
        public async Task <TPrizeForcast> ReadPrizeForcast()
        {
            var _now_time = DateTime.Now;

            var _resut = new TPrizeForcast()
            {
                PredictAmount = 0,
                SalesAmount   = 0,

                SequenceNo = WinnerReader.GetNextWeekSequenceNo(),
                IssueDate  = WinnerReader.GetNextWeekIssueDate(),

                LastReadTime = _now_time,
                NextReadTime = _now_time.AddMinutes(PrizeReadIntervalMinutes),
                ReadInterval = PrizeReadIntervalMinutes
            };

            try
            {
                var _html_document = await GetHtmlDocument();

                var _prize_info = GetPrizeInfo(_html_document);
                {
                    _resut.PredictAmount = _prize_info.predict;
                    _resut.SalesAmount   = _prize_info.sales;
                }
            }
            catch (Exception)
            {
            }

            return(_resut);
        }
示例#2
0
        public async Task <IActionResult> GetThisWeekPrize()
        {
            return(await CProxy.UsingAsync(async() =>
            {
                var _result = (success : false, message : "ok");

                if (DateTime.Now.Subtract(__prize_forcast.LastReadTime).TotalMinutes > __prize_reader.PrizeReadIntervalMinutes)
                {
                    __prize_forcast = await __prize_reader.ReadPrizeForcast();
                }

                _result.success = true;

                return new OkObjectResult(new
                {
                    success = _result.success,
                    message = _result.message,

                    result = __prize_forcast
                });
            }));
        }