public ActionResult SalvarUsuario(string nome, string sobrenome, string email, UsuarioDetalhe[] detalhes)
        {
            string resultado = "Erro, os dados do usuario estão incompletos";

            if (nome != null || sobrenome != null || detalhes != null)
            {
                Usuario usu = new Usuario();
                usu.Nome      = nome;
                usu.SobreNome = sobrenome;
                usu.Email     = email;

                foreach (var item in detalhes)
                {
                    UsuarioDetalhe dta = new UsuarioDetalhe();
                    dta.IdUsuario = usu.IdUsuario;
                    dta.Telefone  = item.Telefone;
                    dta.Endereco  = item.Endereco;

                    usu.UsuarioDetalhes.Add(dta);
                }

                db.Usuarios.Add(usu);
                db.SaveChanges();
                resultado = "Usuário cadastrado com sucesso!";
            }

            return(Json(resultado, JsonRequestBehavior.AllowGet));
        }
Beispiel #2
0
        public UsuarioDetalhe AutenticarUsuario(UsuarioDetalhe usuario)
        {
            SqlConnection con     = new SqlConnection(AcessoDB.ConnectionString);
            var           retorno = new UsuarioDetalhe();

            retorno.Errors = new List <Error>();

            try
            {
                if (!HelperValidacoes.ValidaEnderecoEmail(usuario.Email))
                {
                    retorno.Result = EnumCommon.ResultType.Failure;
                    retorno.Errors.Add(new Error()
                    {
                        Message = "E-mail inválido.", ErrorType = EnumCommon.ErrorType.Validator
                    });
                    return(retorno);
                }

                con.Open();

                SqlCommand cmd = new SqlCommand("USP_OBTEM_USUARIO_SEL", con);
                cmd.CommandType = CommandType.StoredProcedure;

                cmd.Parameters.AddWithValue("@Email", usuario.Email);
                cmd.Parameters.AddWithValue("@Senha", HelperEncryptDecrypt.EncryptPassword(usuario.Senha));

                SqlDataReader reader = cmd.ExecuteReader();

                if (reader.Read())
                {
                    retorno.IdUsuario = Convert.ToInt32(reader["IdUsuario"]);
                    retorno.Nome      = reader["Nome"].ToString();
                    retorno.Email     = reader["Email"].ToString();
                    retorno.Ativo     = Convert.ToBoolean(reader["Ativo"]);
                }
                else
                {
                    retorno.Result = EnumCommon.ResultType.Failure;
                    retorno.Errors.Add(new Error()
                    {
                        Message = "Usuário não cadastrado.", ErrorType = EnumCommon.ErrorType.Validator
                    });
                }

                return(retorno);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                con.Close();
                con.Dispose();
            }
        }
        public ActionResult AlterarUsuario(int idusuario, string nome, string sobrenome, string email, UsuarioDetalhe[] detalhes)
        {
            //string resultado = "Erro, os dados do usuario estão incompletos";

            if (nome != null || sobrenome != null || detalhes != null)
            {
                db.UsuarioDetalhes.RemoveRange(db.UsuarioDetalhes.Where(x => x.IdUsuario == idusuario));
                db.SaveChanges();


                Usuario usu     = db.Usuarios.Find(idusuario);
                bool    novoUsu = false;
                if (usu == null)
                {
                    usu     = new Usuario();
                    novoUsu = true;
                }

                usu.Nome      = nome;
                usu.SobreNome = sobrenome;
                usu.Email     = email;



                foreach (var item in detalhes)
                {
                    UsuarioDetalhe dta = new UsuarioDetalhe();
                    dta.IdUsuario = usu.IdUsuario;
                    dta.Telefone  = item.Telefone;
                    dta.Endereco  = item.Endereco;

                    usu.UsuarioDetalhes.Add(dta);
                }
                if (novoUsu)
                {
                    db.Usuarios.Add(usu);
                }
                else
                {
                    db.Entry(usu).State = EntityState.Modified;
                }

                db.SaveChanges();
            }

            return(RedirectToAction("Index"));
        }
Beispiel #4
0
        public UsuarioDetalhe AutenticarUsuario(UsuarioDetalhe usuarioDetalhe)
        {
            var retorno = new UsuarioDetalhe();

            try
            {
                using (var proxy = new WCFUsuario.Service1Client())
                {
                    retorno = proxy.AutenticarUsuario(usuarioDetalhe);
                }
            }
            catch (FaultException <Error> ex)
            {
                throw new FaultException <Error>(ex.Detail);
            }

            return(retorno);
        }
Beispiel #5
0
        public UsuarioDetalhe InserirUsuario(UsuarioDetalhe usuarioDetalhe)
        {
            var retorno = new UsuarioDetalhe();

            try
            {
                using (var proxy = new WCFUsuario.Service1Client())
                {
                    retorno = proxy.InserirUsuario(usuarioDetalhe);
                    HelperEnviarEmail.EnviaMensagemEmail(HelperFormataEmail.LinkAtivacao(retorno.IdUsuario), retorno.Nome, HelperFormataEmail.Remetente(), retorno.Email, HelperFormataEmail.Senha(), HelperFormataEmail.CorpoEmail());
                }
            }
            catch (FaultException <Error> ex)
            {
                throw new FaultException <Error>(ex.Detail);
            }

            return(retorno);
        }
        public static UsuarioDetalhe InserirUsuario(UsuarioDetalhe usuarioDetalhe)
        {
            var proxy = new UsuarioProxy();

            return(proxy.InserirUsuario(usuarioDetalhe));
        }
        public static UsuarioDetalhe AutenticarUsuario(UsuarioDetalhe usuarioDetalhe)
        {
            var proxy = new UsuarioProxy();

            return(proxy.AutenticarUsuario(usuarioDetalhe));
        }
Beispiel #8
0
        public UsuarioDetalhe InserirUsuario(UsuarioDetalhe usuario)
        {
            SqlConnection con = new SqlConnection(AcessoDB.ConnectionString);

            var retorno = new UsuarioDetalhe();

            retorno.Errors = new List <Error>();

            try
            {
                if (!HelperValidacoes.ValidaEnderecoEmail(usuario.Email))
                {
                    retorno.Result = EnumCommon.ResultType.Failure;
                    retorno.Errors.Add(new Error()
                    {
                        Message = "E-mail inválido.", ErrorType = EnumCommon.ErrorType.Validator
                    });
                    return(retorno);
                }

                con.Open();

                SqlCommand cmd = new SqlCommand("USP_USUARIO_INSERIR_I", con);

                cmd.CommandType = CommandType.StoredProcedure;

                cmd.Parameters.AddWithValue("@Nome", usuario.Nome);
                cmd.Parameters.AddWithValue("@Email", usuario.Email);
                cmd.Parameters.AddWithValue("@Senha", HelperEncryptDecrypt.EncryptPassword(usuario.Senha));

                retorno.IdUsuario = Convert.ToInt32(cmd.ExecuteScalar());

                if (retorno.IdUsuario > 0)
                {
                    retorno.Nome   = usuario.Nome;
                    retorno.Email  = usuario.Email;
                    retorno.Result = EnumCommon.ResultType.Success;
                    retorno.Errors.Add(new Error()
                    {
                        Message = "Usuário cadastrado com sucesso. Verifique seu e-mail para ativar sua conta.", ErrorType = EnumCommon.ErrorType.Information
                    });
                }
            }
            catch (SqlException)
            {
                retorno.Result = EnumCommon.ResultType.Failure;
                retorno.Errors.Add(new Error()
                {
                    Message = "Este e-mail já está vinculado a uma conta.", ErrorType = EnumCommon.ErrorType.Validator
                });
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                con.Close();
                con.Dispose();
            }

            return(retorno);
        }