private void btnLoginGroup_Click(object sender, EventArgs e)
        {
            var          button  = sender as PictureBox;
            DataGridView dgvView = button.Name == "btnLoginBuyGroup" ? dgvUserBuy : dgvUserSell;

            bool hasFakeIp;

            if (button.Name == "btnLoginBuyGroup")
            {
                hasFakeIp = ckBuyAccRandomIp.Checked;
            }
            else
            {
                hasFakeIp = ckSellAccRandomIp.Checked;
            }

            //var aaa = dgvUserBuy.DataSource;
            for (int rows = 0; rows < dgvView.Rows.Count; rows++)
            {
                var user   = dgvView.Rows[rows].Cells[0].Value;
                var pass   = dgvView.Rows[rows].Cells[1].Value;
                var status = dgvView.Rows[rows].Cells[2].Value;

                if (user == null && pass == null)
                {
                    continue;
                }

                if (user == null || pass == null)
                {
                    UpdateLogText(string.Format("Thông tin tài khoản {0}/{1} không đúng!", user, pass), eLogTextType.Error);
                    continue;
                }

                if (status == null || status.ToString() == "Login")
                {
                    UpdateLogText(string.Format("Bắt đầu đăng nhập tài khoản [{0}]......", user),
                                  eLogTextType.Warning);
                    SboEngine sbo = new SboEngine();
                    if (hasFakeIp)
                    {
                        sbo.IpFake = IpHelper.GetRandomIp();
                    }

                    Random r   = new Random();
                    var    url = DataContainer.SboScanServers[r.Next(DataContainer.SboScanServers.Count())];
                    sbo.Login(url, user.ToString(), pass.ToString());
                    if (sbo.AccountStatus == eAccountStatus.Online)
                    {
                        sbo.OnExceptionEvent += SboBetOnOnExceptionEvent;
                        sbo.StartBetRunEngine(scanType, true);
                        UpdateLogText(string.Format("Đăng nhập [{0}] thành công! Số dư khả dụng là {1}", user,
                                                    sbo.UpdateAvailabeCredit()));
                        if (dgvView.Name == "dgvUserBuy")
                        {
                            buyAccEngines.Add(sbo);
                        }
                        else
                        {
                            sellAccEngines.Add(sbo);
                        }

                        accSboBet.Add(user.ToString());

                        dgvView.Rows[rows].Cells[0]                 = new DataGridViewLinkCell();
                        dgvView.Rows[rows].Cells[0].Value           = user.ToString();
                        dgvView.Rows[rows].Cells[2].Style.BackColor = Color.SteelBlue;
                        dgvView.Rows[rows].Cells[2].Value           = "Logout";

                        //dgvView.Invoke(new MethodInvoker(
                        //    delegate
                        //    {

                        //    }));

                        //this.Invoke((MethodInvoker) (() =>
                        //{
                        //    dgvView.Rows[rows].Cells[0] = new DataGridViewLinkCell();
                        //    dgvView.Rows[rows].Cells[0].Value = user.ToString();
                        //    dgvView.Rows[rows].Cells[2].Style.BackColor = Color.SteelBlue;
                        //    dgvView.Rows[rows].Cells[2].Value = "Logout";
                        //}));
                    }
                    else
                    {
                        UpdateLogText(string.Format("Đăng nhập [{0}] thất bai.", user), eLogTextType.Error);
                    }
                }
            }
        }
Exemple #2
0
        private SboEngine InitLoginSbo(string domain, string username, string pass, object ipFake, int rate)
        {
            UpdateLogText(string.Format("Bắt đầu đăng nhập tài khoản SBO [{0}]......", username), eLogTextType.Warning);

            SboEngine sboEngine = new SboEngine();

            if (ipFake != null)
            {
                if (!string.IsNullOrEmpty(ipFake.ToString()))
                {
                    sboEngine.IpFake = ipFake.ToString();
                }
            }

            if (sboEngine.Login(domain, username, pass))
            {
                sboEngine.EngineId     = Guid.NewGuid().ToString();
                sboEngine.ExchangeRate = rate * 10;
                sboEngine.StartScanEngine(eScanType.Live);
                UpdateLogText(string.Format("Đăng nhập [{0}] thành công! Số dư khả dụng là {1}", username, sboEngine.UpdateAvailabeCredit()));
                return(sboEngine);
            }
            else
            {
                UpdateLogText(string.Format("Đăng nhập sbo [{0}] không thành công!", username), eLogTextType.Error);
                return(null);
            }
        }
        private void dgvAccEngine_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex < 0)
            {
                return;
            }

            DataGridView    dgv         = (DataGridView)sender;
            DataGridViewRow selectedRow = dgv.Rows[e.RowIndex];
            var             user        = selectedRow.Cells[0].Value;
            var             pass        = selectedRow.Cells[1].Value;
            var             status      = selectedRow.Cells[2].Value;

            if (status == null)
            {
                selectedRow.Cells[2].Style.BackColor = Color.Red;
                selectedRow.Cells[2].Value           = "Login";
                return;
            }

            if (e.ColumnIndex == dgv.Columns[0].Index && status.ToString() == "Logout")
            {
                SboEngine s;
                if (dgv.Name == "dgvUserBuy")
                {
                    s = buyAccEngines.First(se => se.UserName == user.ToString());
                }
                else
                {
                    s = sellAccEngines.First(se => se.UserName == user.ToString());
                }

                var        betlist = s.GetBetList();
                frmBetList f       = new frmBetList(betlist, user.ToString());
                f.Show();
            }

            if (e.ColumnIndex == dgv.Columns[3].Index)
            {
                if (status.ToString() != "Logout")
                {
                    UpdateLogText("Lỗi tài khoản chưa được đăng nhập.", eLogTextType.Error);
                    return;
                }

                SboEngine s;
                if (dgv.Name == "dgvUserBuy")
                {
                    s = buyAccEngines.First(se => se.UserName == user.ToString());
                }
                else
                {
                    s = sellAccEngines.First(se => se.UserName == user.ToString());
                }

                var creadit = s.UpdateAvailabeCredit();
                UpdateLogText(string.Format("Hạn mức khả dụng tài khoản [{0}] là {1}", user, creadit), eLogTextType.Warning);
            }

            if (e.ColumnIndex == dgv.Columns[2].Index && status.ToString() == "Login")
            {
                if (user == null || pass == null)
                {
                    UpdateLogText("Thông tin tài khoản không hợp lệ!", eLogTextType.Error);
                    return;
                }

                if (accSboBet.Exists(s => s == user.ToString()))
                {
                    UpdateLogText("Tài khoản này đã tồn tại trong hệ thống, vui lòng kiểm tra lại!", eLogTextType.Error);
                    return;
                }

                bool hasFakeIp;
                if (dgv.Name == "dgvUserBuy")
                {
                    hasFakeIp = ckBuyAccRandomIp.Checked;
                }
                else
                {
                    hasFakeIp = ckSellAccRandomIp.Checked;
                }

                UpdateLogText(string.Format("Bắt đầu đăng nhập tài khoản [{0}]......", user), eLogTextType.Warning);
                SboEngine sbo = new SboEngine();
                if (hasFakeIp)
                {
                    sbo.IpFake = IpHelper.GetRandomIp();
                }

                Random r   = new Random();
                var    url = DataContainer.SboScanServers[r.Next(DataContainer.SboScanServers.Count())];
                sbo.Login(url, user.ToString(), pass.ToString());
                if (sbo.AccountStatus == eAccountStatus.Online)
                {
                    sbo.OnExceptionEvent += SboBetOnOnExceptionEvent;
                    sbo.StartBetRunEngine(scanType, true);
                    UpdateLogText(string.Format("Đăng nhập [{0}] thành công! Số dư khả dụng là {1}", user, sbo.UpdateAvailabeCredit()));
                    if (dgv.Name == "dgvUserBuy")
                    {
                        buyAccEngines.Add(sbo);
                    }
                    else
                    {
                        sellAccEngines.Add(sbo);
                    }

                    accSboBet.Add(user.ToString());

                    selectedRow.Cells[0]                 = new DataGridViewLinkCell();
                    selectedRow.Cells[0].Value           = user.ToString();
                    selectedRow.Cells[2].Style.BackColor = Color.SteelBlue;
                    selectedRow.Cells[2].Value           = "Logout";
                }
                else
                {
                    UpdateLogText(string.Format("Đăng nhập [{0}] thất bai.", user), eLogTextType.Error);
                }
            }

            if (e.ColumnIndex == dgv.Columns[2].Index && status.ToString() == "Logout")
            {
                SboEngine s;

                if (dgv.Name == "dgvUserBuy")
                {
                    s = buyAccEngines.First(se => se.UserName == user.ToString());
                }
                else
                {
                    s = sellAccEngines.First(se => se.UserName == user.ToString());
                }

                s.LogOff();

                if (s.AccountStatus == eAccountStatus.Offline)
                {
                    accSboBet.RemoveAll(x => x == user.ToString());

                    UpdateLogText(string.Format("Đã đăng xuất tài khoản [{0}]", user), eLogTextType.Warning);

                    if (dgv.Name == "dgvUserBuy")
                    {
                        buyAccEngines.Remove(s);
                    }
                    else
                    {
                        sellAccEngines.Remove(s);
                    }
                    selectedRow.Cells[0]                 = new DataGridViewTextBoxCell();
                    selectedRow.Cells[0].Value           = user.ToString();
                    selectedRow.Cells[2].Style.BackColor = Color.Red;
                    selectedRow.Cells[2].Value           = "Login";
                }
            }
        }