public void incluirLista(List <ItemBacklog> lista) { if (lista.Count > 0) { List <ItemBacklog> listaBanco = itemBacklogDAO.recuperar(); List <ItemBacklog> listaItemBacklogInclusao = new List <ItemBacklog>(); List <ItemBacklog> listaItemBacklogAtualizacao = new List <ItemBacklog>(); foreach (ItemBacklog ItemBacklog in lista) { var ItemBacklogsExistente = listaBanco.Where(t => t.Id.Equals(ItemBacklog.Id)); if (ItemBacklogsExistente.Count() == 0) { listaItemBacklogInclusao.Add(ItemBacklog); } else { ItemBacklog.Codigo = ((ItemBacklog)ItemBacklogsExistente.First()).Codigo; listaItemBacklogAtualizacao.Add(ItemBacklog); } } itemBacklogDAO.incluir(listaItemBacklogInclusao); itemBacklogDAO.atualizar(listaItemBacklogAtualizacao); } }
public void realizarUpload(String file) { string[] lines = System.IO.File.ReadAllLines(file); if (lines.Length > 1 && Util.validarArquivoItemBacklog(lines[0]) == true) { List <ItemBacklog> listaIncluir = new List <ItemBacklog>(); List <ItemBacklog> listaAtualizar = new List <ItemBacklog>(); List <Projeto> listaProjeto = new List <Projeto>(); for (int i = 1; i < lines.Length; i++) { string[] linha = lines[i].Replace("\"", "").Split('\t'); ItemBacklog item = new ItemBacklog(); item.Tipo = linha[0]; item.Id = Convert.ToInt32(linha[1]); item.Titulo = linha[2]; item.Status = linha[3]; item.PlanejadoPara = linha[4]; item.DataColeta = Convert.ToDateTime(txtData.Text); item.ValorNegocio = Convert.ToInt32(linha[5].Replace("pts", "").Replace("pt", "")); item.Tamanho = Convert.ToInt32(linha[6]); item.Complexidade = Convert.ToInt32(linha[8]); item.Pf = Convert.ToDecimal(linha[9]); Projeto p = recuperarProjeto(listaProjeto, Convert.ToInt32(linha[7])); if (p != null) { item.Projeto = p.Codigo; } else { int codigo = Convert.ToInt32(((ComboBoxItem)cmbProjeto.SelectedItem).Tag); item.Projeto = codigo; } if (!existeItemBacklog(item)) { listaIncluir.Add(item); } else { listaAtualizar.Add(item); } } ItemBacklogDAO tDAO = new ItemBacklogDAO(); if (listaIncluir.Count > 0) { tDAO.incluir(listaIncluir); } if (listaAtualizar.Count > 0) { tDAO.atualizarPorId(listaAtualizar); } Alerta alerta = new Alerta("Arquivo incluido com sucesso!"); alerta.Show(); preencherLista(new Dictionary <string, string>()); } else { Alerta alerta = new Alerta("Arquivo invalido"); alerta.Show(); } }