Exemple #1
0
        private async Task HandleLogin()
        {
            try
            {
                string   result   = "";
                string[] accounts = tbx_loginMany.Text.Split(Environment.NewLine.ToCharArray());
                var      ldw      = new LoadingWindow();
                ldw.Show();
                ldw.SetTitle("登陆中");
                ldw.SetTip("正在登陆");
                var index = 0;
                for (var i = 0; i < accounts.Length; i++)
                {
                    try
                    {
                        ldw.SetPgr(0, i);
                        tbx_loginMany.Text = result;
                        var ac = accounts[i];
                        var tr = "";
                        if (ac.Trim() == "")
                        {
                            continue;
                        }
                        index++;
                        if (ac.Length < 13)
                        {
                            tr      = $"第{index}个账号密码{ac}:账号或密码格式错误" + Environment.NewLine;
                            result += tr;
                            continue;
                        }
                        var phone = ac.Substring(0, 11);
                        var pwd   = ac.Substring(12, ac.Length - 13);
                        if (ApiHelper.userBasicDatas.ContainsKey(phone))
                        {
                            tr      = $"第{index}个账号{phone}:该账号已经添加" + Environment.NewLine;
                            result += tr;
                            continue;
                        }
                        ld = new LoginData
                        {
                            account_type = "4",
                            deviceid     = UtilHelper.RandomCode(16),
                            imeiid       = UtilHelper.RandomCode(15),
                            phone        = phone,
                            pwd          = pwd
                        };
                        HttpMessage resp = await ApiHelper.Login(
                            ld.phone, ld.pwd, "", ld.account_type, ld.deviceid, ld.imeiid);

                        switch (resp.statusCode)
                        {
                        case HttpStatusCode.OK:
                            loginResponse = resp.data as LoginResponse;
                            if (loginResponse.iRet == 0)
                            {
                                var devices = await GetDevices(ld.phone);

                                if (devices == null || devices.Count == 0)
                                {
                                    tr      = $"第{i + 1}个账号{phone}:请先用app绑定玩客云设备" + Environment.NewLine;
                                    result += tr;
                                    continue;
                                }
                                tr      = $"第{i + 1}个账号{phone}:登陆成功!" + Environment.NewLine;
                                result += tr;
                                if (MainWindow.settings.loginDatas == null)
                                {
                                    MainWindow.settings.loginDatas = new List <LoginData>();
                                }
                                MainWindow.settings.loginDatas.Add(ld);
                                SettingHelper.WriteSettings(MainWindow.settings, MainWindow.password);
                                //保存登陆信息
                                ApiHelper.userBasicDatas.Add(loginResponse.data.phone, loginResponse.data);
                            }
                            else if (loginResponse.iRet == -121)
                            {
                                tr      = $"第{i + 1}个账号{phone}:验证码输入错误(-121)" + Environment.NewLine;
                                result += tr;
                                continue;
                            }
                            else if (loginResponse.iRet == -122)
                            {
                                tr      = $"第{i + 1}个账号{phone}:请输入验证码(-122)" + Environment.NewLine;
                                result += tr;
                                continue;
                            }
                            else
                            {
                                tr      = $"第{i + 1}个账号{phone}:登陆失败({loginResponse.iRet})" + Environment.NewLine;
                                result += tr;
                                continue;
                            }
                            break;

                        default:
                            tr      = $"第{i + 1}个账号{phone}:网络异常错误" + Environment.NewLine;
                            result += tr;
                            continue;
                        }
                    }
                    catch (Exception ex)
                    {
                        var tr = $"第{i + 1}个账号出现错误:{ex.Message}" + Environment.NewLine;
                        result += tr;
                        continue;
                    }
                }
                ldw.Close();
                tbx_loginMany.Text = result;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "发生错误");
            }
        }
Exemple #2
0
        private async Task HandleLogin()
        {
            try
            {
                string   result   = "";
                string[] accounts = tbx_loginMany.Text.Split(Environment.NewLine.ToCharArray());
                var      ldw      = new LoadingWindow();
                ldw.Show();
                ldw.SetTitle("登陆中");
                ldw.SetTip("正在登陆");
                var index = 0;
                var acl   = accounts.ToList().Where(t => t != "").ToArray();
                for (var i = 0; i < acl.Length; i++)
                {
                    try
                    {
                        ldw.SetPgr(0, i);
                        tbx_loginMany.Text = result;
                        var ac = acl[i];
                        var tr = "";
                        if (ac.Trim() == "")
                        {
                            continue;
                        }
                        index++;
                        if (ac.Length < 13)
                        {
                            tr      = $"第{index}个账号密码{ac}:账号或密码格式错误" + Environment.NewLine;
                            result += tr;
                            continue;
                        }
                        Regex re     = new Regex(@"[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?");//实例化一个Regex对象
                        var   phone  = "";
                        var   pwd    = "";
                        var   isMail = false;
                        if (re.Match(ac).Success)
                        {
                            phone  = re.Match(ac).Value;
                            pwd    = ac.Substring(phone.Length + 1, ac.Length - (phone.Length + 1));
                            isMail = true;
                        }
                        else
                        {
                            phone  = ac.Substring(0, 11);
                            pwd    = ac.Substring(12, ac.Length - 12);
                            isMail = false;
                        }
                        Debug.WriteLine("phone:" + phone);
                        Debug.WriteLine("pwd:" + pwd);
                        //if (phone == null || phone == "")
                        //{
                        //    continue;
                        //}
                        if (ApiHelper.userBasicDatas.ContainsKey(phone))
                        {
                            tr      = $"第{index}个账号{phone}:该账号已经添加" + Environment.NewLine;
                            result += tr;
                            continue;
                        }
                        ld = new LoginData
                        {
                            account_type = isMail ? "5" : "4",
                            deviceid     = UtilHelper.RandomCode(16),
                            imeiid       = UtilHelper.RandomCode(15),
                            phone        = phone,
                            pwd          = pwd
                        };
                        HttpMessage resp = await ApiHelper.Login(
                            ld.phone, ld.pwd, "", ld.account_type, ld.deviceid, ld.imeiid, isMail? 1 : 0);

                        switch (resp.statusCode)
                        {
                        case HttpStatusCode.OK:
                            loginResponse = resp.data as LoginResponse;
                            if (loginResponse.iRet == 0)
                            {
                                var devices = await GetDevices(ld.phone);

                                if (devices == null || devices.Count == 0)
                                {
                                    tr      = $"第{i + 1}个账号{phone}:请先用app绑定玩客云设备" + Environment.NewLine;
                                    result += tr;
                                    continue;
                                }
                                tr      = $"第{i + 1}个账号{phone}:登陆成功!" + Environment.NewLine;
                                result += tr;
                                if (MainWindow.settings.loginDatas == null)
                                {
                                    MainWindow.settings.loginDatas = new List <LoginData>();
                                }
                                MainWindow.settings.loginDatas.Add(ld);
                                SettingHelper.WriteSettings(MainWindow.settings, MainWindow.password);
                                //保存登陆信息
                                ApiHelper.userBasicDatas.Add(ld.phone, loginResponse.data);
                            }
                            else if (loginResponse.iRet == -121)
                            {
                                tr      = $"第{i + 1}个账号{phone}:验证码输入错误(-121)" + Environment.NewLine;
                                result += tr;
                                continue;
                            }
                            else if (loginResponse.iRet == -122)
                            {
                                tr      = $"第{i + 1}个账号{phone}:请输入验证码(-122)" + Environment.NewLine;
                                result += tr;
                                continue;
                            }
                            else
                            {
                                tr      = $"第{i + 1}个账号{phone}:登陆失败({loginResponse.iRet})" + Environment.NewLine;
                                result += tr;
                                continue;
                            }
                            break;

                        default:
                            tr      = $"第{i + 1}个账号{phone}:网络异常错误" + Environment.NewLine;
                            result += tr;
                            continue;
                        }
                    }
                    catch (Exception ex)
                    {
                        var tr = $"第{i + 1}个账号出现错误:{ex.Message}" + Environment.NewLine;
                        result += tr;
                        continue;
                    }
                    await Task.Delay(MainWindow.settings.refresh_everySpan * 1000);//防止过快引起风控
                }
                ldw.Close();
                tbx_loginMany.Text = result;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "发生错误");
            }
        }