Esempio n. 1
0
        /// <summary>
        /// Evento disparado quando terminada a leitura do codigo de barras
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void txtCodigoBarrras_KeyUp(object sender, KeyEventArgs e)
        {
            var txtCodBar = this.txtCodigoBarrasProduto.Text;

            //ação de ver o produto através do código de barras
            //testar usando um leitor real
            if (e.KeyCode == Keys.Enter && !txtCodBar.Equals(_codBarraProdutoAnt))
            {
                Produto find = new ProdutoDaoManager()
                               .GetProdutoByCodigoBarras(this.txtCodigoBarrasProduto.CodigoBarras);

                if (find != null)
                {
                    //cria uma copia para nao altera os dados do grid
                    Produto p = find.Clone();

                    Decimal qtde = txtCodigoBarrasProduto.Quantidade;
                    this._codBarraProdutoAnt = txtCodigoBarrasProduto.Text;

                    if (p == null)
                    {
                        lblDescricaoProduto.ForeColor = Color.Red;
                        lblDescricaoProduto.Text      = "Nenhum produto encontrado";
                        //alerta sonoro
                        SoundUtil.Exclamation();
                    }
                    else
                    {
                        btnSelecionarNow_Click(null, null);
                        lblDescricaoProduto.Text = p.DescricaoProduto + "\t" +
                                                   qtde + "x " + p.PrecoVenda + " = " + p.CalculaTotalProduto(p.PrecoVenda, qtde).ToString("N2");
                    }

                    //deixe o foco no codigo de barras
                    this.txtCodigoBarrasProduto.Focus();

                    //selecione todo o codigo ja presente no componente
                    this.txtCodigoBarrasProduto.SelectAll();
                }
            }
            else
            if (e.KeyCode != Keys.Back)
            {
                this._codBarraProdutoAnt = "";
            }
        }