예제 #1
0
            internal int AtivarUsuario(Entity.Usuario aoUsuario)
            {
                int             liResult = -1;
                MySqlConnection conn     = new
                                           MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

                try
                {
                    conn.Open();

                    StringBuilder loStb = new StringBuilder();
                    loStb.Append("UPDATE usr_usuario SET ");
                    loStb.Append("USR_ativo = 1 ");
                    loStb.Append(" where USR_id = @id ");
                    MySqlCommand cmd = new MySqlCommand(loStb.ToString(), conn);
                    cmd.Parameters.AddWithValue("@id", aoUsuario.USR_id);

                    liResult = cmd.ExecuteNonQuery();

                    cmd.Dispose();
                    cmd.Parameters.Clear();
                }
                catch (MySqlException ex)
                {
                }
                finally
                {
                    conn.Close();
                }

                return(liResult);
            }
예제 #2
0
파일: Livro.cs 프로젝트: revwhyte/PersoLib
            /* Insere novo livro no banco.
             * Retorna 1 se a operção foi executada com sucesso.
             * Retorna -1 se ocorreu algum erro na operação, seja erro no banco ou alguma violação de integridade. */
            internal int InserirNovoLivro(Entity.Livro aoLivro, Entity.Usuario aoUsuario)
            {
                int             liResult = -1;
                MySqlConnection conn     = new
                                           MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

                try
                {
                    conn.Open();
                    string       lsSQLQuery = "insert into lvr_livro(lvr_id_usuario, lvr_nome, lvr_emprestado) values(@id_usuario, @nome, 0)";
                    MySqlCommand cmd        = new MySqlCommand(lsSQLQuery, conn);
                    cmd.Parameters.AddWithValue("@id_usuario", aoUsuario.USR_id);
                    cmd.Parameters.AddWithValue("@nome", aoLivro.LVR_nome);
                    liResult = cmd.ExecuteNonQuery();
                    cmd.Dispose();
                    cmd.Parameters.Clear();
                }
                catch (MySqlException ex)
                {
                }
                finally
                {
                    conn.Close();
                }
                return(liResult);
            }
예제 #3
0
            /* Retorna o id do usuário caso exista um usuário com aquele e-mail e senha.
             * Retorna -1 se não existe usuário com aquele e-mail e senha ou ocorreu um erro no banco. */
            internal int LoginUsuario(Entity.Usuario aoUsuario)
            {
                int             liResult = -1;
                MySqlConnection conn     = new
                                           MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

                try
                {
                    conn.Open();

                    string       lsSQLQuery = "select USR_id from usr_usuario where USR_email = @email and USR_senha = @senha";
                    MySqlCommand cmd        = new MySqlCommand(lsSQLQuery, conn);

                    cmd.Parameters.AddWithValue("@email", aoUsuario.USR_email);
                    cmd.Parameters.AddWithValue("@senha", aoUsuario.USR_senha);

                    MySqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        liResult = (int)reader.GetValue(0);
                    }

                    cmd.Dispose();
                    cmd.Parameters.Clear();
                }
                catch (MySqlException ex)
                {
                }
                finally
                {
                    conn.Close();
                }
                return(liResult);
            }
예제 #4
0
파일: Livro.cs 프로젝트: revwhyte/PersoLib
            public bool InserirNovoLivro(Entity.Livro aoLivro, Entity.Usuario aoUsuario, out string lsMensagemOperacao)
            {
                lsMensagemOperacao = string.Empty;
                bool lbValidado = true;

                // Confere se o nome do livro é muito curto
                if (!(Util.VerificarNome(aoLivro.LVR_nome)))
                {
                    lsMensagemOperacao = "Nome do livro de tamanho invalido!";
                    lbValidado         = false;
                }

                // Confere se o nome do livro já existe
                if (VerificarLivroExistente(aoLivro))
                {
                    lsMensagemOperacao = "Livro com este nome já existe!";
                    lbValidado         = false;
                }

                if (lbValidado)
                {
                    if (new DAL.Livro().InserirNovoLivro(aoLivro, aoUsuario) != 1)
                    {
                        lsMensagemOperacao = "Ocorreu um erro no servidor. Tente novamente mais tarde!";
                        lbValidado         = false;
                    }
                }

                return(lbValidado);
            }
예제 #5
0
            /* Se já existe um usuário no banco com o e-mail em questão, ele retorna 1.
             * Se não existe um usuário com esse e-mail, retorna 0.
             * Retorna -1 se ocorreu algum erro na operação. */
            internal int ExisteUsuarioEmail(Entity.Usuario aoUsuario)
            {
                int             liResult = -1;
                MySqlConnection conn     = new
                                           MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

                try
                {
                    conn.Open();

                    string lsSQLQuery = "select count(*) from usr_usuario where USR_email = @email and USR_id != @id";

                    MySqlCommand cmd = new MySqlCommand(lsSQLQuery, conn);

                    cmd.Parameters.AddWithValue("@email", aoUsuario.USR_email);
                    cmd.Parameters.AddWithValue("@id", aoUsuario.USR_id);
                    MySqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        liResult = Convert.ToInt32(reader.GetValue(0).ToString());
                    }

                    cmd.Dispose();
                    cmd.Parameters.Clear();
                }
                catch (MySqlException ex)
                {
                }
                finally
                {
                    conn.Close();
                }
                return(liResult);
            }
예제 #6
0
            /* Insere novo usuário no banco.
             * Retorna 1 se a operção foi executada com sucesso.
             * Retorna -1 se ocorreu algum erro na operação, seja erro no banco ou alguma violação de integridade. */
            internal int InserirNovoUsuario(Entity.Usuario aoUsuario)
            {
                int             liResult = -1;
                MySqlConnection conn     = new
                                           MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

                try
                {
                    conn.Open();
                    string       lsSQLQuery = "insert into usr_usuario(USR_email, USR_nome, USR_senha, USR_ativo) values(@email, @nome, @senha, 1)";
                    MySqlCommand cmd        = new MySqlCommand(lsSQLQuery, conn);
                    cmd.Parameters.AddWithValue("@email", aoUsuario.USR_email);
                    cmd.Parameters.AddWithValue("@nome", aoUsuario.USR_nome);
                    cmd.Parameters.AddWithValue("@senha", aoUsuario.USR_senha);
                    liResult = cmd.ExecuteNonQuery();
                    cmd.Dispose();
                    cmd.Parameters.Clear();
                }
                catch (MySqlException ex)
                {
                }
                finally
                {
                    conn.Close();
                }
                return(liResult);
            }
예제 #7
0
            /* Retorna 1 se a operção foi executada com sucesso.
             * Retorna -1 se ocorreu algum erro na operação. */
            internal int DesativarUsuario(Entity.Usuario aoUsuario)
            {
                int             liResult = -1;
                MySqlConnection conn     = new
                                           MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

                try
                {
                    conn.Open();
                    string       lsSQLQuery = "update usr_usuario set USR_ativo = 0 where USR_id = @id";
                    MySqlCommand cmd        = new MySqlCommand(lsSQLQuery, conn);
                    cmd.Parameters.AddWithValue("@id", aoUsuario.USR_id);
                    liResult = cmd.ExecuteNonQuery();
                    cmd.Dispose();
                    cmd.Parameters.Clear();
                }
                catch (MySqlException ex)
                {
                }
                finally
                {
                    conn.Close();
                }
                return(liResult);
            }
예제 #8
0
 public bool VerificaExistenciaEmail(Entity.Usuario aoUsuario)
 {
     if (new DAL.Usuario().ExisteUsuarioEmail(aoUsuario) == 1)
     {
         return(true);
     }
     return(false);
 }
예제 #9
0
            public bool AlterarUsuario(Entity.Usuario aoUsuario, out string lsMensagemOperacao)
            {
                lsMensagemOperacao = string.Empty;
                bool lbValidado = true;

                if (string.IsNullOrEmpty(aoUsuario.USR_nome) || string.IsNullOrEmpty(aoUsuario.USR_email))
                {
                    lsMensagemOperacao = "Os campos Nome e E-mail não podem ser vazios";
                    lbValidado         = false;
                }

                //Confere se o nome da pessoa é muito curto
                if (!(Util.VerificarNome(aoUsuario.USR_nome)))
                {
                    lsMensagemOperacao = "Nome de tamanho invalido!";
                    lbValidado         = false;
                }

                // Confere se email é valido
                if (!(Util.VerificaValidadeEmail(aoUsuario.USR_email)))
                {
                    lsMensagemOperacao = "Formato de email incorreto!";
                    lbValidado         = false;
                }
                //Confere se o email informa ja foi utilizado
                if (VerificaExistenciaEmail(aoUsuario))
                {
                    lsMensagemOperacao = "Ja existe um usuario com este e-mail!";
                    lbValidado         = false;
                }

                //Confere se tamanho da senha é valido
                if (!string.IsNullOrWhiteSpace(aoUsuario.USR_senha) && !(Util.VerificaTamanhoSenha(aoUsuario.USR_senha)))
                {
                    lsMensagemOperacao = "A senha deve conter de 4 a 12 caracteres!";
                    lbValidado         = false;
                }

                // Confere se os campos 'senha' e 'repete senha' são iguais
                if (!(Util.VerificaIgualdadeSenha(aoUsuario.USR_senha, aoUsuario.USR_repete_senha)))
                {
                    lsMensagemOperacao = "O campo 'repete senha' deve ser igual ao 'campo senha'!";
                    lbValidado         = false;
                }

                if (lbValidado)
                {
                    if (new DAL.Usuario().AtualizarDadosUsuario(aoUsuario) == -1)
                    {
                        lsMensagemOperacao = "Ocorreu algum erro no servidor!";
                        lbValidado         = false;
                    }
                }

                return(lbValidado);
            }
예제 #10
0
 public bool DesativarUsuario(Entity.Usuario aoUsuario, out string lsMensagemOperacao)
 {
     lsMensagemOperacao = string.Empty;
     if (new DAL.Usuario().DesativarUsuario(aoUsuario) == -1)
     {
         lsMensagemOperacao = "Ocorreu algum erro! Tente novamente!";
         return(false);
     }
     return(true);
 }
예제 #11
0
            public bool InserirNovoUsuario(Entity.Usuario aoUsuario, out string lsMensagemOperacao)
            {
                lsMensagemOperacao = string.Empty;
                bool lbValidado = true;

                // Confere se o nome da pessoa é muito curto
                if (!(Util.VerificarNome(aoUsuario.USR_nome)))
                {
                    lsMensagemOperacao = "Nome de tamanho invalido!";
                    lbValidado         = false;
                }

                // Confere se email é valido
                if (!(Util.VerificaValidadeEmail(aoUsuario.USR_email)))
                {
                    lsMensagemOperacao = "Formato de email incorreto!";
                    lbValidado         = false;
                }
                //Confere se o email informa ja foi utilizado
                if (VerificaExistenciaEmail(aoUsuario))
                {
                    lsMensagemOperacao = "Ja existe um usuario com este e-mail!";
                    lbValidado         = false;
                }

                //Confere se tamanho da senha é valido
                if (!(Util.VerificaTamanhoSenha(aoUsuario.USR_senha)))
                {
                    lsMensagemOperacao = "A senha deve conter de 4 a 12 caracteres!";
                    lbValidado         = false;
                }

                // Confere se os campos 'senha' e 'repete senha' são iguais
                if (!(Util.VerificaIgualdadeSenha(aoUsuario.USR_senha, aoUsuario.USR_repete_senha)))
                {
                    lsMensagemOperacao = "O campo 'repete senha' deve ser igual ao 'campo senha'!";
                    lbValidado         = false;
                }

                if (lbValidado)
                {
                    if (new DAL.Usuario().InserirNovoUsuario(aoUsuario) != 1)
                    {
                        lsMensagemOperacao = "Ocorreu um erro no servidor. Tente novamente mais tarde!";
                        lbValidado         = false;
                    }
                }

                return(lbValidado);
            }
예제 #12
0
            public int VerificarLogin(Entity.Usuario aoUsuario, out string lsMensagemOperacao)
            {
                lsMensagemOperacao = string.Empty;
                int ID = -1;

                if (!(VerificaExistenciaEmail(aoUsuario)) || (new DAL.Usuario().LoginUsuario(aoUsuario) == -1))
                {
                    lsMensagemOperacao = "O e-mail e/ou a senha estão incorretos!";
                    return(ID);
                }

                ID = new DAL.Usuario().LoginUsuario(aoUsuario);
                if (!aoUsuario.USR_ativo)
                {
                    new DAL.Usuario().AtivarUsuario(aoUsuario);
                    lsMensagemOperacao = "Usuario reativado!";
                }

                return(ID);
            }
예제 #13
0
            /* Retorna os dados de um usuário através do id dele.
             * Retorna null se por algum motivo o usuário não existe ou ocorreu um erro no banco. */
            internal Entity.Usuario ObterDadosUsuario(int aiIdUsuario)
            {
                MySqlConnection conn = new
                                       MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

                Entity.Usuario loUsuario = null;

                try
                {
                    conn.Open();

                    string       lsSQLQuery = "select USR_email, USR_nome from usr_usuario where USR_id = @id";
                    MySqlCommand cmd        = new MySqlCommand(lsSQLQuery, conn);

                    cmd.Parameters.AddWithValue("@id", aiIdUsuario);

                    MySqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        loUsuario = new Entity.Usuario((string)reader.GetValue(0), (string)reader.GetValue(1), string.Empty, string.Empty);
                    }

                    cmd.Dispose();
                    cmd.Parameters.Clear();
                }
                catch (MySqlException ex)
                {
                }
                finally
                {
                    conn.Close();
                }

                return(loUsuario);
            }
예제 #14
0
            //Carrega dados do emprestimo utilizando o ID do Usuario
            public List <Entity.Emprestimo> CarregarEmprestimos(Entity.Usuario aoUsuario)
            {
                List <Entity.Emprestimo> loEmprestimo = new DAL.Emprestimo().CarregarEmprestimosUsuario(aoUsuario.USR_id);

                return(loEmprestimo);
            }
예제 #15
0
 //Carrega dados do usuario utilizando o ID do login
 public Entity.Usuario CarregarDados(Entity.Usuario aoUsuario)
 {
     Entity.Usuario loUsuario = new DAL.Usuario().ObterDadosUsuario(aoUsuario.USR_id);
     return(loUsuario);
 }
예제 #16
0
            /* Atualiza dados de um usuário no banco.
             * A função já verifica se o nome, e-mail e senha estão vazios e atualiza cada um desses campos
             * apenas se eles não forem vazios. Se por exemplo, só nome estiver diferente de vazio, então só atualizará nome.
             * Retorna 1 se a operção foi executada com sucesso.
             * Retorna -1 se ocorreu algum erro na operação, seja erro no banco ou alguma violação de integridade. */
            internal int AtualizarDadosUsuario(Entity.Usuario aoUsuario)
            {
                int             liResult = -1;
                MySqlConnection conn     = new
                                           MySqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

                try
                {
                    conn.Open();

                    StringBuilder loStb = new StringBuilder();

                    loStb.Append("UPDATE usr_usuario SET ");

                    if (!string.IsNullOrWhiteSpace(aoUsuario.USR_nome))
                    {
                        loStb.Append(" USR_nome = @nome ");
                    }

                    if (!string.IsNullOrWhiteSpace(aoUsuario.USR_email) && string.IsNullOrWhiteSpace(aoUsuario.USR_nome))
                    {
                        loStb.Append(" USR_email = @email ");
                    }
                    else if (!string.IsNullOrWhiteSpace(aoUsuario.USR_email))
                    {
                        loStb.Append(" , USR_email = @email ");
                    }

                    if (!string.IsNullOrWhiteSpace(aoUsuario.USR_senha) &&
                        string.IsNullOrWhiteSpace(aoUsuario.USR_email) && string.IsNullOrWhiteSpace(aoUsuario.USR_nome))
                    {
                        loStb.Append(" USR_senha = @senha ");
                    }
                    else if (!string.IsNullOrWhiteSpace(aoUsuario.USR_senha) &&
                             (!string.IsNullOrWhiteSpace(aoUsuario.USR_email) || !string.IsNullOrWhiteSpace(aoUsuario.USR_nome)))
                    {
                        loStb.Append(" , USR_senha = @senha ");
                    }

                    loStb.Append(" where USR_id = @id ");

                    MySqlCommand cmd = new MySqlCommand(loStb.ToString(), conn);

                    if (!string.IsNullOrWhiteSpace(aoUsuario.USR_nome))
                    {
                        cmd.Parameters.AddWithValue("@nome", aoUsuario.USR_nome);
                    }

                    if (!string.IsNullOrWhiteSpace(aoUsuario.USR_email))
                    {
                        cmd.Parameters.AddWithValue("@email", aoUsuario.USR_email);
                    }

                    if (!string.IsNullOrWhiteSpace(aoUsuario.USR_email))
                    {
                        cmd.Parameters.AddWithValue("@senha", aoUsuario.USR_senha);
                    }

                    cmd.Parameters.AddWithValue("@id", aoUsuario.USR_id);

                    liResult = cmd.ExecuteNonQuery();

                    cmd.Dispose();
                    cmd.Parameters.Clear();
                }
                catch (MySqlException ex)
                {
                }
                finally
                {
                    conn.Close();
                }

                return(liResult);
            }
예제 #17
0
파일: Livro.cs 프로젝트: revwhyte/PersoLib
            public List <Entity.Livro> CarregarLivros(Entity.Usuario aoUsuario)
            {
                List <Entity.Livro> loListaLivros = new DAL.Livro().CarregarLivrosUsuario(aoUsuario.USR_id);

                return(loListaLivros);
            }