Example #1
0
        /// <summary>
        /// 登录者信号握手
        /// </summary>
        private void LoginHandShake()
        {
            int    tryCount     = 0;
            string oldHandShake = string.Empty;

            while (true)
            {
                Thread.Sleep(2000);
                try
                {
                    using (ASRS_ServiceSoapClient srv = new ASRS_ServiceSoapClient())
                    {
                        var user = srv.PW_User_GetOneByUserID(FormLogin.user.ID);

                        if (user.ISLOGININ == "N")//如果不在线
                        {
                            MessageBox.Show("系统已离线!");
                            Environment.Exit(0);
                        }
                        if (oldHandShake != user.HANDSHAKE)
                        {
                            oldHandShake              = user.HANDSHAKE;
                            tryCount                  = 0;
                            tSLabelDataBase.Text      = "数据库连接:正常";
                            tSLabelDataBase.ForeColor = Color.Blue;
                            tSLableEmployeeNo.Text    = user.ID;
                            tSLabelName.Text          = user.USERNAME;
                            SRM_Communicate();
                        }
                        else
                        {
                            tryCount++;
                            tSLabelDataBase.Text      = "数据库连接:中断";
                            tSLabelDataBase.ForeColor = Color.Red;
                            if (tryCount > 5)//如果连续五次握手失败则表明断线
                            {
                                user.ISLOGININ = "N";
                            }
                        }
                        user.HANDSHAKE = Guid.NewGuid().ToString();
                        srv.PW_User_UpdateUserInfo(user);
                    }
                }
                catch (Exception ex)
                {
                }
            }
        }
Example #2
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            string peoplenName = tBName.Text.Trim();
            string userid      = tBUserId.Text.Trim();
            string Password    = tBPassWord.Text.Trim();
            string GroupId     = cmB_Group.SelectedValue.ToString();

            if (tBPassWord.Text.Length < 8)
            {
                MessageBox.Show("密码长度小于8位!");
                tBPassWord.SelectAll();
                tBPassWord.Focus();
                return;
            }
            if (tBUserId.Text.Trim() == string.Empty)
            {
                MessageBox.Show("工号不能为空!");
                tBUserId.SelectAll();
                tBUserId.Focus();
                return;
            }
            PW_User wkrs = new PW_User();

            using (ASRS_Volvo.ServiceForVolvo.ASRS_ServiceSoapClient srv = new ASRS_ServiceSoapClient())
            {
                srv.PW_User_GetOneByUserID(userid);
                wkrs.PASSWORD  = srv.CommonMethod_StringEncoding(Password);//解密
                wkrs.ID        = userid;
                wkrs.USERNAME  = peoplenName;
                wkrs.USERGROUP = GroupId;
                if (tBUserId.Enabled == false)
                {
                    if (srv.PW_User_UpdateUserInfo(wkrs))
                    {
                        tBUserId.Clear();
                        tBPassWord.Clear();
                        tBName.Clear();
                        tBUserId.Focus();
                        Close();
                    }
                    else
                    {
                        MessageBox.Show("保存失败!");
                        tBUserId.Focus();
                        tBUserId.SelectAll();
                        return;
                    }
                }
                else if (tBUserId.Enabled == true)
                {
                    if (srv.PW_User_InsertOne(wkrs))
                    {
                        tBUserId.Clear();
                        tBPassWord.Clear();
                        tBName.Clear();
                        tBUserId.Focus();
                    }
                    else
                    {
                        MessageBox.Show("保存失败!");
                        tBUserId.Focus();
                        tBUserId.SelectAll();
                        return;
                    }
                }
            }
        }