private void CarregarFornecedor(string caminho) { XmlDocument doc = new XmlDocument(); doc.Load(caminho); string Cnpj = ""; foreach (XmlElement linhasXml in doc.GetElementsByTagName("emit")) { Cnpj = linhasXml.GetElementsByTagName("CNPJ")[0].InnerText.Trim(); } bool achouFornecedor = true; if (Cnpj != "" && Cnpj != null && Cnpj.Length >= 11) { achouFornecedor = SelecionarFornecedorNoComboBox(Cnpj); } if (achouFornecedor) { endereco = new Endereco(); fornecedor = new Fornecedor(); foreach (XmlElement linhasXml in doc.GetElementsByTagName("emit")) { //Endereço endereco.IdEndereco = 0; endereco.Cep = linhasXml.GetElementsByTagName("CEP")[0].InnerText.Trim(); endereco.Logradouro = linhasXml.GetElementsByTagName("xLgr")[0].InnerText.Trim(); endereco.Numero = linhasXml.GetElementsByTagName("nro")[0].InnerText.Trim(); endereco.Bairro = linhasXml.GetElementsByTagName("xBairro")[0].InnerText.Trim(); endereco.Cidade = linhasXml.GetElementsByTagName("xMun")[0].InnerText.Trim(); endereco.Estado = linhasXml.GetElementsByTagName("UF")[0].InnerText.Trim(); endereco.Pais = linhasXml.GetElementsByTagName("xPais")[0].InnerText.Trim(); endereco.Complemento = ""; //Fornecedor fornecedor.Cnpj = Cnpj; fornecedor.Ie = linhasXml.GetElementsByTagName("IE")[0].InnerText.Trim(); fornecedor.Contato = ""; fornecedor.RazaoSocial = (linhasXml.GetElementsByTagName("xFant").Count > 0) ? linhasXml.GetElementsByTagName("xFant")[0].InnerText.Trim() : "Sem Razao"; fornecedor.NomeFantasia = (linhasXml.GetElementsByTagName("xNome").Count > 0) ? linhasXml.GetElementsByTagName("xNome")[0].InnerText.Trim() : ""; fornecedor.Telefone = linhasXml.GetElementsByTagName("fone")[0].InnerText.Trim(); fornecedor.Email = ""; } fornecedor.EnderecoId = daoEndereco.InserirDbProvider(provider, strConnection, endereco); daoFornecedor.InserirDbProvider(provider, strConnection, fornecedor); fornecedor = new Fornecedor { Cnpj = Cnpj }; DataTable lista = daoFornecedor.SelectDbProvider(provider, strConnection, fornecedor); foreach (DataRow row in lista.Rows) { fornecedor.IdFornecedor = Convert.ToInt32(row[0].ToString()); } comboBoxFornecedor.Items.Add(fornecedor); comboBoxFornecedor.SelectedItem = fornecedor; } }
/// <summary> /// Inserindo no banco /// </summary> public void InsertDbProvider() { //Instância objeto fornecedor = new Fornecedor(); endereco = new Endereco(); if (mk_id.Text != "" && mk_id.Text != null) { fornecedor.IdFornecedor = Convert.ToInt32(mk_id.Text); fornecedor.EnderecoId = Convert.ToInt32(controleUsEndereco.mk_id.Text); endereco.IdEndereco = Convert.ToInt32(controleUsEndereco.mk_id.Text); } else { fornecedor.IdFornecedor = 0; endereco.IdEndereco = 0; } //pegando do list box a nossa lista de areas try { listaArea = listBoxAreaFornecedor.Items.Cast <AreaAtuacao>().ToList(); if (listaArea.Count == 0) { //lançando erro caso n selecione nada throw new Exception(Properties.Resources.ResourceManager.GetString("titulo_areaSelecionada")); } } catch (Exception) { throw; } //ints para guardar ids do retorno do banco int fornecedorId; //Preenchendo Endereço com os dados da view try { endereco.Bairro = controleUsEndereco.mk_bairro.Text; endereco.Cep = controleUsEndereco.mk_cep.Text; endereco.Cidade = controleUsEndereco.mk_cidade.Text; endereco.Complemento = controleUsEndereco.campoComplemento.Text; endereco.Estado = controleUsEndereco.comboBoxEstado.Text; endereco.Logradouro = controleUsEndereco.mk_logradouro.Text; endereco.Numero = controleUsEndereco.mk_numero.Text; endereco.Pais = controleUsEndereco.comboBoxPais.Text; } catch (Exception) { throw; } //Preenchendo Funcionario com os dados da view try { fornecedor.Cnpj = mk_cnpj.Text; fornecedor.Email = mk_email.Text; fornecedor.Contato = mk_contato.Text; fornecedor.Ie = mk_Ie.Text; fornecedor.NomeFantasia = mk_nomeFantasia.Text; fornecedor.RazaoSocial = mk_razaoSocial.Text; fornecedor.Telefone = mk_telefone.Text; } catch (Exception) { throw; } try { //Salvando ou alterando o endereco if (mk_id.Text == "" || mk_id.Text == null) { endereco.IdEndereco = daoEndereco.InserirDbProvider(provider, strConnection, endereco); fornecedor.EnderecoId = endereco.IdEndereco; //adicionando no banco o fornecedor fornecedorId = dao.InserirDbProvider(provider, strConnection, fornecedor); } else { daoEndereco.InserirDbProvider(provider, strConnection, endereco); dao.InserirDbProvider(provider, strConnection, fornecedor); fornecedorId = fornecedor.IdFornecedor; } daoFornecedorAreaAtuacao.RemoverDbProvider(provider, strConnection, fornecedorId); //inserindo no banco a parte de areas atuação do fornecedor com id fornecedor e id area for (int i = 0; i < listaArea.Count; i++) { FornecedorAreasAtuacao fornecedorAreasAtuacao = new FornecedorAreasAtuacao(listaArea[i].IdArea, fornecedorId); daoFornecedorAreaAtuacao.InserirDbProvider(provider, strConnection, fornecedorAreasAtuacao); } if (fornecedor.IdFornecedor != 0) { MessageBox.Show(Properties.Resources.ResourceManager.GetString("titulo_dadosSalvos"), provider); } else { MessageBox.Show(Properties.Resources.ResourceManager.GetString("titulo_dadosAdicionados"), provider); } ClassFuncoes.FecharTela(this); } catch (Exception ex) { MessageBox.Show(ex.Message); } }