public List <ModelRegistro> BuscaRegistroEntradaPedido(int codigo)
        {
            try
            {
                DataTable            dt    = daoPedido.BuscaRegistroEntradaPedido(codigo);
                List <ModelRegistro> lista = new List <ModelRegistro>();

                foreach (DataRow item in dt.Rows)
                {
                    ModelRegistro modelo = new ModelRegistro();

                    modelo.codProduto    = Convert.ToInt32(item["pro_cod"].ToString());
                    modelo.reg_cod       = Convert.ToInt32(item["reg_cod"].ToString());
                    modelo.descricao     = item["pro_descricao"].ToString();
                    modelo.quantidade    = Convert.ToDecimal(item["reg_quantidade"].ToString());
                    modelo.valorUnitario = Convert.ToDecimal(item["reg_valor_unitario"].ToString());
                    modelo.valorFrete    = Convert.ToDecimal(item["reg_valor_frete"].ToString());
                    modelo.valorTotal    = Convert.ToDecimal(item["reg_valor_total"].ToString());

                    lista.Add(modelo);
                }

                return(lista);
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro: " + ex, "Atenção!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return(null);
            }
        }
        public bool UpdateRecebimento(ModelRegistro modelo)
        {
            try
            {
                SQLiteCommand cmd = new SQLiteCommand();
                cmd.Connection  = conexao.ObjetoConexao;
                cmd.CommandText = "UPDATE registro_entrada SET reg_quantidade = @quantidade, reg_valor_unitario = @vlUnitario, reg_custo_medio = @custo, reg_saldo = @saldo, reg_valor_frete = @vlFrete, reg_valor_total = @vlTotal, reg_data_operacao = @dataOperacao, reg_status = @status WHERE reg_cod = @cod";
                cmd.Parameters.AddWithValue("@quantidade", modelo.quantidade);
                cmd.Parameters.AddWithValue("@vlUnitario", modelo.valorUnitario);
                cmd.Parameters.AddWithValue("@custo", modelo.custoMedio);
                cmd.Parameters.AddWithValue("@saldo", modelo.saldo);
                cmd.Parameters.AddWithValue("@vlFrete", modelo.valorFrete);
                cmd.Parameters.AddWithValue("@vlTotal", modelo.valorTotal);
                cmd.Parameters.AddWithValue("@dataOperacao", modelo.dataOperacao);
                cmd.Parameters.AddWithValue("@status", modelo.reg_status);
                cmd.Parameters.AddWithValue("@cod", modelo.reg_cod);

                conexao.Conectar();
                cmd.ExecuteNonQuery();

                return(true);
            }
            catch
            {
                return(false);
            }
            finally
            {
                conexao.Desconectar();
            }
        }
        private void AdicionaRegistroLista()
        {
            try
            {
                ModelRegistro registro = new ModelRegistro();

                registro.codProduto    = Convert.ToInt32(cbProduto.SelectedValue);
                registro.for_cod       = Convert.ToInt32(cbFornecedor.SelectedValue);
                registro.descricao     = cbProduto.Text;
                registro.quantidade    = Convert.ToDecimal(txtQuantidade.Text);
                registro.valorUnitario = valor;
                registro.valorFrete    = frete;
                registro.valorTotal    = total;
                registro.dataOperacao  = Convert.ToDateTime(txtDataPedido.Text);

                registro.reg_status = 0;

                if (VerificaListaTipo(Convert.ToInt32(cbProduto.SelectedValue)))
                {
                    listaRegistro.Add(registro);

                    PreencheGrid();
                }
                else
                {
                    MessageBox.Show("Tipo de produto ja foi selecionado!", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            catch
            {
                // MessageBox.Show("Erro ao adicionar fornecedor!");
            }
        }
        public bool InserirSaida(ModelRegistro modelo)
        {
            try
            {
                SQLiteCommand cmd = new SQLiteCommand();
                cmd.Connection  = conexao.ObjetoConexao;
                cmd.CommandText = "INSERT INTO registro_saida(pro_cod, tipo_cod, cat_cod, reg_quantidade, reg_valor_unitario, reg_valor_total, reg_data_operacao)" +
                                  "VALUES (@proCod, @tipoCod, @catCod, @quantidade, @vlUnitario, @vlTotal, @dtOperacao)";
                cmd.Parameters.AddWithValue("@proCod", modelo.codProduto);
                cmd.Parameters.AddWithValue("@tipoCod", modelo.tipo_cod);
                cmd.Parameters.AddWithValue("@catCod", modelo.cat_cod);
                cmd.Parameters.AddWithValue("@quantidade", modelo.quantidade);
                cmd.Parameters.AddWithValue("@vlUnitario", modelo.valorUnitario);
                cmd.Parameters.AddWithValue("@vlTotal", modelo.valorTotal);
                cmd.Parameters.AddWithValue("@dtOperacao", modelo.dataOperacao);

                conexao.Conectar();
                cmd.ExecuteNonQuery();

                return(true);
            }
            catch
            {
                return(false);
            }
            finally
            {
                conexao.Desconectar();
            }
        }
        public bool InserirEntrada(ModelRegistro modelo)
        {
            try
            {
                SQLiteCommand cmd = new SQLiteCommand();
                cmd.Connection  = conexao.ObjetoConexao;
                cmd.CommandText = "INSERT INTO registro_entrada(pro_cod, for_cod, reg_quantidade, reg_valor_unitario, reg_valor_frete, reg_valor_total, reg_status)" +
                                  "VALUES (@proCod, @forCod, @quantidade, @vlUnitario, @vlFrete, @vlTotal, @status)";
                cmd.Parameters.AddWithValue("@proCod", modelo.codProduto);
                cmd.Parameters.AddWithValue("@quantidade", modelo.quantidade);
                cmd.Parameters.AddWithValue("@vlUnitario", modelo.valorUnitario);
                cmd.Parameters.AddWithValue("@forCod", modelo.for_cod);
                cmd.Parameters.AddWithValue("@vlFrete", modelo.valorFrete);
                cmd.Parameters.AddWithValue("@vlTotal", modelo.valorTotal);
                cmd.Parameters.AddWithValue("@status", modelo.reg_status);

                conexao.Conectar();
                cmd.ExecuteNonQuery();

                return(true);
            }
            catch
            {
                return(false);
            }
            finally
            {
                conexao.Desconectar();
            }
        }
Exemple #6
0
        private void PreencheListaRegistro()
        {
            // 0 = entrada
            // 1 = saida
            ModelRegistro modeloRegistro = new ModelRegistro();

            modeloRegistro.Fk_carga      = Convert.ToInt32(txtPedido.Text);
            modeloRegistro.Id_produto    = Convert.ToInt32(txtCodProduto.Text);
            modeloRegistro.Dsc_produto   = txtNomeProduto.Text;
            modeloRegistro.qtd_produto   = Convert.ToDouble(txtQtdTotal.Text);
            modeloRegistro.data_operacao = Convert.ToDateTime(dateTimePicker1.Text).ToString("yyyy-MM-dd 00:00:00");
            modeloRegistro.tipo_operacao = 1;
            modeloRegistro.tipo_produto  = 3; //DEFINI TIPO PRODUTO 3
            modeloRegistro.pesoBruto     = pesoBruto * Convert.ToDouble(txtQtdTotal.Text);;
            modeloRegistro.pesoLiquido   = pesoLiquido * Convert.ToDouble(txtQtdTotal.Text);;
            //ADICONA OS LOTES DO PEDIDO PARA EXIBIR NO GRID
            foreach (var item in listaLote)
            {
                if (modeloRegistro.Id_produto == item.Fk_produto)
                {
                    modeloRegistro.lote += item.qtd_produto + "-" + item.lote + "/ ";
                }
            }

            listaRegistro.Add(modeloRegistro);
        }
Exemple #7
0
        private void QuantidadeLotes()
        {
            List <ModelRegistro> lista   = new List <ModelRegistro>();
            ControleProduto      produto = new ControleProduto();
            ControleEstoqueAtual estoque = new ControleEstoqueAtual();
            ModelRegistro        registro;
            var listaProduto = produto.BuscaString(txtPesquisa.Text, tipoProduto);

            foreach (DataRow item in listaProduto.Rows)
            {
                var fila = estoque.CalculaLotes(Convert.ToInt32(item["ID"].ToString()));

                foreach (var item2 in fila)
                {
                    registro = new ModelRegistro();

                    registro.Id_registro     = item2.Id_lote;
                    registro.Id_produto      = item2.Id_produto;
                    registro.Dsc_produto     = item["PRODUTO"].ToString();
                    registro.lote            = Convert.ToString(item2.lote + " - " + item2.restante);
                    registro.data_fabricacao = item2.data_fabricacao;
                    registro.data_vencimento = item2.data_vencimento;

                    lista.Add(registro);
                }
            }

            PreencheGrid(lista);
        }
        //INSERE NA TABELA COTACAO PRODUTO
        public bool InserirEntrada(ModelRegistro modelo)
        {
            try
            {
                SQLiteCommand cmd = new SQLiteCommand();
                cmd.Connection  = conexao.ObjetoConexao;
                cmd.CommandText = "INSERT INTO cotacao_produto(cot_cod, pro_cod, quantidade, valorUnitario)" +
                                  "VALUES (@cotCod, @proCod, @quantidade, @valorUnitario)";
                cmd.Parameters.AddWithValue("@cotCod", modelo.cat_cod); //usando outro atributo para atribuir o valor aqui
                cmd.Parameters.AddWithValue("@proCod", modelo.codProduto);
                cmd.Parameters.AddWithValue("@quantidade", modelo.quantidade);
                cmd.Parameters.AddWithValue("@valorUnitario", modelo.valorUnitario);

                conexao.Conectar();
                cmd.ExecuteNonQuery();

                return(true);
            }
            catch
            {
                return(false);
            }
            finally
            {
                conexao.Desconectar();
            }
        }
        //METODO DE INSERIR NO BANCO OS DADOS DO USUARIO
        public bool Inserir(ModelRegistro modelo)
        {
            try
            {
                SQLiteCommand cmd = new SQLiteCommand();
                cmd.Connection  = conexao.ObjetoConexao;
                cmd.CommandText = "INSERT INTO registro(Fk_produto, lote, qtd_produto, data_fabricacao, data_vencimento, data_operacao, tipo_operacao, tipo_produto, Fk_carga, marcacao, ajuste, observacao)" +
                                  "VALUES (@produto, @lote, @quantidade, @fabricacao, @vencimento, @operacao, @tipoOperacao, @tipoProduto, @carga, @marcacao, @ajuste, @observacao)";
                cmd.Parameters.AddWithValue("@produto", modelo.Id_produto);
                cmd.Parameters.AddWithValue("@lote", modelo.lote);
                cmd.Parameters.AddWithValue("@quantidade", modelo.qtd_produto);
                cmd.Parameters.AddWithValue("@fabricacao", modelo.data_fabricacao);
                cmd.Parameters.AddWithValue("@vencimento", modelo.data_vencimento);
                cmd.Parameters.AddWithValue("@operacao", modelo.data_operacao);
                cmd.Parameters.AddWithValue("@tipoOperacao", modelo.tipo_operacao);
                cmd.Parameters.AddWithValue("@tipoProduto", modelo.tipo_produto);
                cmd.Parameters.AddWithValue("@carga", modelo.Fk_carga);
                cmd.Parameters.AddWithValue("@marcacao", modelo.marcacao);
                cmd.Parameters.AddWithValue("@ajuste", modelo.ajuste);
                cmd.Parameters.AddWithValue("@observacao", modelo.observacao);

                conexao.Conectar();
                cmd.ExecuteNonQuery();

                return(true);
            }
            catch
            {
                return(false);
            }
            finally
            {
                conexao.Desconectar();
            }
        }
Exemple #10
0
        public bool Atualizar(List <ModelRegistro> lista)
        {
            ModelRegistro modelo;

            foreach (var item in lista)
            {
                modelo = new ModelRegistro();

                if (item.Id_registro > 0)
                {
                    modelo.Id_registro = item.Id_registro;
                }

                modelo.Id_produto      = item.Id_produto;
                modelo.lote            = item.lote;
                modelo.qtd_produto     = item.qtd_produto;
                modelo.data_fabricacao = item.data_fabricacao;
                modelo.data_vencimento = item.data_vencimento;
                modelo.data_operacao   = item.data_operacao;
                modelo.tipo_operacao   = item.tipo_operacao;
                modelo.tipo_produto    = item.tipo_produto;
                modelo.Fk_carga        = item.Fk_carga;
                modelo.marcacao        = item.marcacao;

                if (!dao.Atualizar(modelo))
                {
                    MessageBox.Show("Erro na inserção", "Operação Invalida!!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return(false);
                }
            }
            return(true);
        }
        //METODO DE ATUALIZAR NO BANCO OS DADOS DO USUARIO
        public bool Atualizar(ModelRegistro modelo)
        {
            try
            {
                SQLiteCommand cmd = new SQLiteCommand();
                cmd.Connection  = conexao.ObjetoConexao;
                cmd.CommandText = "UPDATE registro SET Fk_produto = @produto, lote = @lote, qtd_produto = @quantidade, data_fabricacao = @fabricacao, data_vencimento = @vencimento, data_operacao = @operacao, tipo_operacao = @tipoOperacao, tipo_produto = @tipoProduto, Fk_carga = @carga, marcacao = @marcacao, ajuste = @ajuste, observacao = @observacao WHERE Id_registro = @IdRegistro";
                cmd.Parameters.AddWithValue("@produto", modelo.Id_produto);
                cmd.Parameters.AddWithValue("@lote", modelo.lote);
                cmd.Parameters.AddWithValue("@quantidade", modelo.qtd_produto);
                cmd.Parameters.AddWithValue("@fabricacao", modelo.data_fabricacao);
                cmd.Parameters.AddWithValue("@vencimento", modelo.data_vencimento);
                cmd.Parameters.AddWithValue("@operacao", modelo.data_operacao);
                cmd.Parameters.AddWithValue("@tipoOperacao", modelo.tipo_operacao);
                cmd.Parameters.AddWithValue("@tipoProduto", modelo.tipo_produto);
                cmd.Parameters.AddWithValue("@carga", modelo.Fk_carga);
                cmd.Parameters.AddWithValue("@marcacao", modelo.marcacao);
                cmd.Parameters.AddWithValue("@ajuste", modelo.ajuste);
                cmd.Parameters.AddWithValue("@observacao", modelo.observacao);
                cmd.Parameters.AddWithValue("@IdRegistro", modelo.Id_registro);

                conexao.Conectar();
                cmd.ExecuteNonQuery();

                return(true);
            }
            catch
            {
                return(false);
            }
            finally
            {
                conexao.Desconectar();
            }
        }
Exemple #12
0
        private void CarregaInformacoes(int codigo)
        {
            try
            {
                ControlProduto prod = new ControlProduto();
                if (prod.VerificaProduto(codigo) != null)
                {
                    ControlRegistro control = new ControlRegistro();
                    PreencheCampos(Convert.ToInt32(codigo));

                    ModelRegistro aux = control.CustoMedio(codigo);

                    CarregaTipoProduto();
                    LabelInformacao();
                    labelSaldo.Text = "SALDO EM ESTOQUE " + String.Format("{0:N3}", aux.quantidade);
                    saldo           = aux.quantidade;
                    valor_unitario  = aux.custoMedio;
                }
                else
                {
                    MessageBox.Show("Produto não cadastrado!", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    txtCodProduto.Focus();
                    valor_unitario = 0;
                }
            }
            catch
            {
            }
        }
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                ModelPedido     pedido   = new ModelPedido();
                ModelRegistro   registro = new ModelRegistro();
                ControlRegistro control  = new ControlRegistro();
                ControlPedido   control2 = new ControlPedido();
                foreach (var item in listaRegistro)
                {
                    ModelRegistro aux;
                    //recebe valores do custo medio e saldo atual
                    aux               = control.CustoMedio2(item.codProduto, item.valorTotal, item.quantidade);
                    item.custoMedio   = aux.custoMedio;
                    item.saldo        = aux.quantidade;
                    item.dataOperacao = Convert.ToDateTime(dataOperacao.Text);
                    item.reg_status   = 1;
                }
                pedido.ped_cod          = Convert.ToInt32(txtCodPedido.Text);
                pedido.status           = 1;
                pedido.ped_data_entrega = Convert.ToDateTime(dataOperacao.Text);

                control2.UpdateRecebimento(pedido, listaRegistro);

                LimpaCampoProduto();
                LimpaFornecedor();
                gridProduto.DataSource = null;
                listaRegistro.Clear();
            }
            catch
            {
                MessageBox.Show("Preencha todos os campos", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
 private void PreencheCampoProduto(ModelRegistro modelo)
 {
     txtCodRegistro.Text   = modelo.reg_cod.ToString();
     txtProduto.Text       = modelo.descricao;
     txtQuantidade.Text    = modelo.quantidade.ToString();
     txtFrete.Text         = modelo.valorFrete.ToString();
     txtValorUnitario.Text = modelo.valorUnitario.ToString();
     txtValorTotal.Text    = modelo.valorTotal.ToString();
 }
Exemple #15
0
        public List <ModelRegistro> CalculaSaldo(string codigo, string descricao, string categotia)
        {
            try
            {
                ControlProduto controleProduto = new ControlProduto();
                //busa lista de produtos
                DataTable            tbProduto  = controleProduto.BuscaDados(codigo, descricao, categotia);
                List <ModelRegistro> listaItens = new List <ModelRegistro>()
                ;
                foreach (DataRow item in tbProduto.Rows)
                {
                    ModelRegistro modelo = new ModelRegistro();


                    modelo.codProduto = Convert.ToInt32(item["CODIGO"].ToString());
                    modelo.descricao  = item["DESCRIÇÃO"].ToString();
                    modelo.categoria  = item["CATEGORIA"].ToString();
                    if (item["QTD MINIMA"].ToString() != "")
                    {
                        modelo.estoque_minimo = Convert.ToDecimal(item["QTD MINIMA"].ToString());
                    }
                    else
                    {
                        modelo.estoque_minimo = 0;
                    }

                    if (item["QTD SEGURANÇA"].ToString() != "")
                    {
                        modelo.estoque_seguranca = Convert.ToDecimal(item["QTD SEGURANÇA"].ToString());
                    }
                    else
                    {
                        modelo.estoque_seguranca = 0;
                    }

                    modelo.unidade_medida = item["MEDIDA"].ToString();

                    ModelRegistro aux = CustoMedio(modelo.codProduto);

                    modelo.quantidade    = aux.quantidade;
                    modelo.valorUnitario = aux.custoMedio;
                    modelo.valorTotal    = Convert.ToDecimal(String.Format("{0:N3}", modelo.quantidade * modelo.valorUnitario));

                    listaItens.Add(modelo);
                }

                return(listaItens);
            }
            catch
            {
                return(null);
            }
        }
Exemple #16
0
 public bool InserirSaida(ModelRegistro modelo)
 {
     if (modelo.codProduto != 0 && modelo.quantidade != 0 && modelo.tipo_cod != 0 && modelo.cat_cod != 0)
     {
         dao.InserirSaida(modelo);
         return(true);
     }
     else
     {
         MessageBox.Show("Preencha todos os campos", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         return(false);
     }
 }
Exemple #17
0
        public ModelRegistro CustoMedio2(int cod_produto, decimal valor, decimal quantidade)
        {//metodo para calcular o custo medio para salvar junto com o registro de entrada
            try
            {
                Decimal       TotalEntrada      = 0;
                Decimal       TotalSaida        = 0;
                Decimal       QuantidadeEntrada = 0;
                Decimal       QuantidadeSaida   = 0;
                ModelRegistro registro          = new ModelRegistro();

                DataTable entrada = dao.LocalizarEntrada(cod_produto);
                DataTable saida   = dao.LocalizarSaida(cod_produto);

                foreach (DataRow item in entrada.Rows)
                {
                    TotalEntrada      += Convert.ToDecimal(item["reg_valor_total"].ToString());
                    QuantidadeEntrada += Convert.ToDecimal(item["reg_quantidade"].ToString());
                }

                foreach (DataRow item in saida.Rows)
                {
                    TotalSaida      += Convert.ToDecimal(item["reg_valor_total"].ToString());
                    QuantidadeSaida += Convert.ToDecimal(item["reg_quantidade"].ToString());
                }

                //recebe o novo valor e adiciona ao valor ja cadastrado
                TotalEntrada += valor;
                //recebe a nova quantidade
                QuantidadeEntrada += quantidade;

                Decimal saldo = Convert.ToDecimal(String.Format("{0:N3}", QuantidadeEntrada - QuantidadeSaida));

                if (QuantidadeEntrada == 0 && QuantidadeSaida == 0)
                {
                    QuantidadeEntrada = 1;
                }

                Decimal custo = (TotalEntrada - TotalSaida) / (QuantidadeEntrada - QuantidadeSaida);


                registro.quantidade = saldo;
                registro.custoMedio = Convert.ToDecimal(String.Format("{0:N3}", custo));

                return(registro);
            }
            catch
            {
                return(null);
            }
        }
Exemple #18
0
        public ModelRegistro CustoMedio(int cod_produto)
        {//metodo para calcular o custo medio individual de cada produto
            try
            {
                decimal       TotalEntrada      = 0;
                decimal       TotalSaida        = 0;
                decimal       QuantidadeEntrada = 0;
                decimal       QuantidadeSaida   = 0;
                ModelRegistro registro          = new ModelRegistro();

                DataTable entrada = dao.LocalizarEntrada(cod_produto);
                DataTable saida   = dao.LocalizarSaida(cod_produto);

                foreach (DataRow item in entrada.Rows)
                {
                    TotalEntrada      += Convert.ToDecimal(item["reg_valor_total"].ToString());
                    QuantidadeEntrada += Convert.ToDecimal(item["reg_quantidade"].ToString());
                }

                foreach (DataRow item in saida.Rows)
                {
                    TotalSaida      += Convert.ToDecimal(item["reg_valor_total"].ToString());
                    QuantidadeSaida += Convert.ToDecimal(item["reg_quantidade"].ToString());
                }

                decimal saldo = Convert.ToDecimal(String.Format("{0:N3}", QuantidadeEntrada - QuantidadeSaida));

                if (QuantidadeEntrada == 0 && QuantidadeSaida == 0)
                {
                    QuantidadeEntrada = 1;
                }

                if (saldo <= 0)
                {
                    QuantidadeEntrada = 1;
                }

                decimal custo = (TotalEntrada - TotalSaida) / (QuantidadeEntrada - QuantidadeSaida);


                registro.quantidade = saldo;
                registro.custoMedio = Convert.ToDecimal(String.Format("{0:N3}", custo));

                return(registro);
            }
            catch
            {
                return(null);
            }
        }
Exemple #19
0
 public void InserirEntrada(ModelRegistro modelo)
 {
     try
     {
         if (modelo.for_cod != 0 && modelo.codProduto != 0 && modelo.quantidade != 0 && modelo.valorUnitario != 0)
         {
             dao.InserirEntrada(modelo);
         }
         else
         {
             MessageBox.Show("Preencha todos os campos", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         }
     }
     catch
     {
     }
 }
        public static void VerificaEstoque(ModelRegistro registro)
        {
            try
            {
                decimal saldo_novo = registro.saldo - registro.quantidade;

                if (saldo_novo < registro.estoque_minimo)
                {
                    var indicador = dao.BuscaIndicador(registro.codProduto);
                    // indicador for = 0 email nao enviado
                    // indicador for = 1 email ja enviado

                    if (indicador == 2)
                    {
                        MessageBox.Show("O produto " + registro.descricao + " entro na zona de abastecimento\n" + "Estoque minimo: " + registro.estoque_minimo + "\nEstoque atual: " + saldo_novo, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                    {
                        MessageBox.Show("O produto " + registro.descricao + " entro na zona de abastecimento \n" + " Estoque minimo: " + registro.estoque_minimo + "\nEstoque atual: " + saldo_novo, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        ControlEmail.EnviaEmailEstoqueMinimo(registro);
                        dao.Update(registro.codProduto, 2);
                    }
                }
                else if (saldo_novo < registro.estoque_seguranca)
                {
                    var indicador = dao.BuscaIndicador(registro.codProduto);
                    // indicador for = 0 email nao enviado
                    // indicador for = 1 email ja enviado

                    if (indicador == 1)
                    {
                        MessageBox.Show("O produto " + registro.descricao + " entro na zona de segurança\n" + "Estoque de segurança: " + registro.estoque_minimo + "\nEstoque atual: " + saldo_novo, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                    {
                        MessageBox.Show("O produto " + registro.descricao + " entro na zona de segurança\n" + "Estoque segurança: " + registro.estoque_seguranca + "\nEstoque atual: " + saldo_novo, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        ControlEmail.EnviaEmailEstoqueSeguranca(registro);
                        dao.Update(registro.codProduto, 1);
                    }
                }
            }
            catch
            {
            }
        }
        private void frmBuscaEntradaFornecedor_Load(object sender, EventArgs e)
        {
            try
            {
                ControlRegistro control = new ControlRegistro();

                PreencheGrid(control.CalculaPercentual(codigo_fornecedor, codigo_produto, 2));

                LabelInformacao();

                labelDescricao.Text = "HISTORICO DO FORNECEDOR: " + descricao;
                ModelRegistro aux = control.CustoMedio(codigo_fornecedor);
                labelUltimoValor.Text = "ULTIMO PREÇO UNITARIO R$: " + Convert.ToString(gridListaEntrada.Rows[gridListaEntrada.Rows.Count - 1].Cells[2].Value);
            }
            catch
            {
            }
        }
        public bool Inserir(ModelPedido pedido, List <ModelRegistro> listaRegistro)
        {
            try
            {
                if (listaRegistro.Count > 0 && Convert.ToString(pedido.ped_data_pedido) != "" && Convert.ToString(pedido.ped_data_prevista) != "")
                {
                    //INSERE NA TABELA DE PEDIDO
                    daoPedido.Inserir(pedido);

                    //BUSCA ULTIMO ID DA TABELA PEDIDO
                    int ultimoId = daoPedido.BuscaUltimoId();

                    foreach (var item in listaRegistro)
                    {
                        var registro = new ModelRegistro();

                        registro.codProduto    = item.codProduto;
                        registro.for_cod       = item.for_cod;
                        registro.quantidade    = item.quantidade;
                        registro.valorFrete    = item.valorFrete;
                        registro.valorUnitario = item.valorUnitario;
                        registro.valorTotal    = item.valorTotal;
                        registro.dataOperacao  = item.dataOperacao;
                        registro.reg_status    = item.reg_status;

                        //INSERE NA TABELA REGISTRO
                        daoRegistro.InserirEntrada(registro);

                        daoPedido.InserirPedidoRegistro(ultimoId, BuscaUltimoIdRegistro());
                    }

                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch
            {
                return(false);
            }
        }
Exemple #23
0
        private void AdicionaLista()
        {
            ModelRegistro model = new ModelRegistro();

            try
            {
                model.Id_produto  = Convert.ToInt32(txtCodigoProduto.Text);
                model.Dsc_produto = txtNomeProduto.Text;
                model.qtd_produto = Convert.ToDouble(txtQuantidade.Text);
                model.pesoBruto   = Convert.ToDouble(string.Format("{0:N}", Convert.ToDouble(txtPesoBruto.Text) * Convert.ToDouble(txtQuantidade.Text)));
                model.pesoLiquido = Convert.ToDouble(string.Format("{0:N}", (Convert.ToDouble(txtLiquido.Text) * Convert.ToDouble(txtQuantidade.Text))));

                lista.Add(model);
            }
            catch
            {
                MessageBox.Show("Existe campos obrigatórios vazios!", "Operação Invalida", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
        private List <ModelRegistro> BuscaRegistros(int produto, string data1, string data2, int tipo)
        {
            List <ModelRegistro> Lista = new List <ModelRegistro>();
            ModelRegistro        modelRegistro;

            var dt = dao.BuscaRegistros(produto, data1, data2, tipo);

            foreach (DataRow item in dt.Rows)
            {
                modelRegistro = new ModelRegistro();

                modelRegistro.Id_produto    = Convert.ToInt32(item["Fk_produto"].ToString());
                modelRegistro.qtd_produto   = Convert.ToDouble(item["qtd_produto"].ToString());
                modelRegistro.tipo_operacao = Convert.ToInt32(item["tipo_operacao"].ToString());

                Lista.Add(modelRegistro);
            }

            return(Lista);
        }
        private void PreencheGrid(DataTable tb)
        {
            gridEntrada.DataSource = tb;

            //ADICIONA O DADOS DO DATATABLE NA LISTA PARA IMPRESSÂO
            foreach (DataRow item in tb.Rows)
            {
                ModelRegistro model = new ModelRegistro();

                model.Dsc_produto     = item[1].ToString();
                model.lote            = item[2].ToString();
                model.qtd_produto     = Convert.ToDouble(item[3].ToString());
                model.data_fabricacao = item[4].ToString();
                model.data_vencimento = item[5].ToString();
                model.data_operacao   = item[6].ToString();
                model.observacao      = item[7].ToString();

                lista.Add(model);
            }
        }
        public bool UpdateRecebimento(ModelPedido pedido, List <ModelRegistro> listaRegistro)
        {
            try
            {
                if (listaRegistro.Count > 0 && Convert.ToString(pedido.ped_data_pedido) != "" && Convert.ToString(pedido.ped_data_prevista) != "")
                {
                    //INSERE NA TABELA DE PEDIDO
                    daoPedido.UpdateRecebimento(pedido);

                    foreach (var item in listaRegistro)
                    {
                        var registro = new ModelRegistro();

                        registro.reg_cod       = item.reg_cod;
                        registro.quantidade    = item.quantidade;
                        registro.valorFrete    = item.valorFrete;
                        registro.valorUnitario = item.valorUnitario;
                        registro.custoMedio    = item.custoMedio;
                        registro.saldo         = item.saldo;
                        registro.valorTotal    = item.valorTotal;
                        registro.dataOperacao  = item.dataOperacao;
                        registro.reg_status    = item.reg_status;

                        //INSERE NA TABELA REGISTRO
                        daoRegistro.UpdateRecebimento(registro);
                        //ATUALIZA TABELA DE ENVIO DE EMAIL PARA 0 INDICANDO QUE O ESTOQUE ESTA NORMALIZADO
                        daoEmail.Update(registro.codProduto, 0);
                    }

                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch
            {
                return(false);
            }
        }
        }   //RETORNA UMA LISTA COM TODOS OS PRODUTOS E SEU ESTOQUE ATUAL

        public static double CalculaEstoque(int id)
        {
            double aux = 0, aux2 = 0;
            //LISTA PARA OS REGISTROS
            List <ModelRegistro> lista    = new List <ModelRegistro>();
            DAORegistro          dao      = new DAORegistro(cx);
            ModelRegistro        registro = new ModelRegistro();

            lista.Clear();
            aux  = 0;
            aux2 = 0;
            DataTable estoque             = dao.LocalizaRegistros(id);

            //LOOP PARA JOGAR O DATATABLE EM UMA LISTA
            foreach (DataRow item in estoque.Rows)
            {
                registro               = new ModelRegistro();
                registro.Id_produto    = Convert.ToInt32(item["Fk_produto"].ToString());
                registro.qtd_produto   = Convert.ToDouble(item["qtd_produto"].ToString());
                registro.tipo_operacao = int.Parse(item["tipo_operacao"].ToString());

                lista.Add(registro);
            }
            //FIM LOOP

            //LOOP PARA SEPARAR A ENTRADA E SAIDA E FAZAER O CALCULO DE CADA UM
            foreach (var item in lista)
            {
                if (item.tipo_operacao == 0)    //SE FOR ENTRADA
                {
                    aux = aux + item.qtd_produto;
                }
                if (item.tipo_operacao == 1)    //SE FOR SAIDA
                {
                    aux2 = aux2 + item.qtd_produto;
                }
            }

            return(aux - aux2);
            //FIM DO LOOP
        }       //RETORNA UM PRODUTO COM SEU ESTOQUE ATUAL
        private void PreencheModelo()
        {
            if (!VerificaCampos())
            {
                modelo      = new ModelRegistro();
                modeloLotes = new ModelLotes();

                modelo.Id_produto      = Convert.ToInt32(txtCodProduto.Text);
                modelo.lote            = txtLote.Text;
                modelo.qtd_produto     = Convert.ToDouble(txtQuantidade.Text);
                modelo.data_fabricacao = txtDataFabricacao.Text;
                modelo.data_vencimento = txtDataVencimento.Text;
                modelo.data_operacao   = Convert.ToDateTime(dateTimePicker1.Text).ToString("yyyy-MM-dd 00:00:00");
                modelo.tipo_produto    = tipoProduto;
                modelo.marcacao        = 0;
                modelo.observacao      = txtObservacao.Text;

                //PARA CONTROLE DOS LOTES
                modeloLotes.Fk_carga    = 0;
                modeloLotes.Fk_produto  = Convert.ToInt32(txtCodProduto.Text);
                modeloLotes.lote        = txtLote.Text;
                modeloLotes.qtd_produto = Convert.ToDouble(txtQuantidade.Text);

                if (editar == 1)
                {
                    modelo.Id_registro = codigo;
                }
                else
                {
                    modelo.Id_registro = 0;
                }


                LimpaCampoProduto();
            }
            else
            {
                MessageBox.Show("Preencha os todos os campos!", "Atenção!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                LimpaCampoProduto();
            }
        }
Exemple #29
0
        private void frmListaEntrada_Load(object sender, EventArgs e)
        {
            try
            {
                ControlRegistro control = new ControlRegistro();

                dt = control.CalculaPercentual(0, codigo, 1);
                PreencheGrid();
                MontaGrafico();
                LabelInformacao();

                labelDescricao.Text = "HISTORICO DE ENTRADA DO PRODUTO: " + descricao;
                ModelRegistro aux = control.CustoMedio(codigo);
                labelSaldo.Text       = "SALDO ESTOQUE: " + Convert.ToString(aux.quantidade);
                labelCustoMedio.Text  = "CUSTO MÉDIO ATUAL R$ " + Convert.ToString(aux.custoMedio);
                labelUltimoValor.Text = "ULTIMO PREÇO UNITARIO R$: " + Convert.ToString(gridListaEntrada.Rows[gridListaEntrada.Rows.Count - 1].Cells[3].Value);
            }
            catch
            {
            }
        }
        private List <ModelRegistro> BuscaProdutos(string produto, int tipo)
        {
            List <ModelRegistro> Lista = new List <ModelRegistro>();
            ModelRegistro        modelRegistro;
            ControleProduto      controlProduto = new ControleProduto();

            var dt = controlProduto.BuscaString(produto, tipo);

            foreach (DataRow item in dt.Rows)
            {
                modelRegistro = new ModelRegistro();

                modelRegistro.Id_produto  = Convert.ToInt32(item["ID"].ToString());
                modelRegistro.Dsc_produto = item["PRODUTO"].ToString();
                modelRegistro.qtd_produto = 0;

                Lista.Add(modelRegistro);
            }

            return(Lista);
        }