Exemplo n.º 1
0
        private void btnAnalysisCaike_Click(object sender, EventArgs e)
        {
            //获取最新预测数据
            YucerawdataDAL dal = new YucerawdataDAL();
            DataSet ds = dal.GetYucerawdata();
            foreach (DataRow row in ds.Tables[0].Rows)
            {
                string url = row["url"].ToString();
                string caizhongtype = row["caizhongtype"].ToString();
                string title = row["title"].ToString();
                string p2 = row["p2"].ToString();
                string p3 = row["p3"].ToString();
                string p8 = row["p8"].ToString();
                //分析数据
                int zhongkuohaoIndex = title.IndexOf("[");
                int zhongkuohaoIndex2 = title.IndexOf("]");
                string yuceren = "";
                if (zhongkuohaoIndex != -1)
                {
                    yuceren = title.Substring(zhongkuohaoIndex + 1, zhongkuohaoIndex2 - zhongkuohaoIndex - 1);
                }

                string zhudui = "";
                string kedui = "";
                if (p2.IndexOf(":") != -1)
                {
                    p2 = PreHandleData2(p2);
                    string[] splitP2 = p2.Split(' ');
                    kedui = splitP2[splitP2.Length - 1];
                    zhudui = splitP2[splitP2.Length - 3];
                    //去除主队和客队中包含的括号
                    kedui = DeleteKuohao(kedui);
                    zhudui = DeleteKuohao(zhudui);
                }
                else
                {
                    int vsIndex = p2.ToUpper().IndexOf("VS");
                    string preVs = p2.Substring(0, vsIndex).Replace(" ", "");
                    string postVs = p2.Substring(vsIndex + 2);
                    kedui = postVs.Replace(" ", "").Replace(" ", "");
                    int lastKonggeIndex = preVs.Trim().LastIndexOf(" ");
                    if (lastKonggeIndex != -1)
                    {
                        zhudui = preVs.Substring(lastKonggeIndex).Trim();
                    }
                    else
                    {
                        zhudui = preVs.Trim();
                    }

                    //去除主队和客队中包含的括号
                    kedui = DeleteKuohao(kedui);
                    zhudui = DeleteKuohao(zhudui);
                }

                //获取比赛时间
                string bisaishijian = "";
                p3 = PreHandleData3(p3);
                int bisaiIndex = p3.IndexOf("比赛时间:");
                bisaishijian = p3.Substring(bisaiIndex + 5);

                //获取推荐及让球数
                string spf = "";
                string rangqiushu = "0";
                int hasrangqiu = 0;
                p8 = PreHandleData8(p8);

                int maohaoIndex = p8.IndexOf(":");

                if (maohaoIndex == -1)
                {
                    maohaoIndex = p8.IndexOf("推荐") + 1;
                }
                int qiankuohaoIndex = p8.IndexOf("(");
                int houkuohaoIndex = p8.IndexOf(")");

                //这个分支适用于模式: 竞彩足球让球胜平负推荐:0(维冈竞技让1球)
                if (qiankuohaoIndex != -1 && qiankuohaoIndex > maohaoIndex && houkuohaoIndex == p8.Length - 1)
                {
                    spf = p8.Substring(maohaoIndex + 1, qiankuohaoIndex - maohaoIndex - 1);
                }
                else if (qiankuohaoIndex != -1 && qiankuohaoIndex > maohaoIndex && houkuohaoIndex != p8.Length - 1)
                {
                    spf = p8.Substring(houkuohaoIndex + 1);
                }
                else
                {
                    spf = p8.Substring(maohaoIndex + 1);
                }

                if (p8.IndexOf("无让球") != -1 || p8.IndexOf("没有让球") != -1 || p8.IndexOf("不让球") != -1)
                {
                }
                else
                {
                    if (p8.IndexOf("让球") != -1 || p8.IndexOf(")球") != -1)
                    {
                        //让球(-1)和让(-1)球模式
                        int rangIndex = p8.LastIndexOf("让");
                        int qiuIndex = p8.LastIndexOf("球");
                        if (rangIndex != -1 && qiuIndex > rangIndex + 1)
                        {
                            rangqiushu = p8.Substring(rangIndex + 1, qiuIndex - rangIndex - 1);
                            switch (rangqiushu)
                            {
                                case "一":
                                    rangqiushu = "1";
                                    break;
                                case "二":
                                    rangqiushu = "2";
                                    break;
                                case "三":
                                    rangqiushu = "3";
                                    break;
                                case "四":
                                    rangqiushu = "4";
                                    break;
                                case "五":
                                    rangqiushu = "5";
                                    break;
                                case "六":
                                    rangqiushu = "6";
                                    break;
                                case "七":
                                    rangqiushu = "7";
                                    break;
                                case "八":
                                    rangqiushu = "8";
                                    break;
                                case "九":
                                    rangqiushu = "9";
                                    break;
                                case "十":
                                    rangqiushu = "10";
                                    break;
                            }
                        }
                        else
                        {
                            rangqiushu = p8.Substring(qiankuohaoIndex + 1, houkuohaoIndex - qiankuohaoIndex - 1);
                        }
                    }
                    else
                    {
                        int rangIndex = p8.LastIndexOf("让");
                        int qiuIndex = p8.LastIndexOf("球");
                        if (rangIndex != -1)
                        {
                            rangqiushu = p8.Substring(rangIndex + 1, qiuIndex - rangIndex - 1);
                        }
                        else if (qiankuohaoIndex != -1)
                        {
                            rangqiushu = p8.Substring(qiankuohaoIndex + 1, houkuohaoIndex - qiankuohaoIndex - 1);
                        }
                    }
                }
                if (rangqiushu == "0")
                {
                    hasrangqiu = 0;
                }
                else
                {
                    hasrangqiu = 1;
                }


                //保存分析数据
                Yuceanalysis analy = new Yuceanalysis();
                analy.Url = url;
                analy.Zhudui = zhudui;
                analy.Kedui = kedui;
                analy.Yucetype = caizhongtype;
                analy.Bisaishijian = Convert.ToDateTime(bisaishijian);
                analy.Touzhushijian = Convert.ToDateTime(bisaishijian).AddHours(-11).Date;
                analy.Rangqiushu = rangqiushu;
                analy.Hasrangqiu = hasrangqiu;
                analy.OperateTime = DateTime.Now;
                analy.Operator = "吴林";
                analy.Yucespf = spf;
                analy.Yuceren = yuceren;
                dal.InsertYuceanalysis(analy);
            }

            MessageBox.Show("分析成功!");
        }
Exemplo n.º 2
0
         public void InsertYuceanalysis(Yuceanalysis data)
        {
            int total = 0;
            string conStr = "server=localhost;User Id=root;database=aicai;" +
                           "Password=root;Character Set=utf8;";
            using (MySqlConnection mySqlCon = new MySqlConnection(conStr))
            {
                mySqlCon.Open();
                int recordCount = 0;
                using (MySqlCommand myCountCom = mySqlCon.CreateCommand())
                {
                    string sqlCountStr = @"
select count(*) from yuce_rawdata_analysis
where zhudui = ?zhudui and kedui = ?kedui and url=?url;";
                    myCountCom.CommandText = sqlCountStr;
                    myCountCom.Parameters.AddWithValue("?url", data.Url);
                    myCountCom.Parameters.AddWithValue("?zhudui", data.Zhudui);
                    myCountCom.Parameters.AddWithValue("?kedui", data.Kedui);
                    object obj = myCountCom.ExecuteScalar();
                    recordCount = Convert.ToInt32(obj);
                }
                if (recordCount == 0)
                {
                    using (MySqlCommand mySqlCom = mySqlCon.CreateCommand())
                    {
                        //这里需要注意的是在 Sql 语句中有一个参数是 ?BlogsName 
                        //很明显,这个参数有点古怪,和我们一直使用的 @ 不一样, 
                        //这是因为在 MySql 以前的提供的 .NET Connector 中 
                        //都是采用 ? 来标志一个参数的,而现在的 .NET Connector 呢, 
                        //您既可以采用 ? 来标志一个参数,您也可以使用一个 @ 符号来标志一个参数 
                        //新版的 .NET Connector 对此都是支持的 
                        string sqlStr = @"

insert into yuce_rawdata_analysis(url,zhudui,kedui,yucetype,yuceren,yucespf,hasrangqiu,rangqiushu,bisaishijian,touzhushijian,bianhao,operator,operatetime)
values(?url,?zhudui,?kedui,?yucetype,?yuceren,?yucespf,?hasrangqiu,?rangqiushu,?bisaishijian,?touzhushijian,?bianhao,?operator,?operatetime)
";

                        mySqlCom.CommandText = sqlStr;
                        mySqlCom.Parameters.AddWithValue("?url", data.Url);
                        mySqlCom.Parameters.AddWithValue("?zhudui", data.Zhudui);
                        mySqlCom.Parameters.AddWithValue("?kedui", data.Kedui);
                        mySqlCom.Parameters.AddWithValue("?yucetype", data.Yucetype);
                        mySqlCom.Parameters.AddWithValue("?yuceren", data.Yuceren);
                        mySqlCom.Parameters.AddWithValue("?yucespf", data.Yucespf);
                        mySqlCom.Parameters.AddWithValue("?hasrangqiu", data.Hasrangqiu);
                        mySqlCom.Parameters.AddWithValue("?rangqiushu", data.Rangqiushu);
                        mySqlCom.Parameters.AddWithValue("?bisaishijian", data.Bisaishijian);
                        mySqlCom.Parameters.AddWithValue("?touzhushijian", data.Touzhushijian);
                        mySqlCom.Parameters.AddWithValue("?bianhao", data.Bianhao);
                        mySqlCom.Parameters.AddWithValue("?operator", data.Operator);
                        mySqlCom.Parameters.AddWithValue("?operatetime", data.OperateTime);

                        mySqlCom.ExecuteScalar();
                    }
                }
            
            }

           
        }