public ActionResult Update(UsersModel users) { ResponseData responseData = new ResponseData(); WIS.Entities.Account usersModel = _accountBo.GetById(users.UserId); if (usersModel != null && usersModel.Id > 0) { bool isSendMail = !usersModel.Email.Equals(users.Email); usersModel.FullName = users.FullName; usersModel.Email = users.Email; usersModel.Birthday = users.Birthday; usersModel.Avatar = users.Avatar; usersModel.Address = users.Address; usersModel.Gender = users.Gender; usersModel.Phone = users.Mobile; usersModel.UserType = users.UserType.Value; ErrorCodes errorCode = _accountBo.Update(usersModel); Msg.Error = errorCode != ErrorCodes.Success; Msg.Title = StringUtils.GetEnumDescription(errorCode); return(AuthorizeJson(Msg)); } WIS.Entities.Account usersByName = _accountBo.GetByUserName(users.UserName); if (usersByName == null || usersByName.Id <= 0) { string strPass = Guid.NewGuid().ToString().Replace("-", "").Substring(0, 6); WIS.Entities.Account usersModelTemp = new Account(); usersModelTemp.UserName = users.UserName; usersModelTemp.Password = Crypton.Encrypt(strPass); usersModelTemp.FullName = users.FullName; usersModelTemp.Email = users.Email; usersModelTemp.Birthday = users.Birthday; usersModelTemp.Avatar = users.Avatar; usersModelTemp.Address = users.Address; usersModelTemp.PasswordQuestion = string.Empty; usersModelTemp.PasswordAnswer = string.Empty; usersModelTemp.CreatedDate = DateTime.Now; usersModelTemp.Status = (int)UserStatusAdmin.Actived; usersModelTemp.Gender = users.Gender; usersModelTemp.Phone = users.Mobile; usersModelTemp.UserType = users.UserType.Value; ErrorCodes errorCodes = _accountBo.Insert(usersModelTemp); Msg.Error = errorCodes != ErrorCodes.Success; Msg.Title = StringUtils.GetEnumDescription(errorCodes); return(AuthorizeJson(Msg)); } Msg.Error = true; Msg.Title = StringUtils.GetEnumDescription(ErrorCodes.UserNameExisted); return(AuthorizeJson(Msg)); }
public void DoLogin(string accountName, ref ResponseData loginResult, bool saveCookie) { if (!IsLogin()) { try { bool @bool = AppSettings.Instance.GetBool(Const.DebugMode); Entities.Account userInfo = _accountBo.GetByUserName(accountName); if ((userInfo != null) && (userInfo.Id > 0)) { UserLogin login = new UserLogin(userInfo); //var claims = new List<Claim> //{ // new Claim(ClaimTypes.Name, login.UserName), // new Claim(ClaimTypes.Role, login.UserType.ToString()) //}; //var userIdentity = new ClaimsIdentity(claims, "login"); //ClaimsPrincipal principal = new ClaimsPrincipal(userIdentity); //AuthenticationHttpContextExtensions.SignInAsync(_httpContextAccessor.HttpContext, CookieAuthenticationDefaults.AuthenticationScheme, principal); string token = string.Empty; // lưu checksumKey và token vào cache loginResult.Success = this.JwtLogin(login, out token); //return the token loginResult.Token = token; loginResult.Success = true; loginResult.Message = StringUtils.GetEnumDescription(ErrorCodes.Success); loginResult.ErrorCode = (int)ErrorCodes.Success; // Lưu cache nếu user là Cashier if (login.UserType == UserTypeEnum.Cashier.GetHashCode()) { SetOnlyCashier(login.UserName); } } } catch (Exception ex) { Logger.WriteLog(Logger.LogType.Error, ex.ToString()); } } }