Ejemplo n.º 1
0
        private string Ini_betstr(string sball)
        {
            //330106$$$33010620170525145853000001$1$0$$ $ $ $ $01$ $
            #region 注释部分,串示例说明

            /*
             *  agentid         330106
             *  gamename        ql515
             *  drawno          2017020
             *  ticket          33010620170525145853000001
             *  playtype 1
             *  money 2
             *  betdetail
             *  name
             *  phonenumber
             *  idnumber
             *  cardnumber
             *  reserv1
             *  reserv2
             *  reserv3
             */
            #endregion
            DateTime.Now.ToShortTimeString();
            DateTime dt = DateTime.Now;

            string agentid  = AgentId.Text;                                                                               //渠道编号
            string gamename = GameName.Text;                                                                              //玩法编号
            string drawno   = DrawNo.Text;                                                                                //期号
            string ticket   = AgentId.Text + string.Format("{0:yyyyMMddHHmmss}", dt) + (_lsh.ToString()).PadLeft(6, '0'); //票ID

            BetNum betnum   = new BetNum();
            string playtype = "";                       //投注方式
            int    money    = 0;                        //金额
            //int ret = betnum.cfof_check_ball(sball, ref playtype, ref money);
            //检查投注号码合法 + 计算投注方式和金额
            if (0 == betnum.cfof_check_ball(sball, ref playtype, ref money))
            {
                string betdetail = ((Multiple.Text == string.Empty) ? "1" : Multiple.Text).PadLeft(3, '0') + (sball.Length / 2).ToString().PadLeft(2, '0') + sball;            //号码串   (倍数+号码个数+号码)
                money = money * Convert.ToInt16((Multiple.Text == string.Empty) ? "1" : Multiple.Text);
                string smoney     = string.Format("{0:f2}", money);
                string betmsgbody = agentid + "$" + gamename + "$" + drawno + "$" + ticket + "$" + playtype + "$" + smoney + "$" + betdetail + "$" + "$" + "$" + "$" + "$" + "01" + "$" + "$";
                textBox3.Text += "\r\nbetbody:" + betmsgbody;
                return(betmsgbody);
            }
            else if (-1 == betnum.cfof_check_ball(sball, ref playtype, ref money))
            {
                textBox_test.Text += "\r\n[ERR]:" + "投注号码个数有误";
                return("");
            }
            else if (-3 == betnum.cfof_check_ball(sball, ref playtype, ref money))
            {
                textBox_test.Text += "\r\n[ERR]:" + "投注号码有重复";
                return("");
            }
            else
            {
                textBox_test.Text += "\r\n[ERR]:" + betnum.cfof_check_ball(sball, ref playtype, ref money);
                return("");
            }
        }
Ejemplo n.º 2
0
        //c515玩法选号检测
        public int cfof_check_ball(string sball, ref string str1, ref int str2)
        {
            int    gameno     = 1;
            string scfofball  = sball;
            int    sfofballen = sball.Length;

            if (sfofballen % 2 != 0 || sfofballen < 10 || sfofballen > 30)
            {
                return(-1);      //投注号码个数有误
            }

            int[] ckball = new int[sfofballen / 2];
            for (int i = 0; i < sfofballen / 2; i++)
            {
                ckball[i] = Convert.ToInt16(scfofball.Substring((i * 2), 2));
                Console.WriteLine("iickball[" + i + "] = " + ckball[i].ToString().PadLeft(2, '0'));
                if (i > 0)
                {
                    foreach (int j in ckball)
                    {
                        Console.WriteLine("jjckball[" + j + "] = " + ckball[i].ToString().PadLeft(2, '0'));
                        if (ckball[i] == j)
                        {
                            return(-3);//投注号码有重复
                        }
                    }
                }
                //Console.WriteLine("ckball[" + i + "] = " + ckball[i].ToString().PadLeft(2, '0'));
            }
            if (sfofballen == 10)
            {
                str1 = "1";
                str2 = 2 * 1;
            }
            if (sfofballen > 10)
            {
                str1 = "2";
                BetNum betnum = new BetNum();
                str2 = betnum.count_cfof_num(gameno, sfofballen) * 2;
            }
            return(0);
        }