예제 #1
0
 /* Aqui foi criada uma pequena restrição para o usuário*/
 public static void Incluir(MProduto modelo)
 {
     //Para ficar tudo maiúsculo
     modelo.NomeProduto      = modelo.NomeProduto.ToUpper();
     modelo.DescricaoProduto = modelo.DescricaoProduto.ToUpper();
     //Chamando o metodo Incluir
     DALProduto.Incluir(modelo);
 }
예제 #2
0
        public static void Alterar(MProduto modelo)
        {
            //Para ficar tudo maiúsculo
            modelo.NomeProduto      = modelo.NomeProduto.ToUpper();
            modelo.DescricaoProduto = modelo.DescricaoProduto.ToUpper();

            //Chamndo método Alterar
            DALProduto.Alterar(modelo);
        }
예제 #3
0
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            if (dgvProduto.Rows.Count > 0)
            {
                if (VerificarExistenciaNaLista(int.Parse(dgvProduto.CurrentRow.Cells["codigo"].Value.ToString())) == true) //Verificando a existencia do produto na lista
                {
                    try
                    {
                        //Pegando dados do DataGrid
                        int    cod          = int.Parse(dgvProduto.CurrentRow.Cells["codigo"].Value.ToString());
                        string nome         = dgvProduto.CurrentRow.Cells["nome"].Value.ToString();
                        double quantEstoque = double.Parse(dgvProduto.CurrentRow.Cells["quant"].Value.ToString());
                        double valorVenda   = double.Parse(dgvProduto.CurrentRow.Cells["valorVenda"].Value.ToString());

                        //Pegando a quantidade de produto
                        Double quantProduto = frmQuantidadeProduto.AddQuantidade(dgvProduto.CurrentRow.Cells["nome"].Value.ToString(), double.Parse(dgvProduto.CurrentRow.Cells["quant"].Value.ToString()));

                        //Analisando se o usuário não fechou a tela e consequentemente retornou a quantidade 0
                        if (quantProduto != 0.0)
                        {
                            //Instanciando um produto apenas com o campos necessário
                            MProduto ProdTemp = new MProduto();
                            ProdTemp.CodigoProduto     = cod;
                            ProdTemp.NomeProduto       = nome;
                            ProdTemp.ValorVendaProduto = valorVenda;
                            ProdTemp.QuantProduto      = quantEstoque;
                            //Instanciando um iten
                            MItensVenda temp = new MItensVenda(quantProduto, ProdTemp);
                            temp.Valor();
                            //Add os dados ao objeto venda
                            Venda.Itens.Add(temp);
                            //Carregando o Grid com as novas alterações
                            CarregarGrid();
                        }
                    }
                    catch (Exception erro)
                    {
                        MessageBox.Show(erro.Message, "OK");
                    }
                }
                else
                {
                    MessageBox.Show("O produto já existe na lista!", "OK");
                }
            }
            else
            {
                MessageBox.Show("Não existe produto cadastrado!");
            }
        }
예제 #4
0
        //Evento click do botão salvar
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                //Verificando se o usuário informou todos os campos obrigatorios
                if (txtNome.Text == "" || txtDescricao.Text == "" || cbxStatus.Text == "" || cbxCodUnidadeMedida.Text == "" || cbxCodCat.Text == "" || txtValorPago.Text == "")
                {
                    throw new Exception("Preencha todos os Campos!");
                }

                //Verificando Data de Validade
                if (DateTime.Today > dtpDataValidade.Value.Date)
                {
                    throw new Exception("A data de validade é menor que a atual!");
                }

                //Instenciando o objeto
                MProduto produto = new MProduto(txtNome.Text, txtDescricao.Text, double.Parse(txtValorVenda.Text), double.Parse(txtQuantidade.Text), cbxStatus.Text, int.Parse(cbxCodUnidadeMedida.SelectedValue.ToString()), int.Parse(cbxCodCat.SelectedValue.ToString()));

                //Verificando se tem uma subcategria
                if (cbxCodSubcat.Text != "")
                {
                    produto.CodigoSubcategoria = int.Parse(cbxCodSubcat.SelectedValue.ToString());
                }

                //Verificando se vai ser atualizado ou cadastrado
                if (btnSalvar.Text == "Atualizar")
                {
                    produto.CodigoProduto = int.Parse(txtCodigo.Text); //Passando o id
                    BLLProduto.Alterar(produto);                       //Chamando o metodo alterar
                    MessageBox.Show("Alteração realizada com sucesso!");
                }
                else if (txtQuantidade.Enabled == true)                //Analisando se será adcinando um produto a uma compra
                {
                    produto.CodigoProduto = int.Parse(txtCodigo.Text); //Pegando o id

                    Iten = new MItensCompra(double.Parse(txtQuantidade.Text), double.Parse(txtValorPago.Text), txtCodBarra.Text, dtpDataValidade.Value.Date, produto);

                    Close(); //Fechando o formulario
                }
                //Padrão
                Alterarbotoes(0);
            }
            catch (Exception erro)
            {
                MessageBox.Show(erro.Message);
            }
        }
        private void btnAlterarProduto_Click(object sender, EventArgs e)
        {
            try
            {
                //produto
                int    codigoProduto       = int.Parse(dgvProduto.CurrentRow.Cells[6].Value.ToString());
                string nomeProduto         = dgvProduto.CurrentRow.Cells[7].Value.ToString();
                string descricaoProduto    = dgvProduto.CurrentRow.Cells[8].Value.ToString();
                double valorVendaProduto   = double.Parse(dgvProduto.CurrentRow.Cells[9].Value.ToString());
                double quantProduto        = double.Parse(dgvProduto.CurrentRow.Cells[10].Value.ToString());
                int    codigoUnidadeMedida = int.Parse(dgvProduto.CurrentRow.Cells[12].Value.ToString());
                string status             = dgvProduto.CurrentRow.Cells[11].Value.ToString();
                int    codigoCategoria    = int.Parse(dgvProduto.CurrentRow.Cells[13].Value.ToString());;
                int    codigoSubCategoria = int.Parse(dgvProduto.CurrentRow.Cells[14].Value.ToString());

                //itens
                int      itemCompraCod           = int.Parse(dgvProduto.CurrentRow.Cells[0].Value.ToString());
                double   itemCompraQuant         = double.Parse(dgvProduto.CurrentRow.Cells[1].Value.ToString());
                double   itemCompraValor         = double.Parse(dgvProduto.CurrentRow.Cells[3].Value.ToString());;
                string   itensCompra_codigoBarra = dgvProduto.CurrentRow.Cells[4].Value.ToString();
                DateTime itensCompra_vencimento  = DateTime.Parse(dgvProduto.CurrentRow.Cells[5].Value.ToString());

                //pegando produto
                MProduto prod = new MProduto(codigoProduto, nomeProduto, descricaoProduto, valorVendaProduto, quantProduto, status, codigoUnidadeMedida, codigoCategoria, codigoSubCategoria);
                //pegando item compra
                MItensCompra iten = new MItensCompra(itemCompraCod, itemCompraQuant, itemCompraValor, itensCompra_codigoBarra, itensCompra_vencimento, prod);
                //Adicionando a lista

                Compra.Itens[dgvProduto.CurrentCell.RowIndex] = frmCadastroProduto.ListarProduto(iten);

                //Analisando se o usuário não fechou a tela e consequentemente retornou um produto vazio
                if (Compra.Itens[dgvProduto.CurrentCell.RowIndex] != null)
                {
                    CarregarGrid();
                }
                else //Caso tenha retornado vazio, será atribido o valor que já estava salvo
                {
                    Compra.Itens[dgvProduto.CurrentCell.RowIndex] = iten;
                    CarregarGrid();
                }
            }
            catch (Exception erro)
            {
                MessageBox.Show(erro.Message, "OK");
            }
        }
예제 #6
0
        public static void Alterar(MProduto modelo)
        {
            try
            {
                using (var conn = ConexaoBD.AbrirConexao()) //Passando string de conexão
                {
                    conn.Open();                            //Abrindo conexao
                    using (var comm = conn.CreateCommand()) //CRiando comando SQL
                    {
                        if (modelo.CodigoSubcategoria != 0)
                        {
                            comm.CommandText = "update produto set produto_nome = @nome, produto_descricao = @descricao, "
                                               + " produto_valorvenda = @valorvenda, produto_qtde = @qtde, produto_status = @status, "
                                               + "uniMedida_cod = @uniMedida_cod, categoria_cod = @categoria_cod, subCategoria_cod = @subCategoria_cod where produto_cod = @codigo";

                            comm.Parameters.Add(new SqlParameter("@subCategoria_cod", modelo.CodigoSubcategoria));
                        }
                        else
                        {
                            comm.CommandText = "update produto set produto_nome = @nome, produto_descricao = @descricao, "
                                               + " produto_valorvenda = @valorvenda, produto_qtde = @qtde, produto_status = @status, "
                                               + "uniMedida_cod = @uniMedida_cod, categoria_cod = @categoria_cod, subCategoria_cod = null where produto_cod = @codigo";
                        }

                        //Passando valores
                        comm.Parameters.Add(new SqlParameter("@nome", modelo.NomeProduto));
                        comm.Parameters.Add(new SqlParameter("@descricao", modelo.DescricaoProduto));
                        comm.Parameters.Add(new SqlParameter("@valorvenda", Math.Round(modelo.ValorVendaProduto, 2)));
                        comm.Parameters.Add(new SqlParameter("@uniMedida_cod", modelo.CodigoUnidadeMedida));
                        comm.Parameters.Add(new SqlParameter("@categoria_cod", modelo.CodigoCategoria));
                        comm.Parameters.Add(new SqlParameter("@qtde", modelo.QuantProduto));
                        comm.Parameters.Add(new SqlParameter("@status", modelo.StatusProduto));
                        comm.Parameters.Add(new SqlParameter("@codigo", modelo.CodigoProduto));
                        //Executando comando

                        comm.ExecuteNonQuery();
                    }
                }
            }
            catch (Exception erro)
            {
                throw new Exception(erro.Message);
            }
        }
예제 #7
0
        public static void Incluir(MProduto modelo)
        {
            try
            {
                using (var conn = ConexaoBD.AbrirConexao()) //Passando a string de conexão
                {
                    conn.Open();                            //Abrindo a conexão
                    using (var comm = conn.CreateCommand()) //Criando o comando SQL
                    {
                        //Analisando se vai ter uma subcategoria
                        if (modelo.CodigoSubcategoria != 0)
                        {
                            comm.CommandText = "INSERT INTO produto (produto_nome, produto_descricao, produto_valorvenda, produto_qtde, produto_status, uniMedida_cod, categoria_cod, subCategoria_cod) " +
                                               "VALUES (@nome, @desc, @venda, @quant, @status, @unidade, @categoria, @subcategoria)";

                            comm.Parameters.Add(new SqlParameter("@subcategoria", modelo.CodigoSubcategoria));
                        }
                        else
                        {
                            comm.CommandText = "INSERT INTO produto (produto_nome, produto_descricao, produto_valorvenda, produto_qtde, produto_status, uniMedida_cod, categoria_cod) " +
                                               "VALUES (@nome, @desc, @venda, @quant, @status, @unidade, @categoria)";
                        }

                        //Passando valores por parametro
                        comm.Parameters.Add(new SqlParameter("@nome", modelo.NomeProduto));
                        comm.Parameters.Add(new SqlParameter("@desc", modelo.DescricaoProduto));
                        comm.Parameters.Add(new SqlParameter("@venda", modelo.ValorVendaProduto));
                        comm.Parameters.Add(new SqlParameter("@quant", modelo.QuantProduto));
                        comm.Parameters.Add(new SqlParameter("@status", modelo.StatusProduto));
                        comm.Parameters.Add(new SqlParameter("@unidade", modelo.CodigoUnidadeMedida));
                        comm.Parameters.Add(new SqlParameter("@categoria", modelo.CodigoCategoria));
                        //Executando o comando
                        comm.ExecuteNonQuery();
                    }
                }
            }
            catch (Exception erro)
            {
                throw new Exception(erro.Message);
            }
        }
        //Evenoto click salvar
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            if (btnSalvar.Text == "Salvar")
            {
                if (txtNotaFiscal.Text == "" || cbxQuantParcela.Text == "" || cbxStatus.Text == "" || cbxFornecedor.Text == "" || cbxTipoPagamento.Text == "") //Analisando se foi preenchido todos os dados
                {
                    MessageBox.Show("Preencha todos os dados!");
                }
                else if (DateTime.Today > dtpDataCompra.Value.Date) //Analisando se a data informada é maior ou igual a hora atual
                {
                    MessageBox.Show("A Data da compra não pode ser menor que a data atual!");
                }
                else if (dgvProduto.RowCount == 0) //Analisando se foi informado algum produto
                {
                    MessageBox.Show("Adicione os produtos!", "OK");
                }
                else
                {
                    try
                    {
                        //Passando os dados da compra
                        Compra.CompraData       = dtpDataCompra.Value.Date;
                        Compra.CompraNotaFiscal = txtNotaFiscal.Text;
                        Compra.CompraValor      = double.Parse(txtValor.Text);
                        Compra.CompraParcelas   = int.Parse(cbxQuantParcela.Text);
                        Compra.CompraStatus     = cbxStatus.Text;
                        Compra.FornecedorCod    = (int)cbxFornecedor.SelectedValue;
                        Compra.TipoPagCod       = (int)cbxTipoPagamento.SelectedValue;
                        //Salnvando a compra
                        BLLCompra.Incluir(Compra);
                        //Pegando o id da compra salva
                        Compra.CompraCod = int.Parse(DALCompra.PegarId());
                        //Criando um variavel para salvar a data da nova prestação
                        DateTime ProximaPrestação = dtpDataCompra.Value.Date;
                        //Criando e salvando as parcelas
                        for (int i = 0; i < Compra.CompraParcelas; i++)
                        {
                            Compra.Parcelas.Add(new MParcelasCompra(double.Parse(txtValorParcela.Text), ProximaPrestação.AddMonths(i + 1), Compra.CompraCod)); //Instanciando a parcela

                            //Salvando as Parcelas
                            BLLParcelasCompras.Incluir(Compra.Parcelas[i]);
                        }

                        //Salvando os Produtos e consequentemente o item
                        foreach (var item in Compra.Itens)
                        {
                            //Verificar se o produto não já existe, caso sim só será associado ao item compra
                            if (item.Produto.CodigoProduto == 0)
                            {
                                //Analisando  se a compra foi finalizada, pois caso seja o valor do produto será incrementado
                                if (cbxStatus.Text != "FINALIZADA")
                                {
                                    item.Produto.QuantProduto = 0;

                                    //Colando ele fora de Estoque, pois a compra não foi finalizada
                                    item.Produto.StatusProduto = "FORA DE ESTOQUE";
                                }

                                //Chamando o metodo Incluir um produto
                                BLLProduto.Incluir(item.Produto);
                            }
                            else //Significa que o produto já existe
                            {
                                var tabela = DALProduto.PegarDados(item.Produto.CodigoProduto); //Pegando os dados do produto já existente
                                //Passando os dados para as variáveis
                                int    cod    = int.Parse(tabela.Rows[0]["produto_cod"].ToString());
                                string nome   = tabela.Rows[0]["produto_nome"].ToString();
                                string desc   = item.Produto.DescricaoProduto;
                                double valor  = item.Produto.ValorVendaProduto;
                                double quant  = double.Parse(tabela.Rows[0]["produto_qtde"].ToString());
                                string status = item.Produto.StatusProduto;
                                int    codUni = item.Produto.CodigoUnidadeMedida;
                                int    codCat = item.Produto.CodigoCategoria;
                                int    codSub = 0;
                                //Analisado se tem subcategoria
                                if (tabela.Rows[0]["subCategoria_cod"].ToString() != "")
                                {
                                    codSub = int.Parse(tabela.Rows[0]["subCategoria_cod"].ToString());
                                }

                                //Analisando  se a compra foi finalizada, pois caso seja o valor do produto será incrementado
                                if (cbxStatus.Text == "FINALIZADA")
                                {
                                    quant = quant + item.ItemCompraQuant;
                                }
                                else if (quant == 1) //Analizando se ainda tem produto em estoque, caso não ele terá seu status mudado
                                {
                                    //Colando ele fora de Estoque, pois a compra não foi finalizada
                                    item.Produto.StatusProduto = "FORA DE ESTOQUE";
                                }

                                //Instanciando o obj produto
                                MProduto prodExiste = new MProduto(nome, desc, valor, quant, status, codUni, codCat, codSub);
                                prodExiste.CodigoProduto = cod; //Pegando o id
                                //Passando o id do produto
                                item.Produto.CodigoProduto = cod;
                                //Atualizando as informações
                                BLLProduto.Alterar(prodExiste);
                            }

                            //Passando o id da compra
                            item.CompraCodigo = Compra.CompraCod;
                            //Salvando o produto na lista item
                            BLLItensCompra.Incluir(item);
                        }
                        MessageBox.Show("Compra Salva Com Sucesso!");
                        dgvCompra.DataSource = DALCompra.CarregarGrid();
                        //Limpando os campos
                        txtNotaFiscal.Clear();
                        txtValor.Clear();
                        txtValorParcela.Clear();
                        txtValor.Clear();
                        cbxQuantParcela.SelectedIndex  = -1;
                        cbxStatus.SelectedIndex        = -1;
                        cbxFornecedor.SelectedIndex    = -1;
                        cbxTipoPagamento.SelectedIndex = -1;
                        dtpDataCompra.Value            = DateTime.Today;
                        Compra.Itens.Clear(); //Limpando os produtos
                        CarregarGrid();
                    }
                    catch (SqlException erro)
                    {
                        MessageBox.Show(erro.Message, "OK");
                        //Apagando tudo caso haja um erro
                        DALCompra.Excluir(int.Parse(DALCompra.PegarId()));
                    }
                    catch (Exception erro)
                    {
                        MessageBox.Show(erro.Message, "OK");
                        //Apagando tudo caso haja um erro
                        DALCompra.Excluir(int.Parse(DALCompra.PegarId()));
                    }
                }
            }
            else
            {
                if (txtNotaFiscal.Text == "" || cbxQuantParcela.Text == "" || cbxStatus.Text == "" || cbxFornecedor.Text == "" || cbxTipoPagamento.Text == "") //Analisando se foi preenchido todos os dados
                {
                    MessageBox.Show("Preencha todos os dados!");
                }
                else if (DateTime.Today > dtpDataCompra.Value.Date) //Analisando se a data informada é maior ou igual a hora atual
                {
                    MessageBox.Show("A Data da compra não pode ser menor que a data atual!");
                }
                else if (dgvProduto.RowCount == 0) //Analisando se foi informado algum produto
                {
                    MessageBox.Show("Adicione os produtos!", "OK");
                }
                else
                {
                    try
                    {
                        //if Compra.Itens.
                        //Passando os dados da compra
                        Compra.CompraCod        = int.Parse(txtCodigo.Text);
                        Compra.CompraData       = dtpDataCompra.Value.Date;
                        Compra.CompraNotaFiscal = txtNotaFiscal.Text;
                        Compra.CompraValor      = double.Parse(txtValor.Text);
                        Compra.CompraParcelas   = int.Parse(cbxQuantParcela.Text);
                        Compra.CompraStatus     = cbxStatus.Text;
                        Compra.FornecedorCod    = (int)cbxFornecedor.SelectedValue;
                        Compra.TipoPagCod       = (int)cbxTipoPagamento.SelectedValue;
                        //Salnvando a compra
                        BLLCompra.Alterar(Compra);

                        MParcelasCompra parcelas = new MParcelasCompra();
                        parcelas.CompraCodigo = Compra.CompraCod;
                        //Excluindo parcelas salvas
                        BLLParcelasCompras.Excluir(parcelas);

                        //Criando um variavel para salvar a data da nova prestação
                        DateTime ProximaPrestação = dtpDataCompra.Value.Date;
                        //Criando e salvando as parcelas



                        for (int i = 0; i < int.Parse(cbxQuantParcela.Text); i++)
                        {
                            Compra.Parcelas.Add(new MParcelasCompra(double.Parse(txtValorParcela.Text), ProximaPrestação.AddMonths(i), Compra.CompraCod)); //Instanciando a parcela

                            //Salvando as Parcelas
                            BLLParcelasCompras.Incluir(Compra.Parcelas[i]);
                        }

                        //excluindo os itens da lista de excluidos
                        foreach (var lista in ListaItensExcluidos)
                        {
                            //int teste = int.Parse(dgvProduto.CurrentRow.Cells[6].Value.ToString());
                            //BLLProduto.Alterar(int.Parse(dgvProduto.CurrentRow.Cells[6].Value.ToString()));
                            BLLItensCompra.Excluir(lista);
                        }
                        foreach (var lista in ListaProdutosExcluidos)
                        {
                            BLLProduto.Alterar(lista);
                        }

                        //Salvando os Produtos e consequentemente o item
                        foreach (var item in Compra.Itens)
                        {
                            //Analisando  se a compra foi finalizada, pois caso seja o valor do produto será incrementado
                            if (cbxStatus.Text != "FINALIZADA")
                            {
                                item.Produto.QuantProduto = 0;
                            }
                            else
                            {
                                item.Produto.QuantProduto = item.ItemCompraQuant;
                            }
                            if (item.Produto.QuantProduto == 0)
                            {
                                item.Produto.StatusProduto = "FORA DE ESTOQUE";
                            }

                            //Chamando o metodo Alterar um produto
                            BLLProduto.Alterar(item.Produto);


                            //Passando o id da compra
                            item.CompraCodigo = int.Parse(txtCodigo.Text);


                            //Salvando o produto na lista item
                            BLLItensCompra.Alterar(item);
                            //Salva o produto caso durante a alteração tenha sido criado o novo produto
                            if (item.Produto.CodigoProduto == 0)
                            {
                                //Analisando  se a compra foi finalizada, pois caso seja o valor do produto será incrementado
                                if (cbxStatus.Text != "FINALIZADA")
                                {
                                    item.Produto.QuantProduto = 0;


                                    //Colando ele fora de Estoque, pois a compra não foi finalizada
                                    item.Produto.StatusProduto = "FORA DE ESTOQUE";
                                }

                                //Chamando o metodo Incluir um produto
                                BLLProduto.Incluir(item.Produto);
                                //Passando o id da compra
                                item.CompraCodigo = Compra.CompraCod;
                                //Salvando o produto na lista item
                                BLLItensCompra.Incluir(item);
                            }
                            else
                            {
                                bool verificaexistencia = true;
                                foreach (var itensanterior in CompraAnterior.Itens)
                                {
                                    if (itensanterior.ItemCompraCodigo == item.ItemCompraCodigo)
                                    {
                                        verificaexistencia = true;
                                        break;
                                    }
                                    else
                                    {
                                        verificaexistencia = false;
                                    }
                                }
                                if (verificaexistencia == false)
                                {
                                    if (cbxStatus.Text != "FINALIZADA")
                                    {
                                        item.Produto.QuantProduto = 0;


                                        //Colando ele fora de Estoque, pois a compra não foi finalizada
                                        item.Produto.StatusProduto = "FORA DE ESTOQUE";
                                    }

                                    //Chamando o metodo Incluir um produto
                                    BLLProduto.Incluir(item.Produto);
                                    //Passando o id da compra
                                    item.CompraCodigo = Compra.CompraCod;
                                    //Salvando o produto na lista item
                                    BLLItensCompra.Incluir(item);
                                }
                            }
                        }
                        MessageBox.Show("Compra Salva Com Sucesso!");
                        dgvCompra.DataSource = DALCompra.CarregarGrid();
                        //Limpando os campos
                        txtNotaFiscal.Clear();
                        txtValor.Clear();
                        txtValorParcela.Clear();
                        txtValor.Clear();
                        cbxQuantParcela.SelectedIndex  = -1;
                        cbxStatus.SelectedIndex        = -1;
                        cbxFornecedor.SelectedIndex    = -1;
                        cbxTipoPagamento.SelectedIndex = -1;
                        dtpDataCompra.Value            = DateTime.Today;
                        Compra.Itens.Clear(); //Limpando os produtos
                        CarregarGrid();
                        //alterando botões
                        btnSalvar.Text              = "Salvar";
                        btnExcluir.Enabled          = true;
                        btnExcluirProduto.Enabled   = true;
                        btnAdicionarProduto.Enabled = true;
                        //limpando lista
                        ListaProdutosExcluidos.Clear();
                        ListaItensExcluidos.Clear();
                        Compra.Parcelas.Clear();
                    }
                    catch (SqlException erro)
                    {
                        MessageBox.Show(erro.Message, "OK");
                        //Apagando tudo caso haja um erro
                        DALCompra.Excluir(int.Parse(DALCompra.PegarId()));
                    }
                    catch (Exception erro)
                    {
                        MessageBox.Show(erro.Message, "OK");
                        //Apagando tudo caso haja um erro
                        DALCompra.Excluir(int.Parse(DALCompra.PegarId()));
                    }
                }
            }
        }
예제 #9
0
        public static List <MItensCompra> CarregaListaProdutos(int compra)
        {
            try
            {
                using (var conn = ConexaoBD.AbrirConexao())//Passando string de conexão
                {
                    conn.Open();
                    using (var comm = conn.CreateCommand())//Criando comando SQL
                    {
                        comm.CommandText = "select prod.*, iten.* from produto as prod " +
                                           "inner join itenscompra as iten on prod.produto_cod = iten.produto_cod " +
                                           "inner join compra as com on com.compra_cod = iten.compra_cod " +
                                           "where iten.compra_cod = @idCompra";
                        comm.Parameters.Add(new SqlParameter("@idCompra", compra)); //passando os valores por paremetro

                        var reader = comm.ExecuteReader();                          //Passando Comando
                        var table  = new DataTable();                               //Passando a tabela

                        List <MItensCompra> produtos = new List <MItensCompra>();

                        //foreach (DataRow dataRow in table.Rows)
                        while (reader.Read())
                        {
                            string ProdNome       = reader["produto_nome"].ToString();
                            int    ProdCodigo     = int.Parse(reader["produto_cod"].ToString());
                            string ProdDesc       = reader["produto_descricao"].ToString();
                            double ProdValorVenda = double.Parse(reader["produto_valorvenda"].ToString());
                            int    ProdQtd        = int.Parse(reader["produto_qtde"].ToString());
                            int    ProdUnd        = int.Parse(reader["uniMedida_cod"].ToString());
                            int    ProdCategoria  = int.Parse(reader["categoria_cod"].ToString());
                            string statusProduto  = reader["produto_status"].ToString();
                            //item compra
                            int      itemCompraCodigo         = int.Parse(reader["itensCompra_cod"].ToString());
                            double   itemCompraQuant          = double.Parse(reader["itensCompra_qtde"].ToString());
                            double   itemCompraValor          = double.Parse(reader["itensCompra_valor"].ToString());
                            string   itemCompraCodBarra       = reader["itensCompra_CodigoBarra"].ToString();
                            DateTime itemCompraDataVencimento = Convert.ToDateTime(reader["itensCompra_vencimento"].ToString());


                            if (!(reader["subCategoria_cod"] is DBNull)) //caso não haja um subcategoria
                            {
                                int ProdSubCategoria = int.Parse(reader["subCategoria_cod"].ToString());

                                MProduto     prod  = new MProduto(ProdCodigo, ProdNome, ProdDesc, ProdValorVenda, ProdQtd, statusProduto, ProdUnd, ProdCategoria, ProdSubCategoria);
                                MItensCompra itens = new MItensCompra(itemCompraCodigo, itemCompraQuant, itemCompraValor, itemCompraCodBarra, itemCompraDataVencimento, prod);
                                produtos.Add(itens);
                            }
                            else
                            {
                                MProduto     prod  = new MProduto(ProdCodigo, ProdNome, ProdDesc, ProdValorVenda, ProdQtd, statusProduto, ProdUnd, ProdCategoria);
                                MItensCompra itens = new MItensCompra(itemCompraCodigo, itemCompraQuant, itemCompraValor, itemCompraCodBarra, itemCompraDataVencimento, prod);
                                produtos.Add(itens);
                            }
                        }

                        return(produtos);
                    }
                }
            }
            catch (Exception erro)
            {
                throw new Exception(erro.Message);
            }
        }