public HttpResponseMessage EnviarEmail(HttpRequestMessage request, LoginViewModel usuario) { return(CreateHttpResponse(request, () => { HttpResponseMessage response = null; //remove a validacao da propriedade da senha, pois a propriedade esta sendo validada //lá no fluent validator e neste caso não prcisa validar ModelState.Remove("usuario.Senha"); if (ModelState.IsValid) { RecuperaSenha recuperaSenha = new RecuperaSenha(); recuperaSenha.Chave = Guid.NewGuid(); Usuario userRecupera = _membershipService.GetUserPorEmail(usuario.UsuarioEmail, usuario.perfilModulo); if (userRecupera != null) { recuperaSenha.UsuarioCriacao = userRecupera; recuperaSenha.UsuarioCriacaoId = userRecupera.Id; recuperaSenha.DtCriacao = DateTime.Now; recuperaSenha.UsuarioId = userRecupera.Id; recuperaSenha.DtExpira = DateTime.Now.AddDays(1); // tem um dia para trocar a senha recuperaSenha.Usuario = userRecupera; _membershipService.CreateRecuperaSenha(recuperaSenha); // Update view model string strAmbiente = Environment.GetEnvironmentVariable("Amb_EconomizaJa").ToUpper(); string localCodigo = $"URL_Mod{usuario.perfilModulo}_Amb{strAmbiente}".ToString(); string URL_Modulo_Ambiente = _parametroSistema.GetAll().FirstOrDefault(fd => fd.Codigo == localCodigo).Valor; RecuperaSenhaViewModel recuperaSenhaVM = AutoMapper.Mapper.Map <RecuperaSenha, RecuperaSenhaViewModel>(recuperaSenha); // recuperaSenhaVM.URL = "http://localhost:1312/#/recuperasenha?Q="; //ADM local recuperaSenhaVM.URL = $"{URL_Modulo_Ambiente}/#/recuperasenha?Q="; //Envia email de Recuperar Senha para o Usuário var template = _templateEmailRep.GetSingle(2).Template; _emailService.EnviarEmailViaRobo(userRecupera, "Recuperar Senha - Economiza Já", recuperaSenhaVM.Usuarioemail, _emailService.MontaEmail(recuperaSenhaVM, template), Origem.RecuperarSenha); response = request.CreateResponse(HttpStatusCode.OK, new { success = true, usuarioEmail = userRecupera.UsuarioEmail }); } else { response = request.CreateResponse(HttpStatusCode.OK, new { success = false }); } } else { response = request.CreateResponse(HttpStatusCode.OK, new { success = false }); } return response; })); }
public HttpResponseMessage loadRecuperarsenha(HttpRequestMessage request, RecuperaSenha recuperaSenha) { return(CreateHttpResponse(request, () => { HttpResponseMessage response = null; RecuperaSenha localRecuperaSenha = _membershipService.getRecuperaSenha(recuperaSenha); if (localRecuperaSenha != null) { //recuperaSenha.Usuario = locaRecuperaSenha.Usuario; response = request.CreateResponse(HttpStatusCode.OK, new { success = true, usuarioNome = localRecuperaSenha.Usuario.UsuarioNome, usuarioId = localRecuperaSenha.Usuario.Id, usuarioChave = localRecuperaSenha.Usuario.Chave }); } else { response = request.CreateResponse(HttpStatusCode.OK, new { success = false }); } return response; })); }
public RecuperaSenha getRecuperaSenha(RecuperaSenha objRecuperaSenha) { return(_recuperaSehnaRep.GetAll().Where(x => x.Chave == objRecuperaSenha.Chave && x.DtExpira > DateTime.Now).FirstOrDefault()); }
public void CreateRecuperaSenha(RecuperaSenha objRecuperaSenha) { _recuperaSehnaRep.Add(objRecuperaSenha); _unitOfWork.Commit(); }