private void tblNumTarefaTrabalhado_SelectionChanged(object sender, SelectionChangedEventArgs e) { DataGrid grid = sender as DataGrid; string linhaSelecionada = ""; string colunaSelecionada = ""; if (validarConsultaDados(grid, ref linhaSelecionada, ref colunaSelecionada)) { FuncionarioBO funcBO = new FuncionarioBO(); int codigo = funcBO.Recuperar(Funcionario.GerarParametros(Funcionario.NOME, linhaSelecionada)).FirstOrDefault().Codigo; TarefaBO itemBO = new TarefaBO(); List <Tarefa> listaTarefa = itemBO.RecuperarTarefasPorSprintPorResponsavel(colunaSelecionada, codigo); DataTable tabela = new DataTable(); int[] listaTamColunas = { 80, 80, 300, 80, 80 }; object[] listaColunas = { Tarefa.ID, Tarefa.PROJETO, Tarefa.TITULO, Tarefa.STATUS, Tarefa.TEMPO_GASTO }; List <object[]> listaLinhas = new List <object[]>(); foreach (Tarefa item in listaTarefa) { object[] linha = { item.Id, item.Projeto, item.Titulo, item.Status, item.TempoGasto }; listaLinhas.Add(linha); } ConsultarDados tela = new ConsultarDados(); string titulo = String.Format("Consulta Tarefas trabalhadas no sprint {0} por {1}", colunaSelecionada, linhaSelecionada); tela.preencherTabela(titulo, tabela, listaTamColunas, listaColunas, listaLinhas); tela.Show(); } }
private void executarAcao(DataGrid grid, int opcao, bool inteiro) { if (validarExibicaoTabela()) { DateTime dtInicio = this.txtDtInicio.Text.Length > 0 ? Convert.ToDateTime(this.txtDtInicio.Text) : new DateTime(2014, 01, 01); DateTime dtFim = this.txtDtFinal.Text.Length > 0 ? Convert.ToDateTime(this.txtDtFinal.Text) : new DateTime(2020, 12, 31); FuncionarioDAO fDAO = new FuncionarioDAO(); List <Funcionario> listaFuncionario = new List <Funcionario>(); if (chkTodosFuncionario.IsChecked == true) { String lotacao = Convert.ToString(((ComboBoxItem)cmbLotacao.SelectedItem).Content); Dictionary <string, object> param = new Dictionary <string, object>(); param.Add(Funcionario.LOTACAO, lotacao); listaFuncionario.AddRange(fDAO.Recuperar(param)); } else { foreach (ListBoxItem item in lstFuncionario.SelectedItems) { int codigo = Convert.ToInt32(item.Tag); listaFuncionario.Add(fDAO.Recuperar(codigo)); } } List <string> listaSprint = new List <string>(); foreach (ListBoxItem item in lstSprint.SelectedItems) { listaSprint.Add(Convert.ToString(item.Content)); } DataTable tabela = new DataTable(); if (opcao == OpcaoIndicadorDados.ITEM_BACKLOG_TRABALHADO) { List <ItemBacklog> listaItemBacklog = new List <ItemBacklog>(); foreach (Funcionario func in listaFuncionario) { ItemBacklogDAO ibDAO = new ItemBacklogDAO(); listaItemBacklog.AddRange(ibDAO.recuperarItensBacklogPorSprintPorResponsavel(listaSprint, func.Codigo)); } object[] listaColunas = { "Tipo", "ID", "Título", "Status", "Planejado Para", "Pai", "Data de Modificação", "ID do Projeto", "Valor definido para o Negócio", "Tamanho Estimado", "Complexidade", "PF" }; foreach (string str in listaColunas) { tabela.Columns.Add(Convert.ToString(str)); } foreach (ItemBacklog item in listaItemBacklog) { object[] linha = new object[listaColunas.Count()]; linha[0] = item.Tipo; linha[1] = item.Id; linha[2] = item.Titulo; linha[3] = item.Status; linha[4] = item.PlanejadoPara; linha[5] = item.Pai; linha[6] = item.DataModificacao; linha[7] = item.Projeto; linha[8] = item.ValorNegocio; linha[9] = item.Tamanho; linha[10] = item.Complexidade; linha[11] = item.Pf; tabela.Rows.Add(linha); } } else if (opcao == OpcaoIndicadorDados.TAREFA_TRABALHADO) { List <Tarefa> listaTarefa = new List <Tarefa>(); foreach (Funcionario func in listaFuncionario) { TarefaBO tDAO = new TarefaBO(); listaTarefa.AddRange(tDAO.RecuperarTarefasPorSprintPorResponsavel(listaSprint, func.Codigo)); } object[] listaColunas = { "ID", "Título", "Responsavel", "Status", "Planejado Para", "Pai", "Data", "Projeto", "Classificação", "Estimativa", "Tempo Gasto" }; foreach (string str in listaColunas) { tabela.Columns.Add(Convert.ToString(str)); } foreach (Tarefa item in listaTarefa) { object[] linha = new object[listaColunas.Count()]; // linha[0] = item.Tipo; linha[0] = item.Id; linha[1] = item.Titulo; linha[2] = item.Responsavel.Nome; linha[3] = item.Status; linha[4] = item.PlanejadoPara; linha[5] = item.Pai; linha[6] = item.DataModificacao; linha[7] = item.Projeto; linha[8] = item.Classificacao; linha[9] = item.Estimativa; linha[10] = item.TempoGasto; tabela.Rows.Add(linha); } } baseWindow.preencherGrid(grid, tabela, 80); } }