Ejemplo n.º 1
0
        private async void txtCodigoProtheusProduto_TextChanged(object sender, EventArgs e)
        {
            var   codigoProduto = ((TextBox)sender).Text;
            Regex regex         = new Regex("^[0-9]*$");

            if (!string.IsNullOrEmpty(codigoProduto))
            {
                if (regex.IsMatch(codigoProduto))
                {
                    Produto produto = await HttpProdutos.GetProdutosByCodigoProtheus(Convert.ToInt64(codigoProduto), usuarioLogado.token);

                    if (produto != null)
                    {
                        txtGrupo.Text     = produto.Grupo.Descricao;
                        txtDescricao.Text = produto.Descricao;
                        idProduto         = produto.Id;
                        idGrupo           = produto.GrupoId;
                    }
                    else
                    {
                        txtGrupo.Text     = "";
                        txtDescricao.Text = "";
                        idProduto         = 0;
                    }
                }
            }
        }
        private async Task Create()
        {
            Produto produto = new Produto();

            if (!string.IsNullOrEmpty(txtCodigoProtheus.Text) && !string.IsNullOrEmpty(txtDescricao.Text))
            {
                produto.CodigoProtheus = long.Parse(txtCodigoProtheus.Text);
                produto.Descricao      = txtDescricao.Text;
                produto.GrupoId        = Convert.ToInt64(cboGrupo.SelectedValue);
                var produtoCriado = await HttpProdutos.Create(produto, usuarioLogado.token);

                if (produtoCriado == null)
                {
                    MessageBox.Show("Erro interno no servidor, tente em novamente em outro momento");
                }
                else
                {
                    AtualizaGrid();
                    MessageBox.Show("Produto adicionado com sucesso");
                    ManipulaFormGenericoUtil.LimpaCampos(this);
                }
            }
            else
            {
                MessageBox.Show("Todos os campos são obrigatórios");
            }
        }
        private async void AtualizaGrid()
        {
            produtos = await HttpProdutos.GetAllProdutos(usuarioLogado.token);

            dgvProduto.Rows.Clear();
            foreach (var produto in produtos)
            {
                int n = dgvProduto.Rows.Add();
                dgvProduto.Rows[n].Cells[0].Value = "000000000" + produto.CodigoProtheus;
                dgvProduto.Rows[n].Cells[1].Value = produto.Descricao;
                dgvProduto.Rows[n].Cells[2].Value = produto.GrupoId;
                dgvProduto.Rows[n].Cells[3].Value = produto.Id;
            }
        }
        private async void btnExcluir_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Você realmente deseja excluir esse registro?", "Exclusão", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                if (id != 0)
                {
                    await HttpProdutos.Delete(id, usuarioLogado.token);

                    AtualizaGrid();
                    MessageBox.Show("Produto excluído com sucesso");
                    ManipulaFormGenericoUtil.LimpaCampos(this);
                    id = 0;
                }
                else
                {
                    MessageBox.Show("Selecione um produto da lista");
                }
            }
        }