// public async Task<ActionResult> Edit(User user) public async Task <ActionResult> Edit(UserView userView) { if (ModelState.IsValid) { // CHEJ - Inicializa la variable de imagen MethodsHelper.Image = userView.ImagePath; // CHEJ - Valida si el usuario cambio de imagen if (userView.ImageFile != null) { // CHEJ - Sube la imagen al FTP MethodsHelper.Image = FilesHelper.UploadPhoto( userView.ImageFile, MethodsHelper.GetPathUserImages(), Convert.ToString(userView.UserId).Trim()); // CHEJ - Da formato a la imagen MethodsHelper.Image = string.Format( "{0}{1}", MethodsHelper.GetPathUserImages(), MethodsHelper.Image); } // CHEJ - Actualiza la ruta de la imagen userView.ImagePath = MethodsHelper.Image; // CHEJ - Transforma el objeto de UserView a User var user = UserViewToUser(userView); db.Entry(user).State = EntityState.Modified; response = await DbHelper.SaveChangeDB(db); if (response.IsSuccess) { return(RedirectToAction("Index")); } ModelState.AddModelError(string.Empty, response.Message); } // CHEJ - Hace la carga de datos de los ViewBag LoadViewBagUserType(null, userView.UserTypeId); return(View(userView)); }
public async Task <IHttpActionResult> PostUser(User user) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } else { try { // CHEJ - Crea el usuario en la App db.Users.Add(user); response = await DbHelper.SaveChangeDB(db); if (!response.IsSuccess) { ModelState.AddModelError(string.Empty, response.Message); return(BadRequest(ModelState)); } // CHEJ - Sube las imagenes if (user.ImageArray != null && user.ImageArray.Length > 0) { var stream = new MemoryStream(user.ImageArray); MethodsHelper.Image = user.ImagePath; // CHEJ - Guarda la imagen en el FTP MethodsHelper.Image = FilesHelper.UploadPhoto( stream, MethodsHelper.GetPathUserImages(), Convert.ToString(user.UserId).Trim()); // CHEJ - Da formato a la imagen MethodsHelper.Image = string.Format( "{0}{1}", MethodsHelper.GetPathUserImages(), MethodsHelper.Image); // Actualiza la informacion del usuario user.ImagePath = MethodsHelper.Image; db.Entry(user).State = EntityState.Modified; response = await DbHelper.SaveChangeDB(db); if (response.IsSuccess) { return(Ok()); } else { ModelState.AddModelError(string.Empty, response.Message); return(BadRequest(ModelState)); } } // CHEJ - Crea el usuario ASP UsersHelper.CreateUserASP( user.Email, WebConfigurationManager.AppSettings["RoleUser"].ToString().Trim(), user.Password); // return CreatedAtRoute("DefaultApi", new { id = user.UserId }, user); return(Ok()); } catch (Exception ex) { ModelState.AddModelError(string.Empty, ex.Message); return(BadRequest(ex.Message)); } } }
public async Task <IHttpActionResult> PutUser(int id, User _user) { try { if (!ModelState.IsValid) { // return BadRequest(ModelState); ModelState.AddModelError(string.Empty, "Error: User is not valid...!!!"); return(BadRequest("Error: User is not valid...!!!")); } if (id != _user.UserId) { // return BadRequest(); ModelState.AddModelError(string.Empty, "Error: Id is not equal to UserId...!!!"); return(BadRequest("Error: Id is not equal to UserId...!!!")); } db.Entry(_user).State = EntityState.Modified; response = await DbHelper.SaveChangeDB(db); if (!response.IsSuccess) { ModelState.AddModelError(string.Empty, response.Message); return(BadRequest(response.Message)); } // CHEJ - Sube las imagenes if (_user.ImageArray != null && _user.ImageArray.Length > 0) { var stream = new MemoryStream(_user.ImageArray); MethodsHelper.Image = _user.ImagePath; // CHEJ - Guarda la imagen en el FTP MethodsHelper.Image = FilesHelper.UploadPhoto( stream, MethodsHelper.GetPathUserImages(), Convert.ToString(_user.UserId).Trim()); // CHEJ - Da formato a la imagen MethodsHelper.Image = string.Format( "{0}{1}", MethodsHelper.GetPathUserImages(), MethodsHelper.Image); // Actualiza la informacion del usuario _user.ImagePath = MethodsHelper.Image; db.Entry(_user).State = EntityState.Modified; response = await DbHelper.SaveChangeDB(db); if (response.IsSuccess) { return(Ok(_user)); } else { ModelState.AddModelError(string.Empty, response.Message); return(BadRequest(response.Message)); } } // return StatusCode(HttpStatusCode.NoContent); return(Ok(_user)); } catch (Exception ex) { ModelState.AddModelError(string.Empty, ex.Message); return(BadRequest(ex.Message)); } }
// public async Task<ActionResult> Create(User user) public async Task <ActionResult> Create(UserView userView) { if (ModelState.IsValid) { // CHEJ - Transforma el objeto UserView a User var user = this.UserViewToUser(userView); db.Users.Add(user); response = await DbHelper.SaveChangeDB(db); if (response.IsSuccess) { // CHEJ - Crea el usuario en ASP.Net var roleUser = WebConfigurationManager.AppSettings["RoleUser"].ToString(); UsersHelper.CheckRole(roleUser); UsersHelper.CreateUserASP(user.Email, roleUser); // CHEJ - Guarda la imagen del usuario if (userView.ImageFile != null) { MethodsHelper.Image = user.ImagePath; // CHEJ - Guarda la imagen en el FTP MethodsHelper.Image = FilesHelper.UploadPhoto( userView.ImageFile, MethodsHelper.GetPathUserImages(), Convert.ToString(user.UserId).Trim()); // CHEJ - Da formato a la imagen MethodsHelper.Image = string.Format( "{0}{1}", MethodsHelper.GetPathUserImages(), MethodsHelper.Image); // Actualiza la informacion del usuario user.ImagePath = MethodsHelper.Image; db.Entry(user).State = EntityState.Modified; response = await DbHelper.SaveChangeDB(db); if (response.IsSuccess) { return(RedirectToAction("Index")); } else { ModelState.AddModelError(string.Empty, response.Message); return(View(userView)); } } return(RedirectToAction("Index")); } ModelState.AddModelError(string.Empty, response.Message); } // CHEJ - Carga el ViewBag tipo de usuario LoadViewBagUserType(null, userView.UserTypeId); return(View(userView)); }