示例#1
0
        public async Task <int> AddSDhtml(List <sys_issue> sys_Issues, string gameCode)
        {
            using (var db = BaseFactory.GetDbContext())
            {
                int       count       = 0;
                int       insertCount = 0;
                var       lottery     = GetLottery(gameCode);
                sys_issue sys_issue   = GetNowIssuNo(gameCode);
                foreach (var item in sys_Issues)
                {
                    if (sys_issue != null)
                    {
                        if (sys_issue.IssueNo == item.IssueNo)
                        {
                            break;
                        }
                    }
                    sys_issue issue = new sys_issue();
                    issue.IssueNo = item.IssueNo;

                    issue.OpenCode = item.OpenCode;


                    issue.OpenTime    = item.OpenTime;
                    issue.LotteryId   = lottery.Lottery_Id;
                    issue.LotteryCode = lottery.LotteryCode;
                    issue.CreateTime  = DateTime.Now;
                    issue.Url_Type    = (int)CollectionUrlEnum.url_500kaijiang;
                    count             = db.Insertable(issue).ExecuteCommand();
                    log.Info(lottery.LotteryName + "彩种" + issue.IssueNo + "期期号采集完毕");
                    insertCount += count;
                }
                return(await Task.FromResult(insertCount));
            }
        }
示例#2
0
        public async Task <int> AddBjdcIssue(HtmlNodeCollection htmlNodeCollection, string gameCode)
        {
            using (var db = BaseFactory.GetDbContext())
            {
                int       count      = 0;
                var       lottery    = GetLottery(gameCode);
                var       insertObjs = new List <sys_issue>();
                sys_issue sys_issue  = GetDescIssuNo(gameCode);
                foreach (var item in htmlNodeCollection)
                {
                    if (sys_issue != null)
                    {
                        if (sys_issue.IssueNo == item.Attributes["value"].Value)
                        {
                            break;
                        }
                    }
                    sys_issue issue = new sys_issue();
                    issue.IssueNo     = item.Attributes["value"].Value;
                    issue.LotteryId   = lottery.Lottery_Id;
                    issue.LotteryCode = lottery.LotteryCode;
                    issue.CreateTime  = DateTime.Now;
                    issue.Url_Type    = (int)CollectionUrlEnum.url_500zx;
                    insertObjs.Add(issue);
                    log.Info(lottery.LotteryName + "彩种" + issue.IssueNo + "期期号采集完毕");
                }
                if (insertObjs.Count != 0)
                {
                    count = db.Insertable(insertObjs.ToArray()).ExecuteCommand();
                }

                return(await Task.FromResult(count));
            }
        }
示例#3
0
 /// <summary>
 /// 根据彩种并且期号降序获取最新期号
 /// </summary>
 /// <param name="LotteryCode"></param>
 /// <returns></returns>
 public sys_issue GetDescIssuNo(string LotteryCode)
 {
     using (var db = BaseFactory.GetDbContext())
     {
         sys_issue issue = db.Queryable <sys_issue>().Where(n => n.LotteryCode == LotteryCode).OrderBy(n => n.IssueNo, OrderByType.Desc).Take(1).First();
         return(issue);
     }
 }
示例#4
0
        public async Task <int> LoadPlsHtml(string gameCode)
        {
            var anode = CommonHelper.GetExpect("http://kaijiang.500.com/pls.shtml");
            List <sys_issue> sys_issue = new List <sys_issue>();
            int index = 0;

            foreach (HtmlNode item in anode)
            {
                index++;
                if (index < 31)
                {
                    if (_IXML_DataService.GetDescIssuNo(gameCode) != null)
                    {
                        if (item.InnerHtml == _IXML_DataService.GetDescIssuNo(gameCode).IssueNo)
                        {
                            break;
                        }
                    }
                    sys_issue issue = new sys_issue();
                    issue.IssueNo = item.InnerHtml;
                    var htmlDoc = CommonHelper.LoadGziphtml("http://kaijiang.500.com/shtml/pls/" + item.InnerHtml + ".shtml", CollectionUrlEnum.url_500kaijiang);

                    var FirstTableTrNode = htmlDoc.DocumentNode.SelectNodes("//table[@class='kj_tablelist02']")[0].SelectNodes("tr");
                    int k = 1;
                    foreach (var item2 in FirstTableTrNode)//遍历第一个table下的tr
                    {
                        switch (k)
                        {
                        case 1:
                            var    Date     = item2.SelectSingleNode("//span[@class='span_right']").InnerHtml;
                            string openTime = Date.Split(':')[1].Split('兑')[0];
                            issue.OpenTime = Convert.ToDateTime(openTime).ToString("yyyy-MM-dd");
                            sys_issue.Add(issue);
                            break;

                        case 2:
                            var tdindex = item2.SelectSingleNode("td").SelectSingleNode("table").SelectSingleNode("tr").SelectNodes("td");
                            foreach (var item3 in tdindex)
                            {
                                var lilist = tdindex[1].SelectSingleNode("div").SelectSingleNode("ul").SelectNodes("li");
                                foreach (var item4 in lilist)
                                {
                                    issue.OpenCode += item4.InnerHtml + ",";
                                }
                                issue.OpenCode = issue.OpenCode.Trim(',');
                                break;
                            }
                            break;
                        }
                        k = k + 1;
                    }
                }
            }

            int count = await _IXML_DataService.AddSDhtml(sys_issue, gameCode);

            return(count);
        }
示例#5
0
        public async Task <int> AddXMLAsync(XmlNodeList xmlNodeList, string gameCode, string LotteryTime)
        {
            using (var db = BaseFactory.GetDbContext())
            {
                int       count      = 0;
                var       lottery    = GetLottery(gameCode);
                var       insertObjs = new List <sys_issue>();
                sys_issue sys_issue  = GetNowGpcIssuNo(gameCode, LotteryTime);
                foreach (XmlNode item in xmlNodeList)
                {
                    if (sys_issue != null)
                    {
                        if (sys_issue.IssueNo == item.Attributes["expect"].Value)
                        {
                            break;
                        }
                    }

                    sys_issue issue = new sys_issue();
                    issue.IssueNo = item.Attributes["expect"].Value;

                    if (item.Attributes["specail"] != null)
                    {
                        issue.OpenCode = item.Attributes["opencode"].Value + "|" + item.Attributes["specail"].Value;
                    }
                    else if (item.Attributes["opencode_specail"] != null)
                    {
                        issue.OpenCode = item.Attributes["opencode"].Value + "|" + item.Attributes["opencode_specail"].Value;
                    }
                    else
                    {
                        issue.OpenCode = item.Attributes["opencode"].Value;
                    }

                    issue.OpenTime    = item.Attributes["opentime"].Value;
                    issue.LotteryId   = lottery.Lottery_Id;
                    issue.LotteryCode = lottery.LotteryCode;
                    issue.CreateTime  = DateTime.Now;
                    issue.Url_Type    = (int)CollectionUrlEnum.url_500kaijiang;
                    issue.LotteryTime = LotteryTime;
                    insertObjs.Add(issue);
                    log.Info(lottery.LotteryName + "彩种" + issue.IssueNo + "期期号采集完毕");
                }
                if (insertObjs.Count != 0)
                {
                    count = db.Insertable(insertObjs).ExecuteCommand();
                    //await db.InsertRange(insertObjs);
                }

                return(await Task.FromResult(count));
            }
        }
示例#6
0
        public void JDDnonhighfreq(XmlDocument doc, List <sys_issue> IssueList)
        {
            var list = doc.DocumentElement.ChildNodes;

            foreach (XmlElement element in list)
            {
                sys_issue issue = new sys_issue();
                issue.LotteryCode = ((XmlElement)element.GetElementsByTagName("key")[0]).InnerText;
                issue.IssueNo     = ((XmlElement)element.GetElementsByTagName("qihao")[0]).InnerText;
                issue.OpenCode    = ((XmlElement)element.GetElementsByTagName("number")[0]).InnerText.Replace("-", "|");
                issue.OpenTime    = ((XmlElement)element.GetElementsByTagName("time")[0]).InnerText;
                IssueList.Add(issue);
            }
        }
示例#7
0
 public int AddCaiKeBJDC(Caike_Body caike_Body, string matchDateCode)
 {
     try
     {
         int m = 0;
         caike_Body.records.ForEach((record) =>
         {
             bjdc_result _Result = new bjdc_result
             {
                 MatchId     = matchDateCode + record.matchNo,
                 MatchDate   = "",
                 MatchNumber = record.matchNo,
                 HomeTeam    = record.homeTeam,
                 GuestTeam   = record.guestTeam,
                 HalfScore   = record.hScoreText.Replace("-", ":"),
                 FullScore   = record.scoreText.Substring(record.scoreText.IndexOf(">") + 1, record.scoreText.Substring(record.scoreText.IndexOf(">") + 1).IndexOf("<")).Replace("-", ":"),
                 LeagueName  = record.leagueName,
                 AvgEu_SP    = "123456",
                 Url_Type    = (int)CollectionUrlEnum.url_caike
             };
             int i = 0;
             record.details.ForEach((detail) =>
             {
                 if (detail.name != "" && detail.name != "-" && detail.value != "" && detail.value != "-")
                 {
                     if (i == 0)
                     {
                         _Result.LetBall      = detail.name.Substring(detail.name.IndexOf("(") + 1, detail.name.IndexOf(")") - detail.name.IndexOf("(") - 1);
                         _Result.RQSPF_Result = detail.name.Substring(detail.name.IndexOf("(") + 1, detail.name.IndexOf(")") - detail.name.IndexOf("(") - 1);
                         _Result.RQSPF_SP     = detail.value;
                         i++;
                     }
                     else if (i == 1)
                     {
                         _Result.ZJQ_Result = Convert2Number(detail.name.Replace("球", "")).ToString();
                         _Result.ZJQ_SP     = detail.value;
                         i++;
                     }
                     else if (i == 2)
                     {
                         _Result.SXDS_Result = detail.name;
                         _Result.SXDS_SP     = detail.value;
                         i++;
                     }
                     else if (i == 3)
                     {
                         _Result.BF_SP = detail.name;
                         i++;
                     }
                     else if (i == 4)
                     {
                         _Result.BQC_Result = detail.name;
                         _Result.BQC_SP     = detail.value;
                         i++;
                     }
                 }
             });
             if (!string.IsNullOrEmpty(_Result.RQSPF_Result) && _Result.RQSPF_Result != "-" &&
                 !string.IsNullOrEmpty(_Result.ZJQ_Result) && _Result.ZJQ_Result != "-" &&
                 !string.IsNullOrEmpty(_Result.FullScore) && _Result.FullScore != "-" &&
                 !string.IsNullOrEmpty(_Result.SXDS_Result) && _Result.SXDS_Result != "-" &&
                 !string.IsNullOrEmpty(_Result.BQC_Result) && _Result.BQC_Result != "-")
             {
                 _Result.IsFinish = true;
             }
             else
             {
                 _Result.IsFinish = false;
             }
             var model = db.Queryable <bjdc_result>().Where(x => x.MatchId == _Result.MatchId).First();
             if (model == null)
             {
                 db.Insertable(_Result).ExecuteCommand();
                 m++;
             }
             else
             {
                 if (!model.IsFinish)
                 {
                     db.Updateable(_Result).ExecuteCommand();
                 }
             }
         });
         var lottery = db.Queryable <sys_lottery>().Where(x => x.LotteryCode == "zqdc").First();
         caike_Body.matchDates.ForEach((matchDate) =>
         {
             if (matchDate.code == matchDateCode)
             {
                 sys_issue _sys_Issue   = new sys_issue();
                 _sys_Issue.LotteryId   = lottery.Lottery_Id;
                 _sys_Issue.IssueNo     = matchDate.code;
                 _sys_Issue.LotteryCode = lottery.LotteryCode;
                 _sys_Issue.CreateTime  = DateTime.Now;
                 var Model = db.Queryable <sys_issue>().Where(x => x.LotteryId == _sys_Issue.LotteryId && x.LotteryCode == _sys_Issue.LotteryCode && x.IssueNo == _sys_Issue.IssueNo).First();
                 if (Model == null)
                 {
                     db.Insertable(_sys_Issue).ExecuteCommand();
                 }
             }
         });
         return(m);
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
示例#8
0
        public async Task <int> AddQGDFCXMLAsync(XmlNodeList xmlNodeList, string gameCode)
        {
            using (var db = BaseFactory.GetDbContext())
            {
                int       count       = 0;
                int       insertCount = 0;
                var       lottery     = GetLottery(gameCode);
                sys_issue sys_issue   = GetNowIssuNo(gameCode);
                //ArrayList arrNodeList = new ArrayList();
                //foreach (XmlNode item in xmlNodeList)
                //{
                //    arrNodeList.Add(item);
                //}
                //arrNodeList.Reverse();
                foreach (XmlNode item in xmlNodeList)
                {
                    if (sys_issue != null && gameCode != "sfc" && gameCode != "jq4" && gameCode != "zc6")
                    {
                        if (sys_issue.IssueNo == item.Attributes["expect"].Value)
                        {
                            break;
                        }
                    }
                    var strCI = GetCodeIssue(gameCode, item.Attributes["expect"].Value);

                    if (strCI != null)
                    {
                        if (gameCode == "sfc" || gameCode == "jq4" || gameCode == "zc6")
                        {
                            DateTime date = DateTime.Now.AddDays(-3);
                            if (strCI.OpenCode.Contains("*") && Convert.ToDateTime(strCI.OpenTime) > date)
                            {
                                strCI.OpenCode   = item.Attributes["opencode"].Value;
                                strCI.UpdateTime = DateTime.Now;
                                count            = db.Updateable(strCI).ExecuteCommand();
                                log.Info(lottery.LotteryName + "彩种" + strCI.IssueNo + "期期号更新完毕");
                            }
                        }
                    }
                    else
                    {
                        sys_issue issue = new sys_issue();
                        issue.IssueNo = item.Attributes["expect"].Value;

                        if (item.Attributes["specail"] != null)
                        {
                            issue.OpenCode = item.Attributes["opencode"].Value + "|" + item.Attributes["specail"].Value;
                        }
                        else if (item.Attributes["opencode_specail"] != null)
                        {
                            issue.OpenCode = item.Attributes["opencode"].Value + "|" + item.Attributes["opencode_specail"].Value;
                        }
                        else
                        {
                            issue.OpenCode = item.Attributes["opencode"].Value;
                        }

                        issue.OpenTime    = item.Attributes["opentime"].Value;
                        issue.LotteryId   = lottery.Lottery_Id;
                        issue.LotteryCode = lottery.LotteryCode;
                        issue.CreateTime  = DateTime.Now;
                        issue.Url_Type    = (int)CollectionUrlEnum.url_500kaijiang;
                        count             = db.Insertable(issue).ExecuteCommand();
                        log.Info(lottery.LotteryName + "彩种" + issue.IssueNo + "期期号采集完毕");
                        insertCount += count;
                    }
                }

                return(await Task.FromResult(insertCount));
            }
        }
示例#9
0
        public void AddSys_issue(string LotteryCode, JsonReuslt jsonList)
        {
            var LotteryId = GetLottery(LotteryCode);

            jsonList.content.ForEach((a) =>
            {
                try
                {
                    sys_issue _Issue = new sys_issue();
                    if (KaiJiangWangDic.RedBallGameCode.ContainsKey(LotteryCode))
                    {
                        var dic             = KaiJiangWangDic.RedBallGameCode.Where(x => x.Key == LotteryCode).FirstOrDefault();
                        List <int> blueCode = new List <int>();
                        for (int h = 1; h <= dic.Value; h++)
                        {
                            blueCode.Add(a.preDrawCode[a.preDrawCode.Count - 1]);
                            a.preDrawCode.RemoveAt(a.preDrawCode.Count - 1);
                        }
                        a.preDrawCode.ForEach((x) =>
                        {
                            _Issue.OpenCode = _Issue.OpenCode + x + ",";
                        });
                        _Issue.OpenCode = _Issue.OpenCode.Remove(_Issue.OpenCode.Length - 1, 1);
                        if (blueCode != null && blueCode.Count > 0)
                        {
                            string blue = string.Empty;
                            blueCode.ForEach((n) => {
                                blue = blue + "," + n;
                            });
                            blue            = blue.Trim(',');
                            _Issue.OpenCode = _Issue.OpenCode + "|" + blue;
                        }
                    }
                    else
                    {
                        a.preDrawCode.ForEach((x) =>
                        {
                            _Issue.OpenCode = _Issue.OpenCode + x + ",";
                        });
                        _Issue.OpenCode = _Issue.OpenCode.Remove(_Issue.OpenCode.Length - 1, 1);
                    }
                    var IssueNo = a.preDrawIssue.ToString();
                    if (KaiJiangWangDic.CutStartIndex.ContainsKey(LotteryCode))
                    {
                        var CutDic = KaiJiangWangDic.CutStartIndex.Where(x => x.Key == LotteryCode).FirstOrDefault();
                        IssueNo    = IssueNo.Substring(CutDic.Value);
                    }
                    if (KaiJiangWangDic.AddStartChar.ContainsKey(LotteryCode))
                    {
                        var AddDic = KaiJiangWangDic.AddStartChar.Where(x => x.Key == LotteryCode).FirstOrDefault();
                        IssueNo    = AddDic.Value + IssueNo;
                    }
                    if (KaiJiangWangDic.AddChar.ContainsKey(LotteryCode))
                    {
                        var CharDic = KaiJiangWangDic.AddChar.Where(x => x.Key == LotteryCode).FirstOrDefault();
                        IssueNo     = IssueNo.Insert(IssueNo.Length - CharDic.Value, "-");
                    }
                    if (KaiJiangWangDic.DeleteZero.ContainsKey(LotteryCode))
                    {
                        var CharDic = KaiJiangWangDic.DeleteZero.Where(x => x.Key == LotteryCode).FirstOrDefault();
                        IssueNo     = IssueNo.Remove(CharDic.Value, 1);
                    }
                    _Issue.IssueNo     = IssueNo;
                    _Issue.LotteryId   = LotteryId;
                    _Issue.LotteryCode = LotteryCode;
                    _Issue.CreateTime  = DateTime.Now;
                    _Issue.OpenTime    = a.preDrawTime;
                    _Issue.Url_Type    = (int)CollectionUrlEnum.url_1122;
                    _Issue.LotteryTime = Convert.ToDateTime(a.preDrawTime).ToString("yyyy-MM-dd");
                    var model          = db.Queryable <sys_issue>().First(x => x.LotteryCode == LotteryCode && x.IssueNo == _Issue.IssueNo);
                    if (model == null)
                    {
                        db.Insertable <sys_issue>(_Issue).ExecuteCommand();
                        log.Info("url_1122网" + $"{LotteryCode}奖期{_Issue.IssueNo}成功新增数据");
                    }
                }
                catch (Exception ex)
                {
                }
            });
        }