コード例 #1
0
        public void Atualizar(Composicao p)
        {
            try
            {
                AbrirConexao();
                strSQL = "update [COMPOSICAO] set [CD_SITUACAO] = @v2, [CD_TIPO] = @v3 " +
                         ", [VL_CUSTO_PRODUTO] = @v4, [VL_RENDIMENTO] = @v5 , [VL_PCT_UMIDADE] = @v6, [VL_PCT_QUEBRA] = @v7, [TX_OBS] = @v8, [DT_ATUALIZACAO] = getdate() " +
                         " Where [CD_COMPOSTO] = @v1";
                Cmd = new SqlCommand(strSQL, Con);

                Cmd.Parameters.AddWithValue("@v1", p.CodigoProdutoComposto);
                Cmd.Parameters.AddWithValue("@v2", p.CodigoSituacao);
                Cmd.Parameters.AddWithValue("@v3", p.CodigoTipo);
                Cmd.Parameters.AddWithValue("@v4", p.ValorCustoProduto);
                Cmd.Parameters.AddWithValue("@v5", p.Rendimento);
                Cmd.Parameters.AddWithValue("@v6", p.PercentualUmidade);
                Cmd.Parameters.AddWithValue("@v7", p.PercentualQuebra);
                Cmd.Parameters.AddWithValue("@v8", p.Observacao);
                Cmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                throw new Exception("Erro ao atualizar Bairro: " + ex.Message.ToString());
            }
            finally
            {
                FecharConexao();
            }
        }
コード例 #2
0
 private void btnConcluir_Click(object sender, EventArgs e)
 {
     try
     {
         if (cmbComposicao.Text == "")
         {
             DialogResult dialogResult = MessageBox.Show("Produto não Preenchido!", "Confirmação", MessageBoxButtons.OK);
         }
         else
         {
             Composicao c = new Composicao();
             c.IdProduto = ((Produto)cmbComposicao.SelectedItem).Id;
             c.VerificarVenda();
             if (c.CustoVenda != 0)
             {
                 cmbComposicao.Enabled = true;
                 c.Lucro = Double.Parse(lblLucro.Text.Replace(".", ","));
                 c.GravarLucro();
                 txtValorVenda.Text      = "";
                 txtValorVenda.Enabled   = false;
                 btnInserirVenda.Enabled = false;
                 MessageBox.Show("Produto para selecionar Desbloqueado!", "Confirmação", MessageBoxButtons.OK);
             }
             else
             {
                 MessageBox.Show("Valor de VENDA Não inserido! Favor adicionar!", "Confirmação", MessageBoxButtons.OK);
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
コード例 #3
0
        private void btnInserirVenda_Click(object sender, EventArgs e)
        {
            try
            {
                if (cmbComposicao.Text == "")
                {
                    DialogResult dialogResult = MessageBox.Show("Produto não Preenchido!", "Confirmação", MessageBoxButtons.OK);
                }
                else
                {
                    Composicao c = new Composicao();
                    c.CustoVenda = Double.Parse(txtValorVenda.Text.Replace(".", ","));
                    c.IdProduto  = ((Produto)cmbComposicao.SelectedItem).Id;

                    c.GravarVenda();

                    MessageBox.Show("Valor de VENDA Incluido!", "Confirmação", MessageBoxButtons.OK);
                    CarregarItens();

                    c.Lucro = Double.Parse(lblLucro.Text.Replace(".", ","));
                    c.GravarLucro();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
コード例 #4
0
 private void btnSair_Click(object sender, EventArgs e)
 {
     try
     {
         Composicao c = new Composicao();
         if (cmbComposicao.SelectedIndex != -1)
         {
             c.IdProduto = ((Produto)cmbComposicao.SelectedItem).Id;
             c.VerificarVenda();
             if (c.CustoVenda != 0)
             {
                 btnInserirVenda.Enabled = false;
                 txtValorVenda.Enabled   = false;
                 c.Lucro = Double.Parse(lblLucro.Text.Replace(".", ","));
                 c.GravarLucro();
                 this.Close();
             }
             else
             {
                 MessageBox.Show("Valor de VENDA Não inserido! Favor adicionar!", "Confirmação", MessageBoxButtons.OK);
             }
         }
         else
         {
             this.Close();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
コード例 #5
0
        private void grdDados_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
        {
            try
            {
                if (e.KeyCode == Keys.Delete)
                {
                    if (MessageBox.Show("Deseja excluir esse Item?", "Excluir", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        var obj = (ComposicaoItem)grdDados.CurrentRow.DataBoundItem;

                        obj.Excluir();

                        CarregarItens();

                        Composicao com = new Composicao();
                        com.CustoTotal = Double.Parse(lblCustoTotalProduto.Text.Replace(".", ","));
                        com.IdProduto  = ((Produto)cmbComposicao.SelectedItem).Id;
                        com.GravarCusto();

                        com.Lucro = Double.Parse(lblLucro.Text.Replace(".", ","));
                        com.GravarLucro();

                        MessageBox.Show("Item excluído com sucesso!", "Produto", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
コード例 #6
0
        private void btnInserir_Click(object sender, EventArgs e)
        {
            try
            {
                if (cmbProduto.Text != "" && cmbComposicao.Text != "")
                {
                    var item = new ComposicaoItem();

                    item.IdProduto  = ((Produto)cmbProduto.SelectedItem).Id;
                    item.Quantidade = Convert.ToDouble(txtQuantidade.Text);

                    var composicao = Composicao.BuscarTodos().Where(c => c.IdProduto == ((Produto)cmbComposicao.SelectedItem).Id).FirstOrDefault();

                    if (composicao != null && composicao.Id > 0)
                    {
                        item.IdComposicao = composicao.Id;
                    }
                    else
                    {
                        var compInserir = new Composicao();

                        compInserir.IdProduto = ((Produto)cmbComposicao.SelectedItem).Id;
                        compInserir.Inserir();

                        composicao = Composicao.BuscarTodos().Where(c => c.IdProduto == ((Produto)cmbComposicao.SelectedItem).Id).FirstOrDefault();

                        item.IdComposicao = composicao.Id;
                    }

                    item.Inserir();

                    MessageBox.Show("Item inserido com sucesso!", "Item", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    LimparCampos();

                    CarregarItens();

                    Composicao com = new Composicao();
                    com.CustoTotal = Double.Parse(lblCustoTotalProduto.Text.Replace(".", ","));
                    com.IdProduto  = ((Produto)cmbComposicao.SelectedItem).Id;
                    com.GravarCusto();


                    com.Lucro = Double.Parse(lblLucro.Text.Replace(".", ","));
                    com.GravarLucro();

                    btnInserirVenda.Enabled = true;
                    txtValorVenda.Enabled   = true;
                }
                else
                {
                    DialogResult dialogResult = MessageBox.Show("Produto ou Matéria-Prima não Preenchidos!", "Confirmação", MessageBoxButtons.OK);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
コード例 #7
0
 private void cmbComposicao_SelectedValueChanged(object sender, EventArgs e)
 {
     if (cmbComposicao.SelectedIndex != -1)
     {
         cmbComposicao.Enabled = false;
         var composicao = Composicao.BuscarTodos().Where(c => c.IdProduto == ((Produto)cmbComposicao.SelectedItem).Id).FirstOrDefault();
         if (Verificacao == "Ok")
         {
             CarregarItens();
         }
     }
 }
コード例 #8
0
        void CarregarItens()
        {
            grdDados.AutoGenerateColumns = false;
            grdDados.DataSource          = null;

            var composicao = Composicao.BuscarTodos().Where(c => c.IdProduto == ((Produto)cmbComposicao.SelectedItem).Id).FirstOrDefault();
            var produto    = Produto.BuscarTodos().Where(f => f.Id == ((Produto)cmbComposicao.SelectedItem).Id).FirstOrDefault();

            lblCustoTotal.Text        = $"Custo Total: R$";
            lblCustoTotalProduto.Text = $"0,00";
            lblCustoProduto.Text      = $"Custo de Mercado: R$ 0,00";
            lblEconomia.Text          = $"Economia: R$ 0,00";

            lblPrecoVenda.Text = $"Preço de Venda: R$ 0,00";
            lblLucroTotal.Text = $"Lucro: R$";
            lblLucro.Text      = $"0,00";

            if (composicao != null)
            {
                var lst = ComposicaoItem.BuscarTodos().Where(i => i.IdComposicao == composicao.Id).ToList();

                var custo = lst.Sum(i => i.Custo);

                lblCustoTotal.Text        = $"Custo Total: R$";
                lblCustoTotalProduto.Text = custo.ToString("N2");

                double custovalor   = custo;
                var    lst2         = Produto.BuscarTodos().Where(i => i.Id == produto.Id).ToList();
                var    custoProduto = produto.PrecoCompra;
                lblCustoProduto.Text = $"Custo de Mercado: R$ {custoProduto.ToString("N2")}";

                var economia = custoProduto - custo;
                lblEconomia.Text = $"Economia: R$ {economia.ToString("N2")}";

                Composicao c = new Composicao();
                c.IdProduto = ((Produto)cmbComposicao.SelectedItem).Id;
                c.VerificarVenda();

                var precoVenda = c.CustoVenda;
                lblPrecoVenda.Text = $"Preço de Venda: R$ {precoVenda.ToString("N2") }";


                var lucro = economia + (precoVenda - custoProduto);
                lblLucroTotal.Text = $"Lucro: R$";
                lblLucro.Text      = lucro.ToString("N2");

                grdDados.DataSource = lst;
            }

            grdDados.Show();
        }
コード例 #9
0
        public void Inserir(Composicao p)
        {
            try
            {
                AbrirConexao();

                strSQL = "insert into [COMPOSICAO] (CD_COMPOSTO, CD_SITUACAO, CD_TIPO, VL_CUSTO_PRODUTO, VL_RENDIMENTO, VL_PCT_UMIDADE, VL_PCT_QUEBRA, TX_OBS, DT_ATUALIZACAO) " +
                         "values (@v1, @v2, @v3, @v4, @v5, @v6, @v7, @v8, getdate())";
                Cmd = new SqlCommand(strSQL, Con);
                Cmd.Parameters.AddWithValue("@v1", p.CodigoProdutoComposto);
                Cmd.Parameters.AddWithValue("@v2", p.CodigoSituacao);
                Cmd.Parameters.AddWithValue("@v3", p.CodigoTipo);
                Cmd.Parameters.AddWithValue("@v4", p.ValorCustoProduto);
                Cmd.Parameters.AddWithValue("@v5", p.Rendimento);
                Cmd.Parameters.AddWithValue("@v6", p.PercentualUmidade);
                Cmd.Parameters.AddWithValue("@v7", p.PercentualQuebra);
                Cmd.Parameters.AddWithValue("@v8", p.Observacao);

                Cmd.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                if (ex.Errors.Count > 0)                 // Assume the interesting stuff is in the first error
                {
                    switch (ex.Errors[0].Number)
                    {
                    case 2601:                             // Primary key violation
                        throw new DuplicateNameException("Inclusão não Permitida!!! Chave já consta no Banco de Dados. Mensagem :" + ex.Message.ToString(), ex);

                    case 2627:                             // Primary key violation
                        throw new DuplicateNameException("Inclusão não Permitida!!! Chave já consta no Banco de Dados. Mensagem :" + ex.Message.ToString(), ex);

                    default:
                        throw new Exception("Erro ao Incluir Bairro: " + ex.Message.ToString());
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception("Erro ao gravar Bairro: " + ex.Message.ToString());
            }
            finally
            {
                FecharConexao();
            }
        }
コード例 #10
0
        public Composicao PesquisarComposicao(int cod)
        {
            try
            {
                AbrirConexao();

                string strSQL = "select C.*, P.NM_PRODUTO from [Composicao] as c" +
                                " inner join produto as p" +
                                " on p.cd_produto = c.cd_composto" +
                                " where CD_COMPOSTO = " + cod;


                Dr = new SqlCommand(strSQL, Con).ExecuteReader();

                Composicao p = new Composicao();

                if (Dr.Read())
                {
                    p = new Composicao();

                    p.CodigoProdutoComposto = Convert.ToInt32(Dr["CD_COMPOSTO"]);
                    p.CodigoSituacao        = Convert.ToInt32(Dr["CD_SITUACAO"]);
                    p.CodigoTipo            = Convert.ToInt32(Dr["CD_TIPO"]);
                    p.ValorCustoProduto     = Convert.ToDecimal(Dr["VL_CUSTO_PRODUTO"]);
                    p.Rendimento            = Convert.ToDecimal(Dr["VL_RENDIMENTO"]);
                    p.PercentualUmidade     = Convert.ToDecimal(Dr["VL_PCT_UMIDADE"]);
                    p.PercentualQuebra      = Convert.ToDecimal(Dr["VL_PCT_QUEBRA"]);
                    p.Observacao            = Convert.ToString(Dr["TX_OBS"]);
                    p.Data             = Convert.ToDateTime(Dr["DT_ATUALIZACAO"]);
                    p.DescricaoProduto = Convert.ToString(Dr["NM_PRODUTO"]);
                }
                return(p);
            }
            catch (Exception ex)
            {
                throw new Exception("Erro ao Listar Composições: " + ex.Message.ToString());
            }
            finally
            {
                FecharConexao();
            }
        }
コード例 #11
0
        public List <Composicao> ListarComposicao(List <DBTabelaCampos> ListaFiltros)
        {
            try
            {
                AbrirConexao();

                string strValor = "";
                string strSQL   = "select * from VW_COMPOSICAO";

                strValor = MontaFiltroIntervalo(ListaFiltros);

                strSQL = strSQL + strValor;
                Cmd    = new SqlCommand(strSQL, Con);

                Dr = Cmd.ExecuteReader();

                List <Composicao> lista = new List <Composicao>();

                while (Dr.Read())
                {
                    Composicao p = new Composicao();

                    p.CodigoProdutoComposto = Convert.ToInt32(Dr["CD_COMPOSTO"]);
                    p.DescricaoProduto      = Convert.ToString(Dr["NM_COMPOSTO"]);
                    p.CodigoSituacao        = Convert.ToInt32(Dr["CD_SITUACAO"]);
                    p.DescricaoSituacao     = Convert.ToString(Dr["DS_SITUACAO"]);
                    p.DescricaoTipo         = Convert.ToString(Dr["DS_TIPO"]);
                    p.ValorCustoProduto     = Convert.ToDecimal(Dr["VL_CUSTO_PRODUTO"]);
                    p.Data = Convert.ToDateTime(Dr["DT_ATUALIZACAO"]);
                    lista.Add(p);
                }
                return(lista);
            }
            catch (Exception ex)
            {
                throw new Exception("Erro ao Listar Composições: " + ex.Message.ToString());
            }
            finally
            {
                FecharConexao();
            }
        }
コード例 #12
0
        public List <Composicao> PesquisarListaComposicao(string strDescricao)
        {
            try
            {
                AbrirConexao();

                strSQL = "select * from COMPOSICAO AS C " +
                         "INNER JOIN PRODUTO AS P " +
                         "ON C.CD_COMPOSTO = P.CD_PRODUTO " +
                         "INNER JOIN HABIL_TIPO AS H " +
                         "ON H.CD_TIPO = C.CD_SITUACAO " +
                         "where P.NM_PRODUTO like '%" + strDescricao + "%'";

                Cmd = new SqlCommand(strSQL, Con);

                Dr = Cmd.ExecuteReader();

                List <Composicao> lista = new List <Composicao>();

                while (Dr.Read())
                {
                    Composicao p = new Composicao();

                    p.CodigoProdutoComposto = Convert.ToInt32(Dr["CD_COMPOSTO"]);
                    p.DescricaoProduto      = Convert.ToString(Dr["NM_PRODUTO"]);
                    p.CodigoSituacao        = Convert.ToInt32(Dr["CD_SITUACAO"]);
                    p.DescricaoSituacao     = Convert.ToString(Dr["DS_TIPO"]);
                    p.ValorCustoProduto     = Convert.ToDecimal(Dr["VL_CUSTO_PRODUTO"]);
                    lista.Add(p);
                }
                return(lista);
            }
            catch (Exception ex)
            {
                throw new Exception("Erro ao Listar Composições: " + ex.Message.ToString());
            }
            finally
            {
                FecharConexao();
            }
        }
コード例 #13
0
        public void AtualizarObservacao(Composicao p)
        {
            try
            {
                AbrirConexao();
                strSQL = "update [COMPOSICAO] set [TX_OBS] = @v2 " +
                         " Where [CD_COMPOSTO] = @v1";
                Cmd = new SqlCommand(strSQL, Con);

                Cmd.Parameters.AddWithValue("@v1", p.CodigoProdutoComposto);
                Cmd.Parameters.AddWithValue("@v2", p.Observacao);
                Cmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                throw new Exception("Erro ao atualizar Bairro: " + ex.Message.ToString());
            }
            finally
            {
                FecharConexao();
            }
        }
コード例 #14
0
 public Composicao Atualizar(Composicao composicao)
 {
     return(_composicaoRepository.Atualizar(composicao));
 }
コード例 #15
0
 public Composicao Adicionar(Composicao composicao)
 {
     return(_composicaoRepository.Adicionar(composicao));
 }