예제 #1
0
        private void GetData()
        {
            CDatabase db = null;

            try
            {
                db = new CDatabase("act_beast");
                if (Act20211030ResultAdo.p_act_20211030_unite_winning_detail(out DateTime dateflag, db) != null)
                {
                    return;
                }
                LogMessage(dateflag.ToString("MM-dd") + "结果抓取");
                List <Act20211030ResultInfo> infos = fc3d_Capture();
                if (!infos.Exists(n => n.dateflag == dateflag))
                {
                    return;
                }
                Act20211030ResultInfo info = infos.Where(n => n.dateflag == dateflag).First();
                string msg = "";
                if (info.result >= 0)
                {
                    LogMessage("今日结果抓取成功:" + info.result);
                    if (!Act20211030ResultAdo.p_act_20211030_unite_winning_insert(dateflag, info.result, out msg, db))
                    {
                        LogMessage("更新开奖结果失败" + msg);
                    }
                    else
                    {
                        LogMessage(msg + "-结果为:" + info.result);
                    }
                }
                else
                {
                    LogMessage("今日结果抓取失败");
                }
            }
            catch (Exception ex)
            {
                CLog.WriteLog(ex.Message + ex.StackTrace);
                LogMessage(ex.Message);
            }
            finally
            {
                db.close();
            }
        }
예제 #2
0
        private List <Act20211030ResultInfo> fc3d_Capture()
        {
            string url  = "http://www.cwl.gov.cn/cwl_admin/front/cwlkj/search/kjxx/findDrawNotice?name=3d&issueCount=30&issueStart=&issueEnd=&dayStart=&dayEnd=";
            string data = string.Empty;
            List <Act20211030ResultInfo> list = new List <Act20211030ResultInfo>();

            try
            {
                data = CUtils.ReadPage(url, "", 10000);
            }
            catch (Exception ex)
            {
                LogMessage("获取fc3d彩票网数据出错:" + ex.Message + ex.StackTrace);
                CLog.WriteLog("获取fc3d彩票网数据出错:" + ex.Message + ex.StackTrace);
                return(list);
            }
            try
            {
                fc3dlottery result = CUtils.DeserialiseFromJson <fc3dlottery>(data);

                if (result == null || result.result == null)
                {
                    return(list);
                }

                foreach (var item in result.result)
                {
                    Act20211030ResultInfo info = new Act20211030ResultInfo();
                    info.dateflag = CTools.ToDateTime(item.date.Substring(0, 10));
                    info.result   = CTools.ToInt(item.red.Substring(0, 1));
                    list.Add(info);
                }
                return(list.OrderByDescending(p => p.dateflag).ToList());
            }
            catch (Exception ex)
            {
                CLog.WriteLog("获取OG311X5开奖网数据出错#2:" + data + ex.Message + ex.StackTrace);
                return(list);
            }
        }
예제 #3
0
        /// <summary>
        /// 获取当天开奖结果
        /// </summary>
        /// <param name="db"></param>
        /// <returns></returns>
        public static Act20211030ResultInfo p_act_20211030_unite_winning_detail(out DateTime dateflag, CDatabase db)
        {
            List <SqlParameter> parms = new List <SqlParameter>();

            SqlParameter pDateflag = new SqlParameter("@dateflag", SqlDbType.DateTime);

            pDateflag.Direction = ParameterDirection.Output;
            parms.Add(pDateflag);

            db.execute_procedure("p_act_20211030_unite_winning_detail", parms);

            dateflag = (pDateflag.Value == System.DBNull.Value) ? DateTime.MinValue : Convert.ToDateTime(pDateflag.Value);

            if (db.num_rows <= 0)
            {
                return(null);
            }
            Act20211030ResultInfo c = new Act20211030ResultInfo();

            c.rid      = (db.rows[0]["rid"] == System.DBNull.Value) ? 0 : Convert.ToInt32(db.rows[0]["rid"].ToString());
            c.result   = (db.rows[0]["result"] == System.DBNull.Value) ? 0 : Convert.ToInt32(db.rows[0]["result"].ToString());
            c.dateflag = (db.rows[0]["dateflag"] == System.DBNull.Value) ? DateTime.MinValue : Convert.ToDateTime(db.rows[0]["dateflag"].ToString());
            return(c);
        }