// GET: Users/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ViewModelUser modelUser = new ViewModelUser(); User user = db.Users.Find(id); modelUser.UserID = user.UserID; modelUser.SocialID = user.SocialID; modelUser.SocialType = user.SocialType; modelUser.DeviceToken = user.DeviceToken; modelUser.DeviceType = user.DeviceType; modelUser.RecordStatus = user.RecordStatus; modelUser.CreatedDate = user.CreatedDate; modelUser.FirstName = user.FirstName; modelUser.LastName = user.LastName; modelUser.UserName = user.UserName; modelUser.CreatedDate = user.CreatedDate; if (!string.IsNullOrEmpty(user.Password)) { modelUser.Password = AesCryptography.Decrypt(user.Password); } modelUser.Email = user.Email; string _SiteURL = WebConfigurationManager.AppSettings["SiteImgURL"]; modelUser.ImageURL = user.ImageURL; if (user == null) { return(HttpNotFound()); } return(View(modelUser)); }
public ActionResult Create(ViewModelUser ViewUser) { User user = new User(); if (ModelState.IsValid) { user.FirstName = ViewUser.FirstName; user.LastName = ViewUser.LastName; user.UserName = ViewUser.UserName; if (!string.IsNullOrEmpty(ViewUser.Password)) { user.Password = AesCryptography.Encrypt(ViewUser.Password); } user.Email = ViewUser.Email; string _SiteURL = WebConfigurationManager.AppSettings["SiteImgURL"]; user.ImageURL = _SiteURL + "/ProfileImage/" + ViewUser.ImageURL_data.FileName; var path = Path.Combine(Server.MapPath("~/Content/Upload/ProfileImage"), ViewUser.ImageURL_data.FileName); ViewUser.ImageURL_data.SaveAs(path); user.RecordStatus = "Active"; user.CreatedDate = DateTime.Now; db.Users.Add(user); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(user)); }
public static void Display(ViewModelUser user) { var config = new MapperConfiguration(cfg => cfg.CreateMap <ViewModelUser, User>()); var mapper = new Mapper(config); UserRepo.AddUser(mapper.Map <User>(user)); }
public ActionResult Index(string id) { ViewData["Role"] = id; List <ViewModelUser> results = new List <ViewModelUser>(); using (IcasieEntities entity = new IcasieEntities()) { var users = entity.Users.Where(c => c.Role == id).ToList(); foreach (var item in users) { ViewModelUser result = new ViewModelUser(); result.UserId = item.UserId; result.Email = item.Email; result.Password = item.Password; result.Salt = item.Salt; result.Role = item.Role; result.FirstName = item.FirstName; result.LastName = item.LastName; result.Gender = item.Gender; result.StreetAddress = item.StreetAddress; result.City = item.City; result.State = item.State; result.Country = item.Country; result.Institution = item.Institution; result.PhoneNumber = item.PhoneNumber; results.Add(result); } } return(View(results)); }
// GET: Users/Details/5 public ViewResult Details(int id) { var user = _unitOfWork.UserRepository.GetUserById(id); ViewModelUser viewModelUser = new ViewModelUser { Id = user.Id, FirstName = user.FirstName, LastName = user.LastName, UserName = user.UserName, RoleId = user.RoleId, Role = new ViewModelRole { Name = user.Role.Name }, UserAddresses = user.UserAddresses.Select(ua => new ViewModelUserAddresses { UserId = ua.UserId, AddressId = ua.AddressId, Address = new ViewModelAddress { AddressStreetAndNumber = ua.Address.AddressStreetAndNumber } }).ToList() }; return(View(viewModelUser)); }
/// <summary> /// 根据条件获取所有菜单 /// </summary> /// <param name="request">请求条件</param> /// <returns></returns> public EasyUIGrid GetAllUsers(EasyUIGridRequest request) { int total = 0; return(new EasyUIGrid() { rows = ViewModelUser.ToListViewModel(GetAllUsers(request, ref total)), total = total }); }
public async Task <IActionResult> Authenticate(ViewModelUser userModel) { var user = await _user.Authenticate(userModel.username, userModel.pw); if (user == null) { return(BadRequest(new { message = "Username or password is incorrect" })); } return(Ok()); }
public async Task <ActionResult <ViewModelResponse> > UserInfo(string id) { try { var user = await _userManager.FindByIdAsync(id); if (user != null) { var httpClient = new WebClient(); byte[] bytes; try { bytes = await httpClient.DownloadDataTaskAsync(user.Picture); } catch (TaskCanceledException) { System.Console.WriteLine("Task Canceled!"); bytes = null; } catch (Exception e) { bytes = null; } ViewModelUser model = new ViewModelUser() { Id = new Guid(user.Id), Name = user.Name, LastName = user.LastName, UserName = user.UserName, Email = user.Email, Country = user.Country, ImageBytes = bytes, Picture = user.Picture }; return(Json(new ViewModelResponse() { Error = false, Response = "Datos obtenidos satisfactoriamente.", User = model })); } return(Json(new ViewModelResponse() { Error = true, Response = "Usuario no encontrado." })); } catch (Exception e) { return(StatusCode(StatusCodes.Status500InternalServerError, new ViewModelResponse() { Error = true, Response = String.Format("Ocurrio un error al obtener la informacion del usuario, intenta nueva mente.{0}", e.Message) })); } }
public ActionResult Login(ViewModelUser user) { if (_IUserService.CheckLogin(user.Email, user.Pass)) { return(RedirectToAction("Dashboard")); } else { return(View("Index")); } }
public ActionResult Login(ViewModelUser user) { if (_IUserService.CheckLogin(user.Email, user.Pass)) { FormsAuthentication.SetAuthCookie(user.Email, false); return(RedirectToAction("Dashboard")); } else { return(View("Index")); } }
/// <summary> Конструктор </summary> public ViewUser() { InitializeComponent(); _viewModelUser = new ViewModelUser(); _modelUser = _viewModelUser.CurrentModelUser; DataContext = _viewModelUser; // не перересовывается панель с статусом пользователя по этоум приходится руками сворачивать панель баланса StackPanelBalance.Visibility = _modelUser.HasBalance ? Visibility.Visible : Visibility.Collapsed; }
public async Task <IActionResult> Get(string userName) { var entiy = await UserBLL.GetEntiyAsync <User>(u => u.UserName.Equals(userName)); var user = new ViewModelUser { Phone = entiy.Phone, UserName = entiy.UserName, FullName = entiy.FullName, SchoolNumber = entiy.SchoolNumber, UserPwd = entiy.UserPwd, }; //用户名 / 姓名 / 学号 / 手机号 return(new JsonResult(user)); }
public ActionResult Register(ViewModelUser model, bool captchaValid) { if (!ModelState.IsValid) { return(View(model)); } string randomPassword = Icasie.Helper.Helper.GenerateRandomGuidPassword().Substring(0, 10); var random = new Random(); string salt = Icasie.Helper.Helper.CreateSalt(random.Next(10, 100)); string password = Icasie.Helper.Helper.CreatePasswordHash(randomPassword, salt); using (IcasieEntities entity = new IcasieEntities()) { if (entity.Users.Any(c => c.Email == model.Email)) { ViewData["message"] = "User already exist"; return(View(model)); } Icasie.Repositories.User user = new Icasie.Repositories.User(); user.Email = model.Email; user.City = model.City; user.Country = model.Country; user.FirstName = model.FirstName; user.LastName = model.LastName; user.Password = password; user.PhoneNumber = model.PhoneNumber; user.Role = model.Role; user.Salt = salt; user.State = model.State; user.StreetAddress = model.StreetAddress; user.Gender = model.Gender; user.Institution = model.Institution; entity.Users.Add(user); entity.SaveChanges(); System.Threading.Tasks.Task.Run(() => EmailHelper.SendEmailNewUser(model.Email, model.FirstName + " " + model.LastName, randomPassword, ConfigurationManager.AppSettings["SiteName"])); } return(View("RegisterSuccess")); }
public async Task <string> Login([FromBody] ViewModelUser user) { //验证用户名和密码 var entiy = await AccountBLL.GetEntiyAsync <User>(u => u.UserName.Equals(user.UserName) && u.UserPwd.Equals(user.UserPwd)); if (entiy == null) { //return new JsonResult(new ResultModel<string> { }) return("error"); } // push the user’s name into a claim, so we can identify the user later on. var claims = new[] { new Claim(ClaimTypes.Name, user.UserName) }; //sign the token using a secret key.This secret will be shared between your API and anything that needs to check that the token is legit. var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["SecurityKey"])); var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256); //.NET Core’s JwtSecurityToken class takes on the heavy lifting and actually creates the token. /** * Claims (Payload) * Claims 部分包含了一些跟这个 token 有关的重要信息。 JWT 标准规定了一些字段,下面节选一些字段: * * iss: The issuer of the token,token 是给谁的 发送者 * audience: 接收的 * sub: The subject of the token,token 主题 * exp: Expiration Time。 token 过期时间,Unix 时间戳格式 * iat: Issued At。 token 创建时间, Unix 时间戳格式 * jti: JWT ID。针对当前 token 的唯一标识 * 除了规定的字段外,可以包含其他任何 JSON 兼容的字段。 * */ var token = new JwtSecurityToken( issuer: "jwttest", audience: "jwttest", claims: claims, expires: DateTime.Now.AddDays(10), signingCredentials: creds); var result = new JwtSecurityTokenHandler().WriteToken(token); return(result); }
/// <summary> /// 注册的action /// </summary> /// <param name="user"></param> /// <returns></returns> public async Task <IActionResult> Post([FromBody] ViewModelUser user) { var result = false; var entiy = await AccountBLL.GetEntiyAsync <User>(u => u.UserName.Equals(user.UserName)); if (entiy == null) { User userEntiy = new User { LastEitDateTime = DateTime.Now, FullName = user.FullName, Phone = user.Phone, SchoolNumber = user.SchoolNumber, UserName = user.UserName, UserPwd = user.UserPwd, }; result = await AccountBLL.AddAsync(userEntiy); } return(result ? Content("ok") : Content("error")); }
public async Task <IActionResult> Edit(long id, [Bind("IdUsuario,Nombre,UserName,IdRuta,Activo")] ViewModelUser usuario) { if (id != usuario.IdUsuario) { return(NotFound()); } var verifyUser = _userHelper.FindByUserName(usuario.UserName); if (verifyUser != null) { if (verifyUser.UserNameLowered != usuario.UserName.ToLower()) { //si el usuario existe, añande un error al e9stado del modelo ModelState.AddModelError("UserName", "El Usuario ya existe"); } } if (ModelState.IsValid) { try { await _userHelper.Update(usuario); } catch (DbUpdateConcurrencyException) { if (!UsuarioExists(usuario.IdUsuario)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["IdRuta"] = new SelectList(_context.Rutas, "IdRuta", "IdRuta", usuario.IdRuta); return(View(usuario)); }
public ActionResult Edit(ViewModelUser ViewUser) { if (ModelState.IsValid) { User user = new User(); user.FirstName = ViewUser.FirstName; user.LastName = ViewUser.LastName; user.UserName = ViewUser.UserName; if (!string.IsNullOrEmpty(ViewUser.Password)) { user.Password = AesCryptography.Encrypt(ViewUser.Password); } user.Email = ViewUser.Email; string _SiteURL = WebConfigurationManager.AppSettings["SiteImgURL"]; if (ViewUser.ImageURL_data != null) { user.ImageURL = _SiteURL + "/ProfileImage/" + ViewUser.ImageURL_data.FileName; var path = Path.Combine(Server.MapPath("~/Content/Upload/ProfileImage"), ViewUser.ImageURL_data.FileName); ViewUser.ImageURL_data.SaveAs(path); } else { user.ImageURL = _SiteURL + "/ProfileImage/oposee-profile.png"; } user.CreatedDate = ViewUser.CreatedDate; //user.ImageURL = ViewUser.ImageURL; user.UserID = ViewUser.UserID; user.DeviceType = ViewUser.DeviceType; user.DeviceToken = ViewUser.DeviceToken; user.SocialID = ViewUser.SocialID; user.SocialType = ViewUser.SocialType; user.RecordStatus = "Active"; user.ModifiedDate = DateTime.Now; db.Entry(user).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(ViewUser)); }
public async Task <IActionResult> ExistUser(string email) { try { var user = _dbContext.AspNetUsers.FirstOrDefault(x => x.Email.Equals(email)); // var user = await _userManager.FindByEmailAsync(email); if (user != null) { ViewModelUser model = new ViewModelUser() { Id = new Guid(user.Id), Name = user.Name, LastName = user.LastName, UserName = user.UserName, Email = user.Email, Country = user.Country, Picture = user.Picture }; return(Json(new ViewModelResponse() { Error = false, Response = "Datos obtenidos satisfactoriamente.", User = model })); } return(Json(new ViewModelResponse() { Error = true, Response = "Usuario no encontrado." })); } catch (Exception e) { return(StatusCode(StatusCodes.Status500InternalServerError, new ViewModelResponse() { Error = true, Response = String.Format("Ocurrio un error al obtener la informacion del usuario, intenta nueva mente.{0}", e.Message) })); } }
// GET: Users/Edit/5 public IActionResult Edit(int id) { var user = _unitOfWork.UserRepository.GetUserById(id); if (user == null) { return(NotFound()); } ViewModelUser viewModelUser = new ViewModelUser { FirstName = user.FirstName, LastName = user.LastName, UserName = user.UserName, //Role = user.Role(r => new ViewModelRole //{ // Id = r.Id, // Name = r.Name //}) }; //ViewData["RoleId"] = new SelectList(_unitOfWork.RoleRepository.Get(), "Id", "Name"); return(View(viewModelUser)); }
public ActionResult Profile(int id) { ViewModelUser result = new ViewModelUser(); using (IcasieEntities entity = new IcasieEntities()) { var user = entity.Users.SingleOrDefault(c => c.UserId == id); result.UserId = user.UserId; result.Email = user.Email; result.Password = user.Password; result.Salt = user.Salt; result.Role = user.Role; result.FirstName = user.FirstName; result.LastName = user.LastName; result.Gender = user.Gender; result.StreetAddress = user.StreetAddress; result.City = user.City; result.State = user.State; result.Country = user.Country; result.Institution = user.Institution; result.PhoneNumber = user.PhoneNumber; } return(View(result)); }
public async Task <ActionResult <ViewModelResponse> > Login([FromBody] ViewModelLogin model) { try { var ldap = await ServiceLDAP.LoginAsync(model.UserName, model.Password); if (ldap) { var us = await _userManager.FindByNameAsync(model.UserName); if (us != null) { if (us.Verified) { var result = await _signInManager.PasswordSignInAsync(model.UserName, model.Password, false, false); if (result.Succeeded) { var appUser = _userManager.Users.SingleOrDefault(u => u.UserName == model.UserName); var token = GenerateJwtToken(model.UserName, appUser); var httpClient = new WebClient(); byte[] bytes; try { bytes = await httpClient.DownloadDataTaskAsync(appUser.Picture); } catch (TaskCanceledException) { System.Console.WriteLine("Task Canceled!"); bytes = null; } catch (Exception e) { bytes = null; } ViewModelUser user = new ViewModelUser() { Id = new Guid(appUser.Id), Name = appUser.Name, LastName = appUser.LastName, UserName = appUser.UserName, Email = appUser.Email, Country = appUser.Country, ImageBytes = bytes, Picture = appUser.Picture }; return(Json(new ViewModelResponse() { Error = false, Response = "Ha iniciado sesión satisfactoriamente", User = user, Token = token })); } else { return(Json(new ViewModelResponse() { Error = true, Response = "Valide sus credenciales." })); } } return(Json(new ViewModelResponse() { Error = true, Response = "Debe verificar primero su cuenta, revise su correo." })); } return(Json(new ViewModelResponse() { Error = true, Response = "Valide sus credenciales. Usuario no encontrado" })); } else { return(Json(new ViewModelResponse() { Error = true, Response = "Valide sus credenciales. Usuario no encontrado" })); } } catch (Exception e) { string error = String.Format("Ocurrion un error. Intente nuevamente. {0}", e.Message); return(StatusCode(StatusCodes.Status500InternalServerError, new ViewModelResponse { Error = true, Response = error })); } }
public async Task <ActionResult <ViewModelResponse> > Register([FromBody] ViewModelUser model) { try { var user = new ApplicationUser { UserName = model.UserName, Name = model.Name, LastName = model.LastName, Email = model.Email, Country = model.Country, Picture = model.Picture, Verified = true, WonGames = 0, LostGames = 0, TotalGames = 0 }; if (!model.Password.Equals(model.ConfirmedPassword)) { return(Json(new ViewModelResponse() { Error = true, Response = "Las contraseñas no coinciden" })); } //crear entry en organizacion hangeddraw, gid number user var result = _userManager.CreateAsync(user, model.Password); if (result.Result.Succeeded) { var aLdap = await ServiceLDAP.RegisterAsync(user.UserName, model.Password, model.Name, model.LastName, model.Email); if (aLdap) { //// enviar correo para verificar usuario registrado //string email = model.Email; //string subject = "Confirmación de registro en Hanged Draw"; //string url = Request.Scheme + "://" + Request.Host.Value + "/api/User/Verify"; //string link = String.Format("<a target=\"_blank\" href=\"{1}/{0}\"> link </a>", user.Id, url); //string style = "style=\"color: red;\""; //string styleP = "style=\"color: black;\""; //string htmlString = // $@"<html> // <body> // <h2 {style}>Hanged Draw</h2> // <p {styleP} >por favor verifique su cuenta dando click en el siguiente {link} </p> // <br> // </body> //</html>"; //bool a = await SendEmailAsync(email, subject, htmlString); //if (a) // return Json(new ViewModelResponse() { Error = false, Response = "Usuario registrado satisfactoriamente." }); return(Json(new ViewModelResponse() { Error = false, Response = "Usuario registrado satisfactoriamente." })); } else { return(Json(new ViewModelResponse() { Error = true, Response = "Ocurrio un error en ldap" })); } } string error = string.Empty; foreach (var e in result.Result.Errors) { error += "{" + e.Code + "}-" + e.Description + Environment.NewLine; } return(Json(new ViewModelResponse() { Error = true, Response = error })); } catch (Exception e) { return(StatusCode(StatusCodes.Status500InternalServerError, new ViewModelResponse() { Error = true, Response = String.Format("Ocurrio un error al intentar verificar el correo electrónico, intenta nueva mente. {0}", e.Message) })); } }
public async Task <ActionResult <ViewModelResponse> > EditUser([FromBody] ViewModelUser model, string id) { try { var user = await _userManager.FindByIdAsync(id); if (user != null) { //var oldUN = user.UserName; if (!String.IsNullOrEmpty(model.UserName)) { user.UserName = model.UserName; } if (!String.IsNullOrEmpty(model.Name)) { user.Name = model.Name; } if (!String.IsNullOrEmpty(model.LastName)) { user.LastName = model.LastName; } if (!String.IsNullOrEmpty(model.Email)) { user.Email = model.Email; } if (!String.IsNullOrEmpty(model.Country)) { user.Country = model.Country; } if (!String.IsNullOrEmpty(model.Picture)) { user.Picture = model.Picture; } if (model.TotalGames != 0) { user.TotalGames = model.TotalGames; } if (model.WonGames != 0) { user.WonGames = model.WonGames; } if (model.LostGames != 0) { user.LostGames = model.LostGames; } //var ldapModify = ServiceLDAP.ModifyAsync(oldUN, user.UserName, model.Password) var result = await _userManager.UpdateAsync(user); if (result.Succeeded) { return(Json(new ViewModelResponse() { Error = false, Response = "Datos de usuario modificados exitosamente." })); } else { string error = string.Empty; foreach (var e in result.Errors) { error += "{" + e.Code + "}-" + e.Description + Environment.NewLine; } return(Json(new ViewModelResponse() { Error = true, Response = error })); } } return(Json(new ViewModelResponse() { Error = true, Response = "El usuario no existe" })); } catch (Exception e) { return(StatusCode(StatusCodes.Status500InternalServerError, new ViewModelResponse() { Error = true, Response = String.Format("Ocurrio un error al intentar verificar el correo electrónico, intenta nueva mente. {0}", e.Message) })); } }
public IActionResult Edit(/*[Bind("Id,UserName,FirstName,LastName,Password,RoleId")]*/ ViewModelUser viewModelUser) { var userToEdit = _unitOfWork.UserRepository.GetUserById(viewModelUser.Id); userToEdit.UserName = viewModelUser.UserName; userToEdit.FirstName = viewModelUser.FirstName; userToEdit.LastName = viewModelUser.LastName; userToEdit.Password = viewModelUser.Password; userToEdit.RoleId = viewModelUser.RoleId; //userToEdit.Role = viewModelUser.Role; userToEdit.UserAddresses = viewModelUser.UserAddresses.Select(ua => new UserAddress { UserId = ua.UserId, AddressId = ua.AddressId }).ToList(); if (ModelState.IsValid) { _unitOfWork.UserRepository.Update(userToEdit); _unitOfWork.Save(); return(RedirectToAction(nameof(Index))); } //ViewData["RoleId"] = new SelectList(_unitOfWork.RoleRepository.Get(), "Id", "Name"); return(View(userToEdit)); }
// GET: Users/Create public ActionResult Create() { ViewModelUser ViewUser = new ViewModelUser(); return(View(ViewUser)); }
public IActionResult Create(/*[Bind("Id,UserName,FirstName,LastName,Password,RoleId")]*/ ViewModelUser user) { var u = new User { FirstName = user.FirstName, LastName = user.LastName, Password = user.Password, RoleId = user.RoleId, UserName = user.UserName }; foreach (int addid in user.SelectedAddressesId) { var address = _unitOfWork.AddressRepository.GetById(addid); var adduser = new UserAddress { Address = address, User = u }; u.UserAddresses.Add(adduser); } if (ModelState.IsValid) { _unitOfWork.UserRepository.Insert(u); _unitOfWork.Save(); return(RedirectToAction(nameof(Index))); } return(View(u)); }