Ejemplo n.º 1
0
        private void txtCodigoDoProduto_KeyPress(object sender, KeyPressEventArgs e)
        {
            try
            {
                ValidatorField.IntegerAndLetter(e);
                ValidatorField.NoSpace(e);
                if ((Keys)e.KeyChar == Keys.Enter && txtCodigoDoProduto.Text.Length > 0)
                {
                    if (ckbPorPeso.Checked)
                    {
                        decimal peso = 0;
                        if (txtPesoDoProduto.Text.Contains("0,"))
                        {
                            string temp = txtPesoDoProduto.Text.Substring(2, txtPesoDoProduto.Text.Length - 2);
                            peso = txtPesoDoProduto.Text == "" ? 0 : Convert.ToDecimal(temp);
                        }
                        else
                        {
                            peso = txtPesoDoProduto.Text == "" ? 0 : Convert.ToDecimal(txtPesoDoProduto.Text.Replace(",", ""));
                        }

                        if (peso > 0)
                        {
                            InstanciarProdutoRepositorio();
                            _produtoRepositorio.AdicionarProdutoParaVendaPorPeso(ltvProdutos, txtCodigoDoProduto.Text, peso);
                            GetValorNaComanda();
                            LimparTxt(new List <TextBox>()
                            {
                                txtCodigoDoProduto
                            });
                            MostrarBotaoVendaSeExisteItensNaComanda();
                            EsconderGroupBoxOuMostrar(new List <GroupBox>()
                            {
                                gpbValorPorPeso
                            }, Esconder);
                            DesmarcarCheckBox();
                            LimparTxt(new List <TextBox>()
                            {
                                txtValorPago
                            });
                        }
                        else
                        {
                            MyErro.MyCustomException("Digite o valor do item vendido.");
                            FocarNoTxt(txtPesoDoProduto);
                        }
                    }
                    else
                    {
                        if (txtQuantidade.Text == "0" || txtQuantidade.Text == "00" || txtQuantidade.Text == "000")
                        {
                            LimparTxt(new List <TextBox>()
                            {
                                txtQuantidade
                            });
                            FocarNoTxt(txtQuantidade);
                            DialogMessage.MessageFullComButtonOkIconeDeInformacao("Não é possível vende um produto com o campo Quantidade com 0", "Aviso");
                        }
                        else if (txtQuantidade.Text.Length == 0)
                        {
                            FocarNoTxt(txtQuantidade);
                            DialogMessage.MessageFullComButtonOkIconeDeInformacao("Não é possível vende um produto com o campo Quantidade vazio.", "Aviso");
                        }
                        else
                        {
                            InstanciarProdutoRepositorio();
                            _produtoRepositorio.AdicionarProdutoParaVenda(ltvProdutos, txtCodigoDoProduto.Text, Convert.ToInt32(txtQuantidade.Text));
                            GetValorNaComanda();
                            LimparTxt(new List <TextBox>()
                            {
                                txtCodigoDoProduto
                            });
                            MostrarBotaoVendaSeExisteItensNaComanda();
                            EsconderGroupBoxOuMostrar(new List <GroupBox>()
                            {
                                gpbValorPorPeso
                            }, Esconder);
                            DesmarcarCheckBox();
                            LimparTxt(new List <TextBox>()
                            {
                                txtValorPago
                            });
                        }
                    }
                }
                else if ((Keys)e.KeyChar == Keys.Enter && txtCodigoDoProduto.Text.Length == 0)
                {
                    FocarNoTxt(txtValorPago);
                }
            }
            catch (CustomException erro)
            {
                DialogMessage.MessageFullComButtonOkIconeDeInformacao(erro.Message, "Aviso");
                LimparTxt(new List <TextBox>()
                {
                    txtCodigoDoProduto
                });
                FocarNoTxt(txtCodigoDoProduto);
            }
            catch (Exception erro)
            {
                DialogMessage.MessageComButtonOkIconeErro(erro.Message, "Erro");
            }
        }