Пример #1
0
        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;
            }));
        }
Пример #2
0
        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();
 }