Beispiel #1
0
        private async void btnLogin_ClickAsync(object sender, EventArgs e)
        {
            try
            {
                UserLoginForm userLoginForm = new UserLoginForm();
                userLoginForm.UserName = txtName.Text;
                userLoginForm.Password = txtPwd.Text;
                User user = await GetUserAsync(userLoginForm);

                if (user != null)
                {
                    LoginInfo.sessionID = Helper.GenerateSessionID();
                    LoginInfo.user      = user;
                    this.Hide();
                    var mainForm = new MainForm();
                    mainForm.ShowDialog();
                    this.Close();
                }
                else
                {
                    MessageBox.Show("Please provide correct username and password and try again!");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
 public MainForm(string userID, UserLoginForm userLoginForm)
 {
     user       = usersBusinessLogic.GetUserByID(userID);
     loginform  = new UserLoginForm();
     loginform  = userLoginForm;
     view_Group = view_GroupBusinessLogic.GetView_GroupByUserID(userID);
     InitializeComponent();
     //根据用户组别view_Group.GroupName或者view_Group.Remark移除菜单中不属于该用户的功能
     if (view_Group.Remark == "班组")
     {
         tvMenu.Nodes.Remove(tvMenu.Nodes[4]);
         tvMenu.Nodes.Remove(tvMenu.Nodes[3]);
         tvMenu.Nodes.Remove(tvMenu.Nodes[2].Nodes[3]);
         tvMenu.Nodes.Remove(tvMenu.Nodes[2].Nodes[2]);
         tvMenu.Nodes.Remove(tvMenu.Nodes[2].Nodes[1]);
         tvMenu.Nodes.Remove(tvMenu.Nodes[1]);
     }
     if (view_Group.Remark == "采购组")
     {
         tvMenu.Nodes.Remove(tvMenu.Nodes[6]);
         tvMenu.Nodes.Remove(tvMenu.Nodes[2].Nodes[0]);
         tvMenu.Nodes.Remove(tvMenu.Nodes[1]);
     }
     if (view_Group.Remark == "验收组")
     {
         tvMenu.Nodes.Remove(tvMenu.Nodes[6]);
         tvMenu.Nodes.Remove(tvMenu.Nodes[2].Nodes[0]);
         tvMenu.Nodes.Remove(tvMenu.Nodes[1]);
     }
     this.tvMenu.ExpandAll();//启动时将treeview菜单节点全部展开
 }
        public async Task <IActionResult> Login([FromBody] UserLoginForm user)
        {
            var loginCheck = await _authService.CheckUser(user.Email, user.Password);

            if (!loginCheck)
            {
                throw new HttpStatusCodeException(HttpStatusCode.Unauthorized, _localizer["Wrong password or email"]);
            }

            var accessToken = await _authService.GetAccessToken(user.Email, user.Password);

            var refreshToken = await _authService.GetRefreshToken(user.Email, user.Password);

            var userData = await _userService.GetUserData(user.Email);


            var response = new AuthLoginResponse();

            response.Address      = userData.Address;
            response.City         = userData.City;
            response.Name         = userData.Name;
            response.NIP          = userData.NIP == null ? (int?)null : int.Parse(userData.NIP);
            response.PostCode     = userData.PostCode;
            response.State        = userData.State;
            response.AccessToken  = accessToken;
            response.RefreshToken = refreshToken;
            response.Email        = user.Email;



            return(accessToken != null && refreshToken != null && userData != null ?
                   (IActionResult)StatusCode(200, response) : StatusCode(500));
        }
 public ActionResult Login(UserLoginForm model)
 {
     if (ModelState.IsValid)
     {
         string sessionValidCode = Session["validatecode"] == null ? string.Empty : Session["validatecode"].ToString();
         if (!model.Code.Equals(sessionValidCode))
         {
             return(RedirectToAction("Login", "Home", new { msg = "验证码错误!请重新输入" }));
         }
         model.Password = md5tool.GetMD5(model.Password);
         UserManage         userManage = new UserManage();
         ViewUserAsEmployee user       = userManage.Login(model);
         if (user == null)
         {
             return(RedirectToAction("Login", "Home", new { msg = "账号或密码不正确,是否重新登陆?" }));
         }
         else if (user.UserStatus != "在职")
         {
             return(RedirectToAction("Login", "Home", new { msg = "您已经办理离职,如有特殊情况请与人事部沟通。" }));
         }
         else
         {
             Session["loginuser"] = user;
             return(Redirect("/System/Main/Index/"));
         }
     }
     return(View());
 }
Beispiel #5
0
        public async Task LoginUser(UserLoginForm userLoginForm)
        {
            var viewModel = new UserLoginForm()
            {
                UserName = userLoginForm.UserName
            };

            var user = await _userManager.FindByNameAsync(userLoginForm.UserName) ??
                       await _userManager.FindByEmailAsync(userLoginForm.UserName);

            if (user == null)
            {
                Error("Nieprawidłowa nazwa użytkownika lub hasło!");
            }

            var result = await _signInManager.PasswordSignInAsync(user.UserName,
                                                                  userLoginForm.Password, false, false);

            if (result.Succeeded)
            {
                UserContext.UserId = user.Id;
            }
            else if (result.IsLockedOut)
            {
                Error("Uzytkownik został zablokowany!");
            }
            else if (result.IsNotAllowed)
            {
                Error("Uzytkownik jest nieaktywny!");
            }
            else
            {
                Error("Nieprawidłowa nazwa użytkownika lub hasło!");
            }
        }
Beispiel #6
0
        // 切换用户
        private void toolStripButton2_Click_1(object sender, EventArgs e)
        {
            UserLoginForm uf = new UserLoginForm();

            if (uf.ShowDialog() == DialogResult.OK)
            {
                DataSettings.Default.User = uf.User;
            }
        }
Beispiel #7
0
        /// <summary>
        /// 匹配单个用户登录信息
        /// </summary>
        /// <param name="model"></param>
        /// <returns>匹配失败返回null,成功返回实体</returns>
        public ViewUserAsEmployee Login(UserLoginForm model)
        {
            var userLogin = userData.GetUserLogin(model.UserID);

            if (model.Password == userLogin.UserPassword)
            {
                return(userData.GetUserAsEmployee(model.UserID));
            }

            return(null);
        }
Beispiel #8
0
 public ActionResult Login(UserLoginForm form)
 {
     if (ModelState.IsValid)
     {
         if (form.LoginCheck())
         {
             return(RedirectToAction("Details", "User", new { username = form.Username }));
         }
     }
     return(View(form));
 }
Beispiel #9
0
        public async Task <IActionResult> LoginUser(UserLoginForm loginForm)
        {
            var user = await _userManager.FindByNameAsync(loginForm.UserName);

            var result = await _signInManager.CheckPasswordSignInAsync(user, loginForm.Password, false);

            if (result.Succeeded)
            {
                var appUser = await _userManager.Users.FirstOrDefaultAsync(
                    u => u.NormalizedUserName == loginForm.UserName.ToUpper());

                var roles = await _userManager.GetRolesAsync(appUser);

                var userProfile = _mapper.Map <UserProfileDto>(appUser);

                var tokenKey = _securityConfigurations.tokenKey;
                var issuer   = _securityConfigurations.Issuer;
                var appKey   = _securityConfigurations.appKey;

                var token        = TokensGenerator.GenerateJwtToken(appUser, roles, tokenKey, issuer);
                var refreshToken = TokensGenerator.GenerateRefreshToken();

                HttpContext.AddCookies(token, appKey);
                HttpContext.AddCookies(refreshToken, $"{appKey}Refresh");

                var existingToken = await _tokenRepository.FindItemAsync(
                    t => t.UserId == appUser.Id &&
                    t.DeviceName == Request.Headers["device-info"].ToString());

                if (existingToken != null)
                {
                    _logger.LogWarning($"User with Id {appUser.Id} has already logged in from this device, old refresh token will be removed.");

                    await _tokenRepository.RemoveItemAsync(existingToken);

                    _logger.LogInformation($"Old refresh token for user with Id {appUser.Id} removed from database.");
                }

                await _tokenRepository.AddItemAsync(
                    new RefreshToken
                {
                    Id         = GuidCreator.CreateGuid(),
                    TokenValue = refreshToken,
                    DeviceName = Request.Headers["device-info"],
                    UserId     = appUser.Id
                });

                _logger.LogInformation($"User with id {appUser.Id} successfully logged in.");

                return(Ok(new { user = userProfile, token, refreshToken }));
            }

            return(Unauthorized());
        }
Beispiel #10
0
        public async Task <IActionResult> Authorize(UserLoginForm userModel)
        {
            var viewModel = await _userService.LoginUser(userModel);

            if (viewModel.IsSuccess)
            {
                return(RedirectToAction("Index", "BankAccount", new { area = "BankAccount" }));
            }
            else
            {
                return(View("Login", viewModel));
            }
        }
Beispiel #11
0
        public void searchDataManageUserLogin()
        {
            MST007Controller mst007Ctrl = new MST007Controller();

            try
            {
                object[] result = mst007Ctrl.searchDataManageUserLogin();

                MsgForm           msgForm = (MsgForm)result[0];
                List <USER_LOGIN> lstdata = (List <USER_LOGIN>)result[1];

                if (msgForm.statusFlag.Equals(1))
                {
                    List <UserLoginForm> lstUserLogin = new List <UserLoginForm>();
                    foreach (USER_LOGIN data in lstdata)
                    {
                        UserLoginForm userLoginForm = new UserLoginForm();
                        userLoginForm.userId        = data.USER_ID;
                        userLoginForm.userPassword  = data.USER_PASSWORD;
                        userLoginForm.userFirstname = data.USER_FIRSTNAME;
                        userLoginForm.userLastname  = data.USER_LASTNAME;
                        userLoginForm.status        = data.STATUS_FLAG.Equals(0) ? "ไม่ใช้งาน" : data.STATUS_FLAG.Equals(1) ? "ใช้งาน" : "";
                        lstUserLogin.Add(userLoginForm);
                    }
                    dataGridView1.DataSource                = lstUserLogin;
                    dataGridView1.DefaultCellStyle.Font     = new Font("TH SarabunPSK", 16);
                    dataGridView1.AutoSizeColumnsMode       = DataGridViewAutoSizeColumnsMode.DisplayedCells;
                    dataGridView1.EnableHeadersVisualStyles = false;
                    dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.SkyBlue;
                    dataGridView1.ColumnHeadersHeight = 150;
                    dataGridView1.ColumnHeadersDefaultCellStyle.Font = new Font("TH SarabunPSK", 16, FontStyle.Bold);
                    dataGridView1.RowTemplate.Height          = 40;
                    dataGridView1.Columns[0].HeaderCell.Value = "ชื่อผู้ใช้งาน";
                    dataGridView1.Columns[1].HeaderCell.Value = "รหัสผ่าน";
                    dataGridView1.Columns[2].HeaderCell.Value = "ชื่อ";
                    dataGridView1.Columns[3].HeaderCell.Value = "นามสกุล";
                    dataGridView1.Columns[4].HeaderCell.Value = "สถานะ";
                    lblCountData.Text = "แสดงข้อมูลทั้งหมด " + lstUserLogin.Count() + " รายการ";
                }
                else
                {
                    MessageBox.Show("Error : " + msgForm.messageDescription);
                }
            }
            catch (Exception ex)
            {
                log.Error(ex.ToString(), ex);
                MessageBox.Show("Error : " + ex.ToString());
            }
        }
Beispiel #12
0
        public async Task <UserViewModel> LoginUser(UserLoginForm userLoginForm)
        {
            var viewModel = new UserViewModel()
            {
                UserloginForm = new UserLoginForm()
                {
                    Username = userLoginForm.Username
                }
            };

            try
            {
                var user = await _userManager.FindByNameAsync(userLoginForm.Username) ?? await _userManager.FindByEmailAsync(userLoginForm.Username);

                if (user == null)
                {
                    viewModel.Error = new GackoError("Could not find account with given username.");
                }

                var result = await _signInManager.PasswordSignInAsync(userLoginForm.Username,
                                                                      userLoginForm.Password, false, false);

                if (result.Succeeded)
                {
                    UserContext.UserId  = user.Id;
                    viewModel.IsSuccess = true;
                }
                else if (result.IsLockedOut)
                {
                    viewModel.Error = new GackoError("User account locked out.");
                }
                else if (result.IsNotAllowed)
                {
                    viewModel.Error = new GackoError("Insufficient permissions.");
                }
                else
                {
                    viewModel.Error = new GackoError("Wrong username or password.");
                }
            }
            catch (Exception e)
            {
                viewModel.Error = new Shared.Models.GackoError(e);
            }
            return(viewModel);
        }
Beispiel #13
0
        public async Task <IActionResult> Authorize(UserLoginForm userModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(View("Login", userModel));
                }

                await _employeeService.LoginUser(userModel);

                return(RedirectToAction("Index"));
            }
            catch (ServiceException ex)
            {
                ViewBag.ErrorMessage = ex.Message;
                return(View("Login", userModel));
            }
        }
Beispiel #14
0
        public ActionResult Login(UserLoginForm ul)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _encrypt = new RSAEncryption(ConsumeInstance.Get <byte[]>("Auth"));
                    LoginUser lu = new LoginUser();
                    lu.Login = ul.Login;
                    byte[] pwEncrypt = _encrypt.Encrypt(ul.Password);
                    lu.Password = Convert.ToBase64String(pwEncrypt);

                    User u = ConsumeInstance.PostWithReturn <LoginUser, User>("User/Login", lu);

                    if (u.Login != lu.Login)
                    {
                        FlashMessage.Warning("Those credentials didn't match an existing user account");
                        return(View(ul));
                    }
                    else if (u.IsActive == false)
                    {
                        FlashMessage.Warning("Your account has been deactivate, Please contact the admin");
                        return(RedirectToAction("Contact"));
                    }
                    else
                    {
                        SessionManager.Id    = u.UserID;
                        SessionManager.Login = u.Login;
                        FlashMessage.Confirmation("Welcome " + u.Login);
                        return(RedirectToAction("Index", "Home"));
                    }
                }
                else
                {
                    return(View(ul));
                }
            }
            catch
            {
                return(View());
            }
        }
Beispiel #15
0
        private void tsmiLogOutItem_Click(object sender, EventArgs e)
        {
            var result = MessageBox.Show("คุณต้องการออกจากระบบใช้หรือไม่", "ออกจากระบบ", MessageBoxButtons.YesNo, MessageBoxIcon.Information);

            if (result == System.Windows.Forms.DialogResult.Yes)
            {
                Hide();
                User = null;
                var login = new UserLoginForm();
                if (login.ShowDialog() == System.Windows.Forms.DialogResult.Yes)
                {
                    tsmiManage.Visible = User.SuperUser;
                    Show();
                }
                else
                {
                    Close();
                }
            }
        }
Beispiel #16
0
        static async Task <User> GetUserAsync(UserLoginForm userLoginForm)
        {
            //string path = "http://localhost:8080/api/user/GetUserLogin" + "?username="******"&password="******"application/json"));

            //HttpResponseMessage response = await client.PostAsJsonAsync("api/user/GetUserLogin", userLoginForm);

            //response.EnsureSuccessStatusCode();
            //User user= await response.Content.ReadAsAsync<User>();
            User user  = null;
            var  tuple = new { UserName = userLoginForm.UserName, Password = userLoginForm.Password };
            HttpResponseMessage response = await client.PostAsJsonAsync("api/user/GetUserLogin", tuple);

            if (response.IsSuccessStatusCode)
            {
                user = await response.Content.ReadAsAsync <User>();
            }
            return(user);
        }
        public IActionResult Login()
        {
            // 已登录时跳转到用户中心
            var sessionManager = Application.Ioc.Resolve <SessionManager>();
            var user           = sessionManager.GetSession().GetUser();

            if (user != null)
            {
                return(new RedirectResult(BaseFilters.Url("/home")));
            }
            // 否则显示登陆表单
            var form = new UserLoginForm();

            if (HttpManager.CurrentContext.Request.Method == HttpMethods.POST)
            {
                return(new JsonResult(form.Submit()));
            }
            else
            {
                form.Bind();
                return(new TemplateResult("common.admin/user_login.html", new { form }));
            }
        }
Beispiel #18
0
        public ActionResult Login()
        {
            UserLoginForm form = new UserLoginForm();

            return(View(form));
        }
Beispiel #19
0
        public async Task <KeyValuePair <string, string>?> RegisterUser(UserRegisterForm userRegisterForm)
        {
            Log.Information("Rejestracja!");
            var viewModel = new UserLoginForm()
            {
                UserName = userRegisterForm.UserName
            };

            try
            {
                var user = _userManager.FindByNameAsync(userRegisterForm.UserName).Result;
                if (user != null)
                {
                    Log.Error("Username taken");
                    return(new KeyValuePair <string, string>("UserRegisterForm.Username", "Username taken"));
                }

                user = _userManager.FindByEmailAsync(userRegisterForm.Email).Result;
                if (user != null)
                {
                    Log.Error("Email taken");
                    return(new KeyValuePair <string, string>("UserRegisterForm.Email", "Email taken"));
                }

                var registerUser = new DaoUser()
                {
                    FirstName      = userRegisterForm.FirstName,
                    LastName       = userRegisterForm.LastName,
                    Email          = userRegisterForm.Email,
                    UserName       = userRegisterForm.UserName,
                    EmailConfirmed = false
                };

                var result = await _userManager.CreateAsync(registerUser, userRegisterForm.Password);

                if (result.Succeeded)
                {
                    var companyId = 0;
                    try
                    {
                        user = await _userManager.FindByNameAsync(userRegisterForm.UserName);

                        if (user != null)
                        {
                            await _userManager.AddToRoleAsync(registerUser, RoleNames.User);

                            viewModel = new UserLoginForm()
                            {
                                UserName = user.UserName
                            };

                            string confirmationToken   = _userManager.GenerateEmailConfirmationTokenAsync(user).Result;
                            byte[] tokenGeneratedBytes = Encoding.UTF8.GetBytes(confirmationToken);
                            var    tokenEncoded        = WebEncoders.Base64UrlEncode(tokenGeneratedBytes);
                            await _emailService.SendConfirmAccountEmail(new CancellationToken(), tokenEncoded,
                                                                        new BaseUserInfo()
                            {
                                UserName  = user.UserName,
                                FirstName = user.FirstName,
                                LastName  = user.LastName,
                                Email     = user.Email
                            });

                            Log.Information("Registration successfully completed.");
                            return(null);
                        }
                    }
                    catch (Exception e)
                    {
                        await _userManager.DeleteAsync(user);

                        Log.Error("Registration failed.", e.Message);
                        throw;
                    }
                }
            }
            catch (Exception e)
            {
                Log.Error("Registration failed.", e.Message);
                throw;
            }

            return(Error <KeyValuePair <string, string> >("Registration failed."));
        }
Beispiel #20
0
        private void MainForm_Load(object sender, EventArgs e)
        {
            var start = new StartForm();

            if (start.ShowDialog() == System.Windows.Forms.DialogResult.No)
            {
                this.Close();
            }


            // TODO: This line of code loads data into the 'farmManageDataSet.OrderInStatic' table. You can move, or remove it, as needed.
            this.orderInStaticTableAdapter.Fill(this.farmManageDataSet.OrderInStatic);
            // TODO: This line of code loads data into the 'farmManageDataSet.OrderOutStatic' table. You can move, or remove it, as needed.
            this.orderOutStaticTableAdapter.Fill(this.farmManageDataSet.OrderOutStatic);
            // TODO: This line of code loads data into the 'farmManageDataSet.CowStatic' table. You can move, or remove it, as needed.
            this.cowStaticTableAdapter.Fill(this.farmManageDataSet.CowStatic);



            colCowSex.ValueMember   = "Key";
            colCowSex.DisplayMember = "Value";
            colCowSex.DataSource    = TypeUtil.CowSex().ToList();


            var corralList = new SortedDictionary <Int32, String>();

            corralList.Add(-1, "ทั้งหมด");
            foreach (FarmManageDataSet.CorralRow row in corralTableAdapter.GetData())
            {
                corralList.Add(row.CorralID, row.Name);
            }
            cbxCorral.ValueMember   = "Key";
            cbxCorral.DisplayMember = "Value";
            cbxCorral.DataSource    = corralList.ToList();


            var geneList = new SortedDictionary <Int32, String>();

            geneList.Add(-1, "ทั้งหมด");
            foreach (FarmManageDataSet.GeneRow row in geneTableAdapter.GetData())
            {
                geneList.Add(row.GeneID, row.Name);
            }
            cbxGene.ValueMember   = "Key";
            cbxGene.DisplayMember = "Value";
            cbxGene.DataSource    = geneList.ToList();



            corralTableAdapter.Fill(farmManageDataSet.Corral);
            geneTableAdapter.Fill(farmManageDataSet.Gene);
            initSearch();

            var timer = new Timer();

            timer.Tick += new EventHandler(timer_Tick);
            timer.Start();



            var login = new UserLoginForm();

            if (login.ShowDialog() == System.Windows.Forms.DialogResult.Yes)
            {
                tsmiCurrentUser.Text   = String.Format("ลงชื่อเข้าใช้โดย {0} {1}", User.Firstname, User.Lastname);
                tsmiManage.Visible     = User.SuperUser;
                tsmiBackupItem.Visible = false;
                Show();
            }
            else
            {
                Close();
            }
        }