Esempio n. 1
0
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            LoginCfg = _loginCfgBll.Get();
            if (LoginCfg != null)
            {
                stbAccount.SkinTxt.Text = LoginCfg.Account;
                if (LoginCfg.RememberPassword || LoginCfg.AutoLogin)
                {
                    stbPassword.SkinTxt.Text       = LoginCfg.Password.Substring(3, 6);
                    checkBoxRememberPwd.Checked    = true;
                    stbPassword.SkinTxt.MouseDown += (sender, fe) =>
                    {
                        stbPassword.SkinTxt.SelectAll();
                    };
                    stbPassword.SkinTxt.KeyUp += (sender, ke) =>
                    {
                        _useInputPassword = true;
                    };
                }

                if (LoginCfg.AutoLogin)
                {
                    checkBoxAutoLogin.Checked = true;
                }
            }
        }
Esempio n. 2
0
        public bool AddOrUpdate(LoginCfg cfg)
        {
            if (_logincfgDal.Exits(cfg))
            {
                return(_logincfgDal.Update(cfg));
            }

            return(_logincfgDal.Add(cfg));
        }
Esempio n. 3
0
        public bool Delete(LoginCfg cfg)
        {
            const string sql = @"
                DELETE  FROM LoginCfg
                WHERE   Account = @Account";

            using (var con = DbFactory.CreateConnection())
            {
                return(con.Execute(sql, cfg) > 0);
            }
        }
Esempio n. 4
0
        public bool Exits(LoginCfg cfg)
        {
            const string sql = @"
                SELECT  COUNT(1) AS Count
                FROM    LoginCfg
                WHERE   Account = @Account";

            using (var con = DbFactory.CreateConnection())
            {
                return(con.Query <int>(sql, cfg).Single() > 0);
            }
        }
Esempio n. 5
0
        public bool Update(LoginCfg cfg)
        {
            const string sql = @"
                UPDATE  LoginCfg
                SET     Password = @Password ,
                        RememberPassword = @RememberPassword ,
                        AutoLogin = @AutoLogin
                WHERE   Account = @Account";

            using (var con = DbFactory.CreateConnection())
            {
                return(con.Execute(sql, cfg) > 0);
            }
        }
Esempio n. 6
0
        public bool Add(LoginCfg cfg)
        {
            const string sql = @"
                INSERT  INTO LoginCfg
                        ( Account ,
                          Password ,
                          RememberPassword ,
                          AutoLogin
                        )
                VALUES  ( @Account ,
                          @Password ,
                          @RememberPassword ,
                          @AutoLogin
                        )";

            using (var con = DbFactory.CreateConnection())
            {
                return(con.Execute(sql, cfg) > 0);
            }
        }
Esempio n. 7
0
 public bool Delete(LoginCfg cfg)
 {
     return(_logincfgDal.Delete(cfg));
 }
Esempio n. 8
0
        public ViewLogin(ILoginCfgBll loginCfgBll,
                         IUserBll userBll, IViewFactory viewFactory, IUpdateInfoBll updateInfoBll,
                         IOfflineCheckManager offlineCheckManager, IGlobalApplicationData globalApplicationData)
        {
            InitializeComponent();
            InitUI();
            InitEvents();

            _loginCfgBll           = loginCfgBll;
            _userBll               = userBll;
            _viewFactory           = viewFactory;
            _updateInfoBll         = updateInfoBll;
            _offlineCheckManager   = offlineCheckManager;
            _globalApplicationData = globalApplicationData;
            _loginResponse         = state =>
            {
                string info = string.Empty;

                switch (state)
                {
                case LoginState.Failed:
                    info = "服务器异常,登录失败!";
                    break;

                case LoginState.InvalidAccountOrPassword:
                    LoginCfg = null;
                    info     = "用户名或密码错误!";
                    break;

                case LoginState.LoggedIn:
                    info = "该用户帐号已经登录。";
                    break;

                case LoginState.Expired:
                    info = "该用户帐号已过期,不能登录。";
                    break;

                case LoginState.Locked:
                    info = "该用户帐号已被锁定,请联系管理员进行解锁!";
                    break;

                case LoginState.HangUpTimeNotEnough:
                    info = "挂机端挂机时间不足,不能登录操作端。";
                    break;

                case LoginState.CannotConnectServer:
                    info = "连接服务器失败!";
                    break;

                case LoginState.ClientOffline:
                    info = "挂机端不在线,不能登录操作端。";
                    break;

                case LoginState.ClientIsNotLatestVersion:
                    info = "挂机端没有更新到最新版本,请更新后再登录操作端。";
                    break;

                case LoginState.NotAudit:
                case LoginState.Successed:
                    if (state == LoginState.NotAudit && IsClient)
                    {
                        info = "该用户帐号没有审核,不能登录挂机端。";
                        break;
                    }

                    info = "该用户帐号没有审核,登录成功后只允许对用户信息进行完善,不允许进行刷单操作!\r\n\r\n" +
                           "用户信息完善后,请联系管理员或客服帮助审核!";
                    Invoke(() =>
                    {
                        if (state == LoginState.NotAudit)
                        {
                            MessageBoxEx.Show(this, info, "登录", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }

                        if (LoginCfg == null)
                        {
                            if (checkBoxRememberPwd.Checked || checkBoxAutoLogin.Checked)
                            {
                                LoginCfg = new LoginCfg
                                {
                                    Account          = stbAccount.SkinTxt.Text.Trim(),
                                    Password         = MD5Encrypt.GetMD5(stbPassword.SkinTxt.Text.Trim()),
                                    RememberPassword = checkBoxRememberPwd.Checked,
                                    AutoLogin        = checkBoxAutoLogin.Checked
                                };
                                _loginCfgBll.AddOrUpdate(LoginCfg);
                            }
                        }
                        else
                        {
                            if (!checkBoxAutoLogin.Checked && !checkBoxRememberPwd.Checked)
                            {
                                _loginCfgBll.Delete(LoginCfg);
                            }
                            else if (LoginCfg.RememberPassword != checkBoxRememberPwd.Checked ||
                                     LoginCfg.AutoLogin != checkBoxAutoLogin.Checked)
                            {
                                LoginCfg.RememberPassword = checkBoxRememberPwd.Checked;
                                LoginCfg.AutoLogin        = checkBoxAutoLogin.Checked;
                                _loginCfgBll.AddOrUpdate(LoginCfg);
                            }
                        }

                        var user = new User
                        {
                            Account  = stbAccount.SkinTxt.Text.Trim(),
                            IsClient = IsClient
                        };

                        if (LoginCfg != null)
                        {
                            user.Password = LoginCfg.Password;
                        }
                        else
                        {
                            user.Password = MD5Encrypt.GetMD5(stbPassword.SkinTxt.Text.Trim());
                        }

                        _globalApplicationData.ApplicationData.IsClient = IsClient;
                        _globalApplicationData.ApplicationData.User     = user;
                        base.DialogResult = DialogResult.OK;
                        base.Close();
                        _offlineCheckManager.Start();
                    });
                    return;
                }

                Invoke(() =>
                {
                    MessageBoxEx.Show(this, info, "登录", MessageBoxButtons.OK, MessageBoxIcon.Information);
                });
            };
        }