Пример #1
0
        public void CadastroNovoEmprestimo(tb_emprestimo dto, string ra, string email)
        {
            try
            {
                DateTime ontem = DateTime.Today;
                ontem = ontem.AddDays(-1);
                if (dto.dt_devolucao.Day - DateTime.Today.Day < 0)
                {
                    throw new ArgumentException("Impossivel devolver um livro ontem!");
                }

                ValidarTexto val = new ValidarTexto();
                val.ValidarEmail(email);
                val.ValidarNome(dto.nm_funcionario);

                AzureBiblioteca db   = new AzureBiblioteca();
                tb_turma_aluno  data = db.tb_turma_aluno.Where(x => x.cd_ra == ra).ToList().Single();

                CriarNotificacao(data, email);

                dto.tb_turma_aluno_id_turma_aluno = data.id_aluno;
                dto.tb_notificacao_id_notificacao = idNot;
                EmprestimoDB.CadastroNovoEmprestimo(dto);
            }
            catch (ArgumentException ex)
            {
                System.Windows.Forms.MessageBox.Show($"{ex.Message}", "Biblioteca",
                                                     MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show($"Ocorreu um erro inexperado: {ex.Message}", "Biblioteca",
                                                     MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #2
0
        private void dgvAutor_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            tb_autor autor = dgvAutor.CurrentRow.DataBoundItem as tb_autor;

            AzureBiblioteca db   = new AzureBiblioteca();
            tb_autor        func = db.tb_autor.Where(x => x.id_autor == autor.id_autor).ToList().Single();
        }
Пример #3
0
        public void AlterarEmprestimo(tb_emprestimo dto, int idemprestimo, tb_aluno_dados dados)
        {
            try
            {
                AzureBiblioteca db   = new AzureBiblioteca();
                tb_aluno_dados  data = db.tb_aluno_dados.Where(x => x.tb_aluno_id_aluno == dados.tb_aluno_id_aluno).ToList().Single();

                if (data.ds_email != null)
                {
                    dados.id_aluno_dados = data.id_aluno_dados;
                    EmprestimoDB.AlterarEmprestimo(dto, idemprestimo, dados);
                }
            }
            catch (Exception)
            {
                AzureBiblioteca db = new AzureBiblioteca();
                int             id;

                db.tb_aluno_dados.Add(dados);
                id = db.SaveChanges();

                dto.tb_turma_aluno_id_turma_aluno = id;

                EmprestimoDB.AlterarEmprestimo(dto, idemprestimo);
            }
        }
Пример #4
0
        public void AlterarEmprestimo(tb_emprestimo dto, int idemprestimo, tb_locatario professor)
        {
            try
            {
                AzureBiblioteca db   = new AzureBiblioteca();
                tb_locatario    data = db.tb_locatario.Where(x => x.nu_cpf == professor.nu_cpf).ToList().Single();

                if (data.nm_locatario != null)
                {
                    professor.id_locatario = data.id_locatario;
                    EmprestimoDB.AlterarEmprestimo(dto, idemprestimo, professor);
                }
            }
            catch (Exception)
            {
                AzureBiblioteca db = new AzureBiblioteca();
                int             id;

                db.tb_locatario.Add(professor);
                id = db.SaveChanges();

                dto.tb_locatario_id_locatario = id;

                EmprestimoDB.AlterarEmprestimo(dto, idemprestimo);
            }
        }
Пример #5
0
        private void CarregarDias()
        {
            if (Program.notificacaoEmail == true)
            {
                DateTime email5dias = DateTime.Today;
                email5dias = email5dias.AddDays(5);

                AzureBiblioteca      db            = new AzureBiblioteca();
                List <tb_emprestimo> livrosDia     = db.tb_emprestimo.Where(x => x.dt_devolucao == DateTime.Today).ToList();
                List <tb_emprestimo> livro5dia     = db.tb_emprestimo.Where(x => x.dt_devolucao == email5dias).ToList();
                List <tb_emprestimo> livroatrasado = db.tb_emprestimo.Where(x => x.dt_devolucao < DateTime.Today).ToList();

                lblQntLivrosDia.Text  = livrosDia.Count.ToString();
                lblLivro5Dias.Text    = livro5dia.Count.ToString();
                lblLivroAtrasado.Text = livroatrasado.Count.ToString();

                if (livrosDia.Count > 0)
                {
                    btnEnviarDia.Enabled = true;
                }
                if (livro5dia.Count > 0)
                {
                    btnEnviar5Dia.Enabled = true;
                }
                if (livroatrasado.Count > 0)
                {
                    btnEnviarAtrasado.Enabled = true;
                }
            }
        }
Пример #6
0
        public void PreencherCampos(int idEmprestimo)
        {
            AzureBiblioteca db         = new AzureBiblioteca();
            tb_emprestimo   emprestimo = db.tb_emprestimo.Where(x => x.id_emprestimo == idEmprestimo).ToList().Single();

            cboLivro.SelectedItem = emprestimo.tb_livro_id_livro;
            txtN.Text             = emprestimo.tb_turma_aluno.nr_chamada.ToString();
            txtRA.Text            = emprestimo.tb_turma_aluno.cd_ra;
            txtFuncionario.Text   = emprestimo.nm_funcionario;
            txtAluno.Text         = emprestimo.tb_turma_aluno.tb_aluno.nm_aluno;
            id = emprestimo.id_emprestimo;
            chkDevolvido.Checked = emprestimo.bt_devolvido;
            dtpEmprestimo.Value  = emprestimo.dt_emprestimo;
            dtpDevolucao.Value   = emprestimo.dt_devolucao;
            txtTurma.Text        = emprestimo.tb_turma_aluno.tb_turma.nm_turma;

            tb_aluno_dados dados = db.tb_aluno_dados.Where(x => x.tb_aluno_id_aluno == emprestimo.tb_turma_aluno_id_turma_aluno).ToList().Single();

            txtEmail.Text = dados.ds_email;
            idAluno       = dados.id_aluno_dados;

            txtRA.Enabled         = false;
            dtpEmprestimo.Enabled = false;
            dtpEmprestimo.Visible = true;
            label13.Visible       = true;
            label14.Visible       = true;
            chkDevolvido.Visible  = true;
            label12.Visible       = true;
            btnAlterar.Visible    = true;
        }
Пример #7
0
        private void txtCPF_Leave(object sender, EventArgs e)
        {
            try
            {
                CPF val = new CPF();
                cpf = val.ValidarCPF(txtCPF.Text);

                AzureBiblioteca db        = new AzureBiblioteca();
                tb_locatario    locatario = db.tb_locatario.Where(x => x.nu_cpf == txtCPF.Text).ToList().Single();

                if (locatario.nm_locatario != null)
                {
                    txtNome.Text    = locatario.nm_locatario;
                    txtEmail.Text   = locatario.ds_email;
                    txtCelular.Text = locatario.nu_celular;
                }
            }
            catch (ArgumentException ex)
            {
                MessageBox.Show($"{ex.Message}", "Biblioteca",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            catch (Exception ex)
            {
                if (ex.Message.Contains("A sequência não contém elementos"))
                {
                    return;
                }
                else
                {
                    MessageBox.Show($"Ocorreu um erro não identificado: {ex.Message}", "Biblioteca",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Пример #8
0
        private void dgvLivros_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            vw_Livro_Autor_Genero livro = dgvLivros.CurrentRow.DataBoundItem as vw_Livro_Autor_Genero;

            AzureBiblioteca db   = new AzureBiblioteca();
            tb_livro        book = db.tb_livro.Where(x => x.id_livro == livro.id_livro).ToList().Single();

            if (book.img_Capa != null)
            {
                imgLivro.Image = ImagemPlugin.ConverterParaImagem(book.img_Capa);
            }
        }
Пример #9
0
        private void EnviarEmail5Dia()
        {
            DateTime email5dias = DateTime.Today;

            email5dias = email5dias.AddDays(5);

            AzureBiblioteca      db        = new AzureBiblioteca();
            List <tb_emprestimo> livro5dia = db.tb_emprestimo.Where(x => x.dt_devolucao == email5dias && x.bt_devolvido == false && x.tb_notificacao.bt_email5DIa == false).ToList();


            if (livro5dia.Count != 0)
            {
                foreach (tb_emprestimo emprestimo in livro5dia)
                {
                    if (emprestimo.tb_locatario_id_locatario != null)
                    {
                        Send(emprestimo.tb_locatario.ds_email, emprestimo.tb_locatario.nm_locatario);
                    }
                    else
                    {
                        tb_aluno_dados emailAluno = db.tb_aluno_dados.Where(x => x.tb_aluno_id_aluno == emprestimo.tb_turma_aluno_id_turma_aluno).ToList().Single();
                        Send(emailAluno.ds_email, emprestimo.tb_turma_aluno.tb_aluno.nm_aluno);
                    }

                    tb_notificacao alt = db.tb_notificacao.Where(x => x.id_notificacao == emprestimo.tb_notificacao_id_notificacao).ToList().Single();
                    alt.bt_email5DIa = true;
                    db.SaveChanges();
                }

                void Send(string email, string nome)
                {
                    EmailDTO mail = new EmailDTO();

                    mail.Assunto           = "FALTAM 5 DIAS PARA A DEVOULUÇÃO!";
                    mail.DestinatarioEmail = email;
                    mail.DestinatarioNome  = nome;
                    mail.Mensagem          = Resources.email2;
                    mail.RemetenteSenha    = "pbtadmin1234";
                    mail.RemetenteNome     = "Biblioteca FREI";
                    mail.RemetenteEmail    = "*****@*****.**";

                    EmailSend send = new EmailSend();

                    send.EnviarEmail(mail);
                }
            }
            else
            {
                return;
            }
        }
Пример #10
0
        private void CriarNotificacao(tb_turma_aluno data, string email)
        {
            AzureBiblioteca db    = new AzureBiblioteca();
            tb_aluno_dados  dados = new tb_aluno_dados();

            try
            {
                dados = db.tb_aluno_dados.Where(x => x.tb_aluno_id_aluno == data.id_aluno).ToList().Single();

                tb_notificacao not = new tb_notificacao();
                not.bt_email5DIa     = false;
                not.bt_emailAtrasado = false;
                not.bt_emailDia      = false;
                not.tb_aluno_dados_id_aluno_dados = dados.id_aluno_dados;

                db.tb_notificacao.Add(not);
                db.SaveChanges();

                tb_notificacao idN = db.tb_notificacao.OrderByDescending(o => o.id_notificacao).First();

                idNot = idN.id_notificacao;
            }
            catch (Exception ex)
            {
                if (ex.HResult == -2146233079)
                {
                    tb_aluno_dados ad = new tb_aluno_dados();
                    ad.ds_email          = email;
                    ad.tb_aluno_id_aluno = data.id_aluno;

                    db.tb_aluno_dados.Add(ad);
                    db.SaveChanges();

                    tb_aluno_dados id = db.tb_aluno_dados.OrderByDescending(o => o.id_aluno_dados).First();

                    tb_notificacao not = new tb_notificacao();
                    not.bt_email5DIa     = false;
                    not.bt_emailAtrasado = false;
                    not.bt_emailDia      = false;
                    not.tb_aluno_dados_id_aluno_dados = id.id_aluno_dados;

                    db.tb_notificacao.Add(not);
                    db.SaveChanges();

                    tb_notificacao idN = db.tb_notificacao.OrderByDescending(o => o.id_notificacao).First();

                    idNot = idN.id_notificacao;
                    return;
                }
            }
        }
Пример #11
0
        public int CadastroNovoEmprestimo(tb_emprestimo dto, tb_locatario professor)
        {
            try
            {
                DateTime ontem = DateTime.Today;
                ontem = ontem.AddDays(-1);
                if (dto.dt_devolucao.Day - DateTime.Today.Day < 0)
                {
                    throw new ArgumentException("Impossivel devolver um livro ontem!");
                }

                ValidarTexto val = new ValidarTexto();
                val.ValidarEmail(professor.ds_email);
                val.ValidarNome(dto.nm_funcionario);
                val.ValidarNome(professor.nm_locatario);

                ValidarNumero valN = new ValidarNumero();
                valN.ValidarTelefoneCelular(professor.nu_celular);

                AzureBiblioteca db   = new AzureBiblioteca();
                tb_locatario    data = db.tb_locatario.Where(x => x.nu_cpf == professor.nu_cpf).ToList().Single();

                if (data.nm_locatario != null)
                {
                    dto.tb_locatario_id_locatario = data.id_locatario;
                    return(EmprestimoDB.CadastroNovoEmprestimo(dto));
                }

                return(0);
            }
            catch (ArgumentException ex)
            {
                System.Windows.Forms.MessageBox.Show($"{ex.Message}", "Biblioteca",
                                                     MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            catch (Exception)
            {
                AzureBiblioteca db = new AzureBiblioteca();
                int             id;

                db.tb_locatario.Add(professor);
                id = db.SaveChanges();

                dto.tb_locatario_id_locatario = id;

                return(EmprestimoDB.CadastroNovoEmprestimo(dto));
            }

            return(0);
        }
Пример #12
0
        public void PreencherCampos(int idAutor)
        {
            AzureBiblioteca db    = new AzureBiblioteca();
            tb_autor        autor = db.tb_autor.Where(x => x.id_autor == idAutor).ToList().Single();

            lblid.Text             = autor.id_autor.ToString();
            txtAutor.Text          = autor.nm_autor;
            txtNomeCompleto.Text   = autor.nm_nomeCompleto;
            txtNascionalidade.Text = autor.ds_nacionalidade;

            btnCadastrar.Visible = false;
            lblid.Visible        = true;
            lblidTxt.Visible     = true;
        }
Пример #13
0
        private void EnviarEmailAtrasado()
        {
            AzureBiblioteca      db            = new AzureBiblioteca();
            List <tb_emprestimo> livroatrasado = db.tb_emprestimo.Where(x => x.dt_devolucao < DateTime.Today && x.bt_devolvido == false && x.tb_notificacao.bt_emailAtrasado == false).ToList();


            if (livroatrasado.Count != 0)
            {
                foreach (tb_emprestimo emprestimo in livroatrasado)
                {
                    if (emprestimo.tb_locatario_id_locatario != null)
                    {
                        Send(emprestimo.tb_locatario.ds_email, emprestimo.tb_locatario.nm_locatario);
                    }
                    else
                    {
                        tb_aluno_dados emailAluno = db.tb_aluno_dados.Where(x => x.tb_aluno_id_aluno == emprestimo.tb_turma_aluno_id_turma_aluno).ToList().Single();
                        Send(emailAluno.ds_email, emprestimo.tb_locatario.nm_locatario);
                    }

                    tb_notificacao alt = db.tb_notificacao.Where(x => x.id_notificacao == emprestimo.tb_notificacao_id_notificacao).ToList().Single();
                    alt.bt_emailAtrasado = true;
                    db.SaveChanges();
                }

                void Send(string email, string nome)
                {
                    EmailDTO mail = new EmailDTO();

                    mail.Assunto           = "ENTREGA DO LIVRO ATRASADA!";
                    mail.DestinatarioEmail = email;
                    mail.DestinatarioNome  = nome;
                    mail.Mensagem          = Resources.email3;
                    mail.RemetenteSenha    = "pbtadmin1234";
                    mail.RemetenteNome     = "Biblioteca FREI";
                    mail.RemetenteEmail    = "*****@*****.**";

                    EmailSend send = new EmailSend();

                    send.EnviarEmail(mail);
                }
            }
            else
            {
                return;
            }
        }
Пример #14
0
        private void CriarNotificacao(tb_turma_aluno data)
        {
            try
            {
                AzureBiblioteca db    = new AzureBiblioteca();
                tb_aluno_dados  dados = db.tb_aluno_dados.Where(x => x.tb_aluno_id_aluno == data.id_aluno).ToList().Single();

                if (dados.ds_email.Count() > 0)
                {
                    txtEmail.Text = dados.ds_email;
                }
            }
            catch (Exception)
            {
                txtEmail.Clear();
                return;
            }
        }
Пример #15
0
        private void txtRA_KeyPress(object sender, KeyPressEventArgs e)
        {
            try
            {
                if (txtRA.Text.Length > 8)
                {
                    AzureBiblioteca db   = new AzureBiblioteca();
                    tb_turma_aluno  data = db.tb_turma_aluno.Where(x => x.cd_ra == txtRA.Text).ToList().Single();

                    if (data.nr_chamada != null)
                    {
                        txtRA.BackColor = Color.Green;

                        txtAluno.Text = data.tb_aluno.nm_aluno;
                        txtN.Text     = data.nr_chamada.ToString();
                        txtTurma.Text = data.tb_turma.nm_turma;

                        CriarNotificacao(data);
                    }
                }
                else
                {
                    txtRA.BackColor = Color.Red;
                }
            }
            catch (Exception ex)
            {
                if (ex.Message.Contains("A sequência não contém elementos"))
                {
                    txtRA.BackColor = Color.Red;
                }
                else
                {
                    MessageBox.Show($"Ocorreu um erro não identificado: {ex.Message}", "Biblioteca",
                                    MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
            }
        }
Пример #16
0
        public void PreencherCampos(int idLivro)
        {
            AzureBiblioteca db    = new AzureBiblioteca();
            tb_livro        livro = db.tb_livro.Where(x => x.id_livro == idLivro).ToList().Single();

            txtIdioma.Text         = livro.ds_idioma;
            txtPalavrasChaves.Text = livro.ds_palavrasChaves;
            txtSubtitulo_Controle_de_Livros.Text = livro.ds_subtitulo;
            txtTitulo_contole_de_livros.Text     = livro.ds_titulo;
            imgLivro.Image = livro.img_Capa != null?ImagemPlugin.ConverterParaImagem(livro.img_Capa) : null;

            txtEditora_Contrle_de_Estoque.Text = livro.nm_editora;
            txtISBN.Text = livro.nu_isbn;
            txtVolume_controle_de_livros.Text = livro.nu_volume.ToString();
            lblid.Text = livro.id_livro.ToString();

            btnCadastrar.Visible = false;
            lblid.Visible        = true;
            lblidTxt.Visible     = true;
            //lblQNT.Visible = false;
            //lblQNT2.Visible = false;
            //nudQnt.Visible = false;
        }
Пример #17
0
        private void SendEmail()
        {
            try
            {
                DateTime email5dias = DateTime.Today;
                email5dias = email5dias.AddDays(5);

                AzureBiblioteca      db            = new AzureBiblioteca();
                List <tb_emprestimo> livrodia      = db.tb_emprestimo.Where(x => x.dt_devolucao == DateTime.Today && x.bt_devolvido == false && x.tb_notificacao.bt_emailDia == false).ToList();
                List <tb_emprestimo> livroatrasado = db.tb_emprestimo.Where(x => x.dt_devolucao < DateTime.Today && x.bt_devolvido == false && x.tb_notificacao.bt_emailAtrasado == false).ToList();
                List <tb_emprestimo> livro5dia     = db.tb_emprestimo.Where(x => x.dt_devolucao == email5dias && x.bt_devolvido == false && x.tb_notificacao.bt_email5DIa == false).ToList();

                if (livrodia.Count != 0 || livroatrasado.Count != 0 || livro5dia.Count != 0)
                {
                    EnviarEmail5Dia();
                    EnviarEmailAtrasado();
                    EnviarEmailDia();
                }
                else
                {
                    return;
                }
            }
            catch (Exception ex)
            {
                if (ex.Message.Contains("The underlying provider failed on Open"))
                {
                    MessageBox.Show("Não é possivel conectar-se ao servidor. Verifique sua conexão com a internet!\nConsulte the tool Peedroc's", "Biblioteca",
                                    MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
                else
                {
                    MessageBox.Show($"Ocorreu um erro não identificado: {ex.Message}", "Biblioteca",
                                    MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
            }
        }
Пример #18
0
        public void PreencherCampos(int idEmprestimo)
        {
            AzureBiblioteca db         = new AzureBiblioteca();
            tb_emprestimo   emprestimo = db.tb_emprestimo.Where(x => x.id_emprestimo == idEmprestimo).ToList().Single();

            cboLivro.SelectedItem = emprestimo.tb_livro_id_livro;
            txtCelular.Text       = emprestimo.tb_locatario.nu_celular;
            txtCPF.Text           = emprestimo.tb_locatario.nu_cpf;
            txtEmail.Text         = emprestimo.tb_locatario.ds_email;
            txtFuncionario.Text   = emprestimo.nm_funcionario;
            txtNome.Text          = emprestimo.tb_locatario.nm_locatario;
            id = emprestimo.id_emprestimo;
            chkDevolvido.Checked = emprestimo.bt_devolvido;
            dtpEmprestimo.Value  = emprestimo.dt_emprestimo;
            dtpDevolucao.Value   = emprestimo.dt_devolucao;

            dtpDevolucao.Enabled  = false;
            dtpEmprestimo.Enabled = false;
            dtpEmprestimo.Visible = true;
            label13.Visible       = true;
            chkDevolvido.Visible  = true;
            label12.Visible       = true;
            btnAlterar.Visible    = true;
        }
Пример #19
0
 private void PreencherDados(int idLocatario)
 {
     AzureBiblioteca         db  = new AzureBiblioteca();
     vw_emprestimo_locatario loc = db.vw_emprestimo_locatario.Where(x => x.id_emprestimo == idLocatario).ToList().Single();
 }