Exemplo n.º 1
0
        private void btnIncluirFornecedor_Click(object sender, EventArgs e)
        {
            if (lstboxMateriais.Items.Count != 0)
            {
                string  nomeFornecedor = txtNome.Text.ToString();
                Boolean statusNome     = validar.Textos(nomeFornecedor);

                if (statusNome == true)
                {
                    string  cnpjFornecedor = txtCnpj.Text.ToString();
                    Boolean statusCnpj     = validar.Cnpj(cnpjFornecedor);

                    if (statusCnpj == true)
                    {
                        string  telefoneFornecedor = txtTelefone.Text.ToString();
                        Boolean statusTelefone     = validar.Textos(telefoneFornecedor);

                        if (statusTelefone == true)
                        {
                            string  enderecoFornecedor = txtEndereco.Text.ToString();
                            Boolean statusEndereco     = validar.Textos(enderecoFornecedor);

                            if (statusEndereco == true)
                            {
                                //Inserindo o fornecedor
                                int codigoFornecedor = camadaNegocios.InserirFornecedor(nomeFornecedor, cnpjFornecedor, telefoneFornecedor, enderecoFornecedor);

                                if (codigoFornecedor != 0)
                                {
                                    int     codigoMaterial;
                                    Boolean statusInsercaoMaterial = true;
                                    //Inserindo os materiais que este fornecedor pode fornecer
                                    for (int index = (lstboxMateriais.Items.Count) - 1; index >= 0; index--)
                                    {
                                        var array = ((lstboxMateriais.Items[index]).ToString()).Split('-');

                                        codigoMaterial = int.Parse(array[0]);

                                        statusInsercaoMaterial = camadaNegocios.InserirMateriaisFornecedor(codigoFornecedor, codigoMaterial);
                                        if (statusInsercaoMaterial == false)
                                        {
                                            MessageBox.Show("Erro inesperado ao inserir o fornecedor. Contate o suporte");
                                            break;
                                        }
                                    }

                                    if (statusInsercaoMaterial == true)
                                    {
                                        MessageBox.Show("Fornecedor incluído com sucesso");
                                        txtNome.Text           = "";
                                        txtCnpj.Text           = "";
                                        txtTelefone.Text       = "";
                                        txtEndereco.Text       = "";
                                        txtCodigoMaterial.Text = "";
                                        lstboxMateriais.Items.Clear();

                                        txtNome.Focus();
                                    }

                                    else
                                    {
                                        MessageBox.Show("Materiais do fornecedor não foram incluídos.\n" +
                                                        "Inclua manualmente no cadastro de fornecedores");
                                    }
                                }

                                else
                                {
                                    MessageBox.Show("Não foi possível inserir o fornecedor");
                                }
                            }

                            else
                            {
                                MessageBox.Show("Endereço inválido. \n\n" +
                                                "Deve ter pelo menos um caractere \n" +
                                                "Não conter caracteres especiais");
                            }
                        }

                        else
                        {
                            MessageBox.Show("Telefone inválido. \n\n" +
                                            "Deve ter pelo menos um caractere \n" +
                                            "Não conter caracteres especiais");
                        }
                    }

                    else
                    {
                        MessageBox.Show("CNPJ inválido");
                    }
                }

                else
                {
                    MessageBox.Show("Nome inválido. \n\n" +
                                    "Deve ter pelo menos um caractere \n" +
                                    "Não conter caracteres especiais");
                }
            }

            else
            {
                MessageBox.Show("Informe pelo menos um material fornecido por este fornecedor");
            }
        }