private void FrmGerenciamentoSeries_Load(object sender, EventArgs e)
        {
            //Limpa o ListView.
            listViewSeries.Items.Clear();

            //Para ler o arquivo txt e carregar nos ArrayLists.
            BibliotecaDeSubRotinas.LerSeriesNoTxt(codigoSerie, nomeSerie, temporadaAtual, ultimoEpisodioAssistido, totalDeTemporadas, categoriaDaSerie);

            for (int i = 0; i < codigoSerie.Count; i++)
            {
                //Atribui uma nova linha ao ListView e coloca o valor na primeira célula. Tem que converter para string, pois no ArrayList se guarda como objeto.
                ListViewItem linha = listViewSeries.Items.Add(Convert.ToString(codigoSerie[i]));

                //O SubItems.Add coloca um valor na próxima célula da linha. Tem que converter para string, pois no ArrayList se guarda como objeto.
                linha.SubItems.Add(Convert.ToString(nomeSerie[i]));
                linha.SubItems.Add(Convert.ToString(temporadaAtual[i]));
                linha.SubItems.Add(Convert.ToString(ultimoEpisodioAssistido[i]));
                linha.SubItems.Add(Convert.ToString(totalDeTemporadas[i]));
                linha.SubItems.Add(Convert.ToString(categoriaDaSerie[i]));
            }

            //Preenchendo o ComboBox
            BibliotecaDeSubRotinas.LerCategoriasNoTxt(codigoCategoria, nomeCategoria);
            for (int i = 0; i < nomeCategoria.Count; i++)
            {
                comboBoxSeriesPorCategoria.Items.Add(nomeCategoria[i]);
            }

            //Adiciona no final a opção listar tudo.
            comboBoxSeriesPorCategoria.Items.Add("Listar Tudo");
        }
        private void BtnMostrarCategoriaParaEditar_Click(object sender, EventArgs e)
        {
            btnSalvarCategoria.Enabled    = true;
            btnExcluirCategoria.Enabled   = true;
            btnAdicionarCategoria.Enabled = false;

            //Limpa todos os ArrayLists antes de começar.
            codigoCategoria.Clear(); nomeCategoria.Clear();

            //Carrega as informações do arquivo txt.
            BibliotecaDeSubRotinas.LerCategoriasNoTxt(codigoCategoria, nomeCategoria);

            //Crítica não pode ter campo em branco.
            if (txtCodigoParaEditarCategoria.Text == "")
            {
                MessageBox.Show("Campo Vazio. Digite o código desejado.");
                txtCodigoParaEditarCategoria.Focus();
                return;
            }

            //Crítica para aceitar somente números.
            if (BibliotecaDeSubRotinas.CríticaApenasNumeros(txtCodigoParaEditarCategoria.Text) == true)
            {
                MessageBox.Show("O código contém apenas números.");
                txtCodigoParaEditarCategoria.Focus();
                return;
            }

            // Procura se o código digitado existe no ArrayList e mostra o código e o nome da categoria na área para edição ou exclusão.
            bool existeCodigo = false;

            for (int i = 0; i < nomeCategoria.Count; i++)
            {
                if (txtCodigoParaEditarCategoria.Text == Convert.ToString(codigoCategoria[i]))
                {
                    string codigocategoriaSelecionada = Convert.ToString(codigoCategoria[i]);
                    txtCodigoCategoria.Text = codigocategoriaSelecionada;

                    string categoriaSelecionada = Convert.ToString(nomeCategoria[i]);
                    txtNomeCategoria.Text = categoriaSelecionada;

                    existeCodigo = true;
                }
            }
            // Mostra mensagem de erro caso não exista o código informado.
            if (existeCodigo == false)
            {
                MessageBox.Show("Código informado não existe.");
            }
        }
Beispiel #3
0
        private void FrmMinhasCategorias_Load(object sender, EventArgs e)
        {
            listViewCategorias.Items.Clear();
            BibliotecaDeSubRotinas.LerCategoriasNoTxt(codigoCategoria, nomeCategoria);

            for (int i = 0; i < codigoCategoria.Count; i++)
            {
                //Atribui uma nova linha ao ListView e coloca o valor na primeira célula. Tem que converter para string, pois no ArrayList se guarda como objeto.
                ListViewItem linha = listViewCategorias.Items.Add(Convert.ToString(codigoCategoria[i]));

                //O SubItems.Add coloca um valor na próxima célula da linha. Tem que converter para string, pois no ArrayList se guarda como objeto.
                linha.SubItems.Add(Convert.ToString(nomeCategoria[i]));
            }
        }
        private void BtnAdicionarCategoria_Click(object sender, EventArgs e)
        {       //Limpa todos os ArrayLists antes de começar.
            codigoCategoria.Clear(); nomeCategoria.Clear();

            //Carrega as informações do arquivo txt.
            BibliotecaDeSubRotinas.LerCategoriasNoTxt(codigoCategoria, nomeCategoria);

            //Crítica não pode ter campo em branco.
            if (txtNomeCategoria.Text == "")
            {
                MessageBox.Show("Digite um nome para sua categoria.");
                return;
            }

            //Crítica para aceitar somente letras.
            if (BibliotecaDeSubRotinas.CríticaApenasLetras(txtNomeCategoria.Text) == true)
            {
                MessageBox.Show("Por favor, digite apenas letras.");
                txtCodigoCategoria.Focus();
                return;
            }

            //Consulta se já existe o cadastro dessa categoria.
            int  contador = 1;
            bool jaExiste = false;

            for (int i = 0; i < nomeCategoria.Count; i++)
            {
                if (txtNomeCategoria.Text.ToUpper() == Convert.ToString(nomeCategoria[i]).ToUpper())
                {
                    jaExiste = true;
                    MessageBox.Show("Essa categoria já existe.");
                    txtNomeCategoria.Clear();
                    return;
                }
                contador = contador + 1;
            }

            //Se for confirmado que a categoria não existe.
            if (jaExiste == false)
            {
                //Adiciona no ArrayList a nova categoria.
                nomeCategoria.Add(txtNomeCategoria.Text);

                //Adiciona no ArrayList um código para a nova categoria e os zeros na frente, se necessário.
                if (contador >= 1 && contador < 10)
                {
                    codigoCategoria.Add("00" + contador);
                }
                else if (contador >= 10 && contador < 100)
                {
                    codigoCategoria.Add("0" + contador);
                }
                else
                {
                    codigoCategoria.Add(contador);
                }

                //Adiciona a nova categoria no arquivo texto.
                BibliotecaDeSubRotinas.EscreverCategoriasNoTxt(codigoCategoria, nomeCategoria);

                MessageBox.Show("Categoria adicionada com sucesso.");
            }

            //Apaga o formulário
            txtCodigoParaEditarCategoria.Clear();
            txtCodigoCategoria.Clear();
            txtNomeCategoria.Clear();
        }
        private void BtnAdicionarSerie_Click(object sender, EventArgs e)
        {
            //Limpa todos os ArrayLists antes de começar.
            codigoSerie.Clear(); nomeSerie.Clear(); temporadaAtual.Clear(); ultimoEpisodioAssistido.Clear(); totalDeTemporadas.Clear(); categoriaDaSerie.Clear();

            //Carrega as informações do arquivo txt.
            BibliotecaDeSubRotinas.LerSeriesNoTxt(codigoSerie, nomeSerie, temporadaAtual, ultimoEpisodioAssistido, totalDeTemporadas, categoriaDaSerie);

            //Crítica não pode ter campo em branco.
            if (txtNomeSerie.Text == "" || txtTemporadaAtual.Text == "" || txtUltimoEpisodioAssistido.Text == "" || txtTotalDeTemporadas.Text == "" || txtCategoriaDaSerie.Text == "")
            {
                MessageBox.Show("Todos os campos são obrigatórios.");
                return;
            }

            //Crítica para aceitar somente números. (Campo Temporada Atual)
            if (BibliotecaDeSubRotinas.CríticaApenasNumeros(txtTemporadaAtual.Text) == true)
            {
                MessageBox.Show("O campo TEMPORADA ATUAL aceita apenas NÚMEROS.");
                txtTemporadaAtual.Focus();
                return;
            }
            //Crítica para aceitar somente números. (Campo Último Episódio Assistido)
            if (BibliotecaDeSubRotinas.CríticaApenasNumeros(txtUltimoEpisodioAssistido.Text) == true)
            {
                MessageBox.Show("O campo ÚLTIMO EPISÓDIO ASSISTIDO aceita apenas NÚMEROS.");
                txtUltimoEpisodioAssistido.Focus();
                return;
            }

            //Crítica para aceitar somente números. (Campo Total de Temporadas)
            if (BibliotecaDeSubRotinas.CríticaApenasNumeros(txtTotalDeTemporadas.Text) == true)
            {
                MessageBox.Show("O campo TOTAL DE TEMPORADAS aceita apenas NÚMEROS.");
                txtTotalDeTemporadas.Focus();
                return;
            }

            //Crítica para aceitar somente letras. (Campo Categoria)
            if (BibliotecaDeSubRotinas.CríticaApenasLetras(txtCategoriaDaSerie.Text) == true)
            {
                MessageBox.Show("O campo CATEGORIA deve possuir apenas LETRAS.");
                txtCategoriaDaSerie.Focus();
                return;
            }
            //Consulta se a categoria existe no cadastro de categorias.
            BibliotecaDeSubRotinas.LerCategoriasNoTxt(codigoCategoria, nomeCategoria);
            int naoExisteCategoria = 0;

            for (int i = 0; i < nomeCategoria.Count; i++)
            {
                if (txtCategoriaDaSerie.Text.ToUpper() != Convert.ToString(nomeCategoria[i]).ToUpper())
                {
                    naoExisteCategoria++;
                }
                if (naoExisteCategoria == nomeCategoria.Count)
                {
                    MessageBox.Show("Categoria informada não existe no cadastro.");
                    naoExisteCategoria = 0;
                    return;
                }
            }
            //Consulta se já existe o cadastro dessa série.
            int  contador = 1;
            bool jaExiste = false;

            for (int i = 0; i < nomeSerie.Count; i++)
            {
                if (txtNomeSerie.Text.ToUpper() == Convert.ToString(nomeSerie[i]).ToUpper())
                {
                    jaExiste = true;
                    MessageBox.Show("Essa série já existe no cadastro.");
                    return;
                }
                contador = contador + 1;
            }

            //Se for confirmado que a série não existe.
            if (jaExiste == false)
            {
                //Adiciona no ArrayList a nova série e todas as suas especificações.
                nomeSerie.Add(txtNomeSerie.Text);
                temporadaAtual.Add(txtTemporadaAtual.Text);
                ultimoEpisodioAssistido.Add(txtUltimoEpisodioAssistido.Text);
                totalDeTemporadas.Add(txtTotalDeTemporadas.Text);
                categoriaDaSerie.Add(txtCategoriaDaSerie.Text);

                //Adiciona no ArrayList um código para a nova série e os zeros na frente, se necessário.
                if (contador >= 1 && contador < 10)
                {
                    codigoSerie.Add("00" + contador);
                }
                else if (contador >= 10 && contador < 100)
                {
                    codigoSerie.Add("0" + contador);
                }
                else
                {
                    codigoSerie.Add(contador);
                }

                //Adiciona a nova serie no arquivo texto.
                BibliotecaDeSubRotinas.EscreverSeriesNoTxt(codigoSerie, nomeSerie, temporadaAtual, ultimoEpisodioAssistido, totalDeTemporadas, categoriaDaSerie);

                MessageBox.Show("Série adicionada com sucesso.");

                //Limpa todos os campos
                txtCodigoMostrarSerieParaEditar.Clear();
                txtNomeSerie.Clear();
                txtTemporadaAtual.Clear();
                txtUltimoEpisodioAssistido.Clear();
                txtTotalDeTemporadas.Clear();
                txtCategoriaDaSerie.Clear();

                //Ajusta os botões.
                btnSalvarSerie.Enabled            = false;
                btnExcluirSerie.Enabled           = false;
                btnAdicionarSerie.Enabled         = true;
                btnMostrarSerieParaEditar.Enabled = true;
            }
        }
        private void BtnSalvarSerie_Click(object sender, EventArgs e)
        {
            //Crítica não pode ter campo em branco.
            if (txtNomeSerie.Text == "" || txtTemporadaAtual.Text == "" || txtUltimoEpisodioAssistido.Text == "" || txtTotalDeTemporadas.Text == "" || txtCategoriaDaSerie.Text == "")
            {
                MessageBox.Show("Todos os campos são obrigatórios.");
                return;
            }
            //Crítica para aceitar somente letras. (Campo Categoria)
            if (BibliotecaDeSubRotinas.CríticaApenasLetras(txtCategoriaDaSerie.Text) == true)
            {
                MessageBox.Show("O campo CATEGORIA possui apenas LETRAS.");
                txtCategoriaDaSerie.Focus();
                return;
            }
            //Crítica para aceitar somente números. (Campo Temporada Atual)
            if (BibliotecaDeSubRotinas.CríticaApenasNumeros(txtTemporadaAtual.Text) == true)
            {
                MessageBox.Show("O campo TEMPORADA ATUAL aceita apenas NÚMEROS.");
                txtTemporadaAtual.Focus();
                return;
            }
            //Crítica para aceitar somente números. (Campo Último Episódio Assistido)
            if (BibliotecaDeSubRotinas.CríticaApenasNumeros(txtUltimoEpisodioAssistido.Text) == true)
            {
                MessageBox.Show("O campo ÚLTIMO EPISÓDIO ASSISTIDO aceita apenas NÚMEROS.");
                txtUltimoEpisodioAssistido.Focus();
                return;
            }
            //Crítica para aceitar somente números. (Campo Total de Temporadas)
            if (BibliotecaDeSubRotinas.CríticaApenasNumeros(txtTotalDeTemporadas.Text) == true)
            {
                MessageBox.Show("O campo TOTAL DE TEMPORADAS aceita apenas NÚMEROS.");
                txtTotalDeTemporadas.Focus();
                return;
            }

            //Consulta se a categoria informada existe no cadastro de categorias.
            BibliotecaDeSubRotinas.LerCategoriasNoTxt(codigoCategoria, nomeCategoria);
            int naoExisteCategoria = 0;

            for (int i = 0; i < nomeCategoria.Count; i++)
            {
                if (txtCategoriaDaSerie.Text.ToUpper() != Convert.ToString(nomeCategoria[i]).ToUpper())
                {
                    naoExisteCategoria++;
                }
                if (naoExisteCategoria == nomeCategoria.Count)
                {
                    MessageBox.Show("Categoria informada não existe no cadastro.");
                    naoExisteCategoria = 0;
                    return;
                }
            }

            //Remove os dados da série do ArrayList e adiciona os dados editados em seu lugar.
            bool   existeSerieEditada             = false;
            string nomeSerieEditado               = txtNomeSerie.Text;
            string temporadaAtualEditada          = txtTemporadaAtual.Text;
            string ultimoEpisodioAssistidoEditado = txtUltimoEpisodioAssistido.Text;
            string totalDeTemporadasEditado       = txtTotalDeTemporadas.Text;
            string categoriaDaSerieEditada        = txtCategoriaDaSerie.Text;

            for (int i = 0; i < nomeSerie.Count; i++)
            {
                if (txtCodigoMostrarSerieParaEditar.Text == Convert.ToString(codigoSerie[i]))
                {
                    nomeSerie.RemoveAt(i);
                    nomeSerie.Insert(i, nomeSerieEditado);

                    temporadaAtual.RemoveAt(i);
                    temporadaAtual.Insert(i, temporadaAtualEditada);

                    ultimoEpisodioAssistido.RemoveAt(i);
                    ultimoEpisodioAssistido.Insert(i, ultimoEpisodioAssistidoEditado);

                    totalDeTemporadas.RemoveAt(i);
                    totalDeTemporadas.Insert(i, totalDeTemporadasEditado);

                    categoriaDaSerie.RemoveAt(i);
                    categoriaDaSerie.Insert(i, categoriaDaSerieEditada);

                    existeSerieEditada = true;
                }
            }
            // Mostra mensagem de erro caso não tenha sido possível a edição.
            if (existeSerieEditada == false)
            {
                MessageBox.Show("Não foi possível editar essa série.");
            }
            //Grava no arquivo txt com a edição.
            BibliotecaDeSubRotinas.EscreverSeriesNoTxt(codigoSerie, nomeSerie, temporadaAtual, ultimoEpisodioAssistido, totalDeTemporadas, categoriaDaSerie);

            if (existeSerieEditada == true)
            {
                MessageBox.Show("Série editada com sucesso.");
            }

            //Limpa todos os campos.
            txtCodigoMostrarSerieParaEditar.Clear();
            txtNomeSerie.Clear();
            txtTemporadaAtual.Clear();
            txtUltimoEpisodioAssistido.Clear();
            txtTotalDeTemporadas.Clear();
            txtCategoriaDaSerie.Clear();

            //Ajusta os botões.
            btnSalvarSerie.Enabled            = false;
            btnExcluirSerie.Enabled           = false;
            btnAdicionarSerie.Enabled         = true;
            btnMostrarSerieParaEditar.Enabled = true;
        }