Пример #1
0
        public async Task <IActionResult> LoginIn(string workid, string password)
        {
            //这里只是简单处理了
            if (string.IsNullOrEmpty(workid) || string.IsNullOrEmpty(password))
            {
                return(FailMessage("请输入账号密码登录!"));
            }

            Facade.LoginFacade loginFacade = new Facade.LoginFacade();

            password = Md5.Encrypt32(password);


            Team_User userModel = new Team_User();

            if (!loginFacade.Login(workid, password, ref userModel))
            {
                return(FailMessage(loginFacade.Message));
            }

            var claims = new List <Claim>()
            {
                new Claim("userId", userModel.Id.ToString()),
                new Claim("userName", userModel.Name),
                new Claim("workId", userModel.Workid),
                new Claim("sex", userModel.Sex.ToString())
            };

            //创建身份信息
            var userPrincipal = new ClaimsPrincipal(new ClaimsIdentity(claims, "Customer"));

            //core 自带的登录验证框架
            await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, userPrincipal, new AuthenticationProperties
            {
                ExpiresUtc   = DateTime.UtcNow.AddMinutes(120),
                IsPersistent = false,
                AllowRefresh = true
            });

            DataAccess.CodeGenerator.Tsys_Log_Da da = new DataAccess.CodeGenerator.Tsys_Log_Da();

            //增加系统登录日志
            Tsys_Log model = new Tsys_Log()
            {
                Content    = $"用户[{userModel.Name}],登录成功! 时间:{DateTime.Now}",
                Createtime = DateTime.Now,
                Type       = (int)SysLogType.登录日志,
            };

            da.Insert(model);

            return(SuccessMessage("登录成功!"));
        }
Пример #2
0
        private void button1_Click(object sender, EventArgs e)
        {
            //判空
            foreach (Control con in this.Controls)
            {
                if (con.Text == "" && con is TextBox)
                {
                    MessageBox.Show("请输入完整!", "提示");
                    con.Focus();
                    return;
                }
                if (txtNewpwd.Text != txtConfigpwd.Text)
                {
                    MessageBox.Show("修改密码不一致,请重新输入!", "提示");
                    txtConfigpwd.Text = "";
                    txtConfigpwd.Focus();
                    return;
                }
            }



            oldPWD = txtOldpwd.Text.ToString();
            //定义外观层对象
            Facade.LoginFacade ModifyPWD = new Facade.LoginFacade();
            Entity.User        user      = new Entity.User();

            user.UserID = frmLogin.UserName;
            // user.UserID = "1";
            user.PassWord = oldPWD;

            string newPWD = txtNewpwd.Text.ToString();


            //定义外观层对象,同时将参数传递给Facade
            Facade.ModifyFacade modifyPWD = new Facade.ModifyFacade();
            bool flag;

            flag = modifyPWD.CheckPWD(user, newPWD);
            if (flag == true)
            {
                MessageBox.Show("修改密码成功!");
            }
            else
            {
                MessageBox.Show("原密码输入有误,请重新输入!");
                txtOldpwd.Text = "";
                txtOldpwd.Focus();
                return;
            }
        }
Пример #3
0
        private void lblLogin_Click(object sender, EventArgs e)
        {
            if (txtUserID.Text.Trim() == "")
            {
                MessageBox.Show("请填写用户名!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            if (txtPassWord.Text.Trim() == "")
            {
                MessageBox.Show("请填写密码!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            //try
            //{
            //实例化外观
            Facade.LoginFacade FLogin = new Facade.LoginFacade();

            Entity.User_Info user = new Entity.User_Info();

            user.UserID   = Convert.ToInt32(txtUserID.Text.Trim());
            user.PassWord = txtUserID.Text.Trim();

            Boolean flag = false;

            flag = FLogin.SelectUser(user);

            if (flag != false)
            {
                this.Hide();
                this.DialogResult = System.Windows.Forms.DialogResult.OK;

                frmMain frmMain = new frmMain();
                frmMain.Show();
            }
            else
            {
                MessageBox.Show("用户名或密码错误!");
            }

            //}
            // catch (Exception ex)
            //{
            //  Console.WriteLine(ex.Message);
            //throw new Exception ("登录失败!");
            // }
        }
Пример #4
0
        public IActionResult LoginByWorkId(string workid, string pwd)
        {
            Facade.LoginFacade loginFacade = new Facade.LoginFacade();
            Team_User          userModel   = new Team_User();


            if (!loginFacade.Login(workid, pwd, ref userModel))
            {
                return(FailMessage("登录失败:" + loginFacade.Message));
            }


            var claims = new[]
            {
                new Claim(JwtRegisteredClaimNames.Nbf, $"{new DateTimeOffset(DateTime.Now).ToUnixTimeSeconds()}"),
                new Claim(JwtRegisteredClaimNames.Exp, $"{new DateTimeOffset(DateTime.Now.AddMinutes(300)).ToUnixTimeSeconds()}"),
                new Claim("userId", userModel.Id.ToString()),
                new Claim("userName", userModel.Name),
                new Claim("workId", userModel.Workid),
            };

            var key   = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(AppConfig.Jwt.ApiKey));
            var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256);

            var token = new JwtSecurityToken(
                issuer: AppConfig.Jwt.Issuer,
                audience: AppConfig.Jwt.Audience,
                claims: claims,
                expires: DateTime.Now.AddMinutes(300),
                signingCredentials: creds);

            var jwt = new JwtSecurityTokenHandler().WriteToken(token);


            return(SuccessResult(jwt, "登录成功!"));
        }
Пример #5
0
        private void btlogin_Click(object sender, EventArgs e)
        {
            UserName = txtUserName.Text.Trim();  //全局变量
            //传递用户输入的参数
            string UserID = txtUserName.Text.Trim();

            // string PWD = txtUserPWD.Text.Trim();

            //定义外观层对象
            Facade.LoginFacade loginfacade = new Facade.LoginFacade();
            Entity.User        userinfo    = new Entity.User();

            //将文本框的值给实体层对象,让实体层对象带上参数
            userinfo.UserID   = txtUserName.Text;
            userinfo.PassWord = txtUserPWD.Text;

            string strResult;

            strResult = loginfacade.loginfacade(userinfo);

            switch (strResult)
            {
            case "无用户": MessageBox.Show("用户不存在,请重新输入");

                break;

            case "登录成功":     //MessageBox.Show("登录成功 ");
                this.Visible = false;
                //查找user的信息
                Entity.User userInfo = new Entity.User();
                userinfo.UserID = txtUserName.Text;
                Facade.QueryUserFacade queryUser = new Facade.QueryUserFacade();
                IList <Entity.User>    lUser     = new List <Entity.User>();
                lUser = queryUser.QueryUser(userinfo);

                //将正在上班的信息,传到当值 表
                Facade.AddWorkerFacade addonwork = new Facade.AddWorkerFacade();

                Entity.onWork onwork = new Entity.onWork();
                onwork.UserID   = lUser[0].UserID;
                onwork.Level    = lUser[0].Level;
                onwork.Computer = Environment.MachineName;     //获得计算机名称
                bool flag;
                flag = addonwork.addOnwork(onwork);

                //传到上机记录表
                Entity.WorkLog worklog = new Entity.WorkLog();
                worklog.UserID   = lUser[0].UserID;
                worklog.Level    = lUser[0].Level;
                worklog.Computer = Environment.MachineName;
                worklog.Status   = "正常上机";
                flag             = addonwork.addWorkLog(worklog);

                frmMain frmmain = new frmMain();
                frmmain.StartPosition = FormStartPosition.CenterParent;
                frmmain.Show();
                break;

            case "密码不正确": MessageBox.Show("用户密码不正确,请重新输入 ");
                break;
            }
        }