// private void CacheMenuFunctionByUser(SessionModel model) // { // AuthHelper.MenuFunctionByUserId(model); // } private void Session_Cookie(AuthModel model, SY_User user) { var host = Request.Host.Host; //Session var userSession = new SessionModel { UserId = user.Id, Name = user.Name, Username = user.Username, Avatar = user.Avatar, isAdmin = user.isAdmin }; //CacheMenuFunctionByUser(userSession); //Mã hóa var serializeModel = JsonConvert.SerializeObject(userSession); var encryptModel = CryptoHelper.EncryptSessionCookie_User(serializeModel); //Lưu lại trong session HttpContext.Session.SetString(SessionConfig.Kz_UserSession, encryptModel); //Kiểm tra có lưu cookie if (model.isRemember) { var option = new CookieOptions(); option.Expires = DateTime.Now.AddMonths(1); HttpContext.Response.Cookies.Append(CookieConfig.Kz_UserCookie, encryptModel); } }
public async Task <MessageReport> Update(SY_User model) { var query = new StringBuilder(); query.AppendLine("{"); query.AppendLine("'_id': { '$eq': '" + model.Id + "' }"); query.AppendLine("}"); return(await _SY_UserRepository.Update(MongoHelper.ConvertQueryStringToDocument(query.ToString()), model)); }
public IActionResult Register(RegisterModel model) { model.isAny = _SY_UserService.GetAll().Result.Any(); if (model.isAny) { return(RedirectToAction("Index", "Login")); } if (!ModelState.IsValid) { return(View(model)); } //Kiểm tra mật khẩu if (model.Password != model.RePassword) { ModelState.AddModelError("", "Mật khẩu không khớp"); return(View(model)); } var salat = Guid.NewGuid().ToString(); var obj = new SY_User() { Id = Guid.NewGuid().ToString(), Name = model.Name, Username = model.Username, Active = true, Avatar = "", Password = CryptoHelper.EncryptPass_User(model.Password, salat), PasswordSalat = salat, isAdmin = true }; var result = _SY_UserService.Create(obj).Result; if (result.isSuccess) { return(RedirectToAction("Index", "Login")); } else { ModelState.AddModelError("", result.Message); return(View(model)); } }
public Task <MessageReport> Login(AuthModel model, out SY_User user) { var result = new MessageReport(false, "Có lỗi xảy ra"); try { //Kiểm tra username var objUser = GetByUsername(model.Username).Result; if (objUser == null) { user = null; result = new MessageReport(false, "Tài khoản không tồn tại"); return(Task.FromResult(result)); } if (objUser.Active == false) { user = null; result = new MessageReport(false, "Tài khoản bị khóa"); return(Task.FromResult(result)); } //Giải mã var pass = CryptoHelper.DecryptPass_User(objUser.Password, objUser.PasswordSalat); //Check mật khẩu if (pass != model.Password) { user = null; result = new MessageReport(false, "Mật khẩu không khớp"); return(Task.FromResult(result)); } //Gán lại user user = objUser; result = new MessageReport(true, "Đăng nhập thành công"); } catch (System.Exception ex) { user = null; result = new MessageReport(false, ex.Message); } return(Task.FromResult(result)); }
public async Task <SY_User_Submit> GetCustomByModel(SY_User model) { var obj = new SY_User_Submit() { Id = model.Id, Active = model.Active, Name = model.Name, Roles = new List <string>(), Username = model.Username, isAdmin = model.isAdmin, Avatar = model.Avatar }; obj.Roles = (from n in _SY_Map_User_RoleRepository.Table where n.UserId == model.Id select n.RoleId).ToList(); return(await Task.FromResult(obj)); }
public async Task <MessageReport> Register(UserRegister model) { var result = new MessageReport(false, "Có lỗi xảy ra"); try { //Kiểm tra email có tồn tại var existed = await GetByUsername(model.Email); if (existed != null) { result = new MessageReport(false, "Email này đã tồn tại trong hệ thống"); return(await Task.FromResult(result)); } //Gắn lại giá trị var obj = new SY_User() { Active = true, Avatar = "", Id = ObjectId.GenerateNewId().ToString(), isAdmin = false, Name = model.Name, Password = model.Password, PasswordSalat = Guid.NewGuid().ToString(), Phone = "", Username = model.Email }; obj.Password = CryptoHelper.EncryptPass_User(obj.Password, obj.PasswordSalat); result = await _SY_UserRepository.Add(obj); } catch (Exception ex) { result = new MessageReport(false, ex.Message); } return(await Task.FromResult(result)); }
public IActionResult Index(AuthModel model) { model.isAny = _SY_UserService.GetAll().Result.Any(); if (!ModelState.IsValid) { return(View(model)); } var objUser = new SY_User(); var result = _SY_UserService.Login(model, out objUser).Result; if (result.isSuccess) { Session_Cookie(model, objUser); return(RedirectToAction("Index", "Home")); } else { ModelState.AddModelError("", result.Message); return(View(model)); } }
public async Task <MessageReport> Create(SY_User model) { return(await _SY_UserRepository.Add(model)); }
public async Task <IActionResult> Create(SY_User_Submit model, bool SaveAndCountinue = false) { model.Data_Role = await _SY_RoleService.GetAllActiveOrder(); if (!ModelState.IsValid) { return(View(model)); } // var existed = await _SY_UserService.GetByUsername(model.Username); if (existed != null) { ModelState.AddModelError("Username", "Tài khoản tồn tại"); return(View(model)); } if (string.IsNullOrWhiteSpace(model.Password)) { model.Password = "******"; } else { if (model.Password != model.RePassword) { ModelState.AddModelError("RePassword", "Mật khẩu không khớp"); return(View(model)); } } var obj = new SY_User() { Active = model.Active, Id = Guid.NewGuid().ToString(), Password = model.Password, PasswordSalat = Guid.NewGuid().ToString(), Name = model.Name, Username = model.Username, isAdmin = model.isAdmin, Phone = model.Phone }; if (!string.IsNullOrWhiteSpace(model.RoleIds)) { var ks = model.RoleIds.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); model.Roles = new List <string>(); foreach (var item in ks) { model.Roles.Add(item); } foreach (var item in model.Roles) { var t = new SY_Map_User_Role() { Id = Guid.NewGuid().ToString(), RoleId = item, UserId = obj.Id }; await _SY_RoleService.CreateMap(t); } } //Mã hóa pass obj.Password = CryptoHelper.EncryptPass_User(obj.Password, obj.PasswordSalat); //Thực hiện thêm mới var result = await _SY_UserService.Create(obj); if (result.isSuccess) { if (SaveAndCountinue) { TempData["Success"] = "Thêm mới thành công"; return(RedirectToAction("Create")); } return(RedirectToAction("Index")); } else { ModelState.AddModelError("", result.Message); return(View(obj)); } }