public CambiarClaveUsuarioResponse CambiarClave(CambiarClaveUsuarioRequest request) { CambiarClaveUsuarioResponse response = new CambiarClaveUsuarioResponse(); using (var client = new HttpClient()) { client.BaseAddress = new Uri(ServicioCommon.Parametros.URLServicio); HttpContent httpContent = new StringContent(JsonConvert.SerializeObject(request), Encoding.UTF8); httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json"); var responseTask = client.PostAsync("api/usuario/cambiar_clave/", httpContent); responseTask.Wait(); var result = responseTask.Result; if (result.IsSuccessStatusCode) { var usuarioResponse = result.Content.ReadAsStringAsync().Result; response = JsonConvert.DeserializeObject <CambiarClaveUsuarioResponse>(usuarioResponse); } } return(response); }
public IHttpActionResult CambiarClave(CambiarClaveUsuarioRequest request) { CambiarClaveUsuarioResponse objresponse = new CambiarClaveUsuarioResponse(); objresponse.status = new ProcesoResponse(); try { var usuario = BD.t_usuario.FirstOrDefault(x => x.usua_id == request.CodigoUsuario); if (usuario != null) { usuario.usua_pass = request.Clave; BD.SaveChanges(); objresponse.status.estado = 0; objresponse.Usuario = new Dominio.Usuario(); objresponse.Usuario.usua_nomb = usuario.usua_nomb; objresponse.Usuario.usua_id = usuario.usua_id; objresponse.Usuario.usua_email = usuario.usua_email; objresponse.Usuario.usua_dni = usuario.usua_dni; objresponse.status.mensaje = "Clave actualizado"; } else { objresponse.status.estado = 1; objresponse.status.mensaje = "No se econtro el usuario"; } } catch (Exception err) { objresponse.status.estado = -1; objresponse.status.mensaje = err.Message; throw err; } return(Ok(objresponse)); }
public ActionResult CambiarContrasena(CambiarContrasenModel model) { if (!ModelState.IsValid) { return(View(model)); } else { if (model.ContrasenaNueva != model.ContrasenaRepetir) { ModelState.AddModelError("MensajeGeneral", "La contraseña no coencide"); return(View(model)); } // Verificar clave anterior SeguridadMVC.Seguridad.SessionWrapper objSesion = new SeguridadMVC.Seguridad.SessionWrapper(); ProxyApiUsuario proxyUsuario = new ProxyApiUsuario(); var responseValidarClave = proxyUsuario.ValidarClave(objSesion.Usuario.Idusuario, model.ContrasenaActual); if (responseValidarClave.status.estado != 0) { ModelState.AddModelError("MensajeGeneral", responseValidarClave.status.mensaje); return(View(model)); } // Cambiar Clave var objUsuarioResponse = proxyUsuario.ObtenerUsuario(objSesion.Usuario.Idusuario); CambiarClaveUsuarioRequest request = new CambiarClaveUsuarioRequest(); request.CodigoUsuario = objSesion.Usuario.Idusuario; request.Clave = model.ContrasenaNueva; var responseCambiarClave = proxyUsuario.CambiarClave(request); if (responseCambiarClave.status.estado != 0) { ModelState.AddModelError("MensajeGeneral", responseValidarClave.status.mensaje); return(View(model)); } string DetalleMensaje = " Se cambio su contranseña con exito "; Mailer CorreoSolicitud = new Mailer(); List <String> listCorreso = new List <string>(); listCorreso.Add(objUsuarioResponse.Usuario.usua_email); CorreoSolicitud.Notificacion.CorreosPara = listCorreso; CorreoSolicitud.Notificacion.ConCopia = ""; CorreoSolicitud.Notificacion.Asunto = " Activar cuenta"; CorreoSolicitud.Notificacion.Cuerpo = new FormatoCorreo().BodyMensajeCambioClave(objUsuarioResponse.Usuario.dist_nombre, DetalleMensaje); CorreoSolicitud.Enviar(); return(View("Correcto", model)); } }