public bool UpdateEstoqueUnidade(ProdutoEstoqueInfo prod)
        {
            if (accessDbMySql.Conectar())
            {
                accessDbMySql.AddParametrosMySql("@prod", prod.prodestoqueid);
                accessDbMySql.AddParametrosMySql("@quant", prod.prodestoquequant);
                accessDbMySql.AddParametrosMySql("@unid", prod.prodestoqueidunidade);

                return(accessDbMySql.ExecutarComandoMySql("spUpdateProdutoEstoqueUnidade"));
            }
            return(false);
        }
        public int UpdateEstoqueId(ProdutoEstoqueInfo produtoEstoqueInfo)
        {
            if (accessDbMySql.Conectar())
            {
                accessDbMySql.AddParametrosMySql("@id", produtoEstoqueInfo.prodestoqueid);
                accessDbMySql.AddParametrosMySql("@quant", produtoEstoqueInfo.prodestoquequant);

                return(accessDbMySql.ExecutarScalarMySql("spUpdateEstoqueId"));
            }
            else
            {
                return(0);
            }
        }
        private ProdutoEstoqueColecao PreencherEstoqueColecao(DataTable tab)
        {
            ProdutoEstoqueColecao colecao = new ProdutoEstoqueColecao();

            foreach (DataRow row in tab.Rows)
            {
                ProdutoEstoqueInfo prodEstoqueInfo = new ProdutoEstoqueInfo
                {
                    prodestoqueidproduto = Convert.ToInt32(row["prodestoqueidproduto"]),
                    prodestoqueidunidade = Convert.ToInt32(row["prodestoqueidunidade"]),
                    prodestoqueid        = Convert.ToInt32(row["prodestoqueid"]),
                    prodestoquequant     = Convert.ToInt32(row["prodestoquequant"]),
                    prodestoquedatacad   = Convert.ToDateTime(row["prodestoquedatacad"]),
                };

                colecao.Add(prodEstoqueInfo);
            }

            return(colecao);
        }
        private void PreencherFormProduto()
        {
            produtoEstoqueInfo         = negocioEstoque.ConsultarEstoqueIdProdutoUnid(produtoInfo.proId, Form1.Unidade.uniid);
            textBoxProdutoCod.Text     = string.Format("{0:000}", produtoInfo.proId);
            labelProdutoDescricao.Text = produtoInfo.proDescricao;
            labelValorUnit.Text        = string.Format("{0:C}", produtoInfo.proValorVarejo);
            labelValorDesc.Text        = string.Format("{0:C}", produtoInfo.proValorVarejo);
            textquant = 1;

            if (produtoEstoqueInfo != null)
            {
                labelQuantEstoque.Text = string.Format("{0:000}", produtoEstoqueInfo.prodestoquequant);
            }
            else
            {
                labelQuantEstoque.Text = "000";
            }

            AoAlterar_textBoxProdutoCod(true);

            textBoxQuantPedido.Select();
        }
        private void SalvarEstoque()
        {
            if (dataGridViewLancarEstoqueDetalhes.RowCount > 0)
            {
                estoqueLancamentoInfo.estoquelancamentovalor = Convert.ToDecimal(labelValorTotal.Text.Replace("R$ ", ""));
                estoqueLancamentoInfo.estoquelancamentoquant = Convert.ToInt32(labelValorTotalQuant.Text);
                Caixa caixa = new Caixa();

                negocioEstoque = new EstoqueNegocios(Form1.Empresa.empconexao, Form1.Unidade.uniassistencia);
                if (negocioEstoque.UpdateEstoqueLancamentoId(estoqueLancamentoInfo) > 0)
                {
                    EntradaSaidaInfo entradaSaidaSalvar = new EntradaSaidaInfo
                    {
                        entracodtodasparcelas = 0,
                        entraconfirmada       = true,
                        entradatalancamento   = DateTime.Now,
                        entradatavenc         = DateTime.Now.Date,
                        entradocumento        = Convert.ToString(estoqueLancamentoInfo.estoquelancamentoid),
                        entraid               = 0,
                        entraidfunc           = Form1.User.useidfuncionario,
                        entraidunidade        = Form1.Unidade.uniid,
                        entranumparcela       = 1,
                        entranumtotalparcelas = 1,
                        entraobs              = "Controle do lançamento do estoque: " + string.Format("{0:00000}", estoqueLancamentoInfo.estoquelancamentoid) + Environment.NewLine +
                                                "Quatidade de itens: " + string.Format("{0:000}", estoqueLancamentoInfo.estoquelancamentoquant) + Environment.NewLine + "Lançado por: " + Form1.User.usenome,
                        entratipocatdecricao = "",
                        entratipoidcat       = 1,
                        entravalor           = estoqueLancamentoInfo.estoquelancamentovalor,
                        entravalorpago       = estoqueLancamentoInfo.estoquelancamentovalor,
                        entraidtipoentrada   = 3,
                        entraparcelado       = false
                    };

                    EntradaSaidaNegocios entradaSaidaNegocios = new EntradaSaidaNegocios(Form1.Empresa.empconexao);
                    if (entradaSaidaNegocios.InsertEntradaSaidaLancamento(entradaSaidaSalvar) == 0)
                    {
                        FormMessage.ShowMessegeWarning("Falha, tente novamente!");
                        return;
                    }

                    foreach (GridLancarEstoqueInfo lancar in gridLancarEstoqueColecao)
                    {
                        if (!InsertDetalhes(lancar))
                        {
                            FormMessage.ShowMessegeWarning("Falha ao tentar salvar!");
                            return;
                        }

                        ProdutoEstoqueInfo estoque = new ProdutoEstoqueInfo
                        {
                            prodestoqueid    = lancar.idestoque,
                            prodestoquequant = lancar.quant
                        };

                        negocioEstoque = new EstoqueNegocios(Form1.Empresa.empconexao, Form1.Unidade.uniassistencia);
                        int cod = negocioEstoque.UpdateEstoqueId(estoque);
                        if (cod > 0)
                        {
                            MovEstoqueInfo movEstoqueInfo = new MovEstoqueInfo
                            {
                                movestoqueidproduto       = lancar.idproduto,
                                movestoqueidtipomovimento = estoqueLancamentoInfo.estoquelancamentoidtipo,
                                movestoquequant           = lancar.quant,
                                movestoquevalor           = lancar.valorUnit
                            };

                            if (!negocioEstoque.InsertMovEstoque(movEstoqueInfo))
                            {
                                FormMessage.ShowMessegeWarning("Falha ao tentar salvar!");
                                return;
                            }
                        }
                        else
                        {
                            FormMessage.ShowMessegeWarning("Falha ao tentar salvar!");
                            return;
                        }
                    }
                }
                else
                {
                    FormMessage.ShowMessegeWarning("Falha ao tentar salvar!");
                    return;
                }

                FormMessage.ShowMessegeInfo("O estoque foi atualizado com sucesso!");

                LimparCampos();
            }
            else
            {
                FormMessage.ShowMessegeWarning("Adicione um produto a lista!");
            }
        }