public void ExcluirCronogramaQuandoExistirTarefasComHistoricoNoCronogramaTest() { //cria situação planejamento SituacaoPlanejamento situacaoPlanejamentoNaoIniciado = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "Não Iniciado", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Planejamento, CsPadraoSistema.Sim, true); SituacaoPlanejamento situacaoPlanejamentoEmAndamento = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "Em Andamento", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Planejamento, CsPadraoSistema.Sim, true); Colaborador colaborador = ColaboradorFactoryEntity.CriarColaborador(contexto, "anderson.lins", true); Cronograma cronograma1 = CronogramaFactoryEntity.CriarCronograma(contexto, "Cronograma 01", situacaoPlanejamentoNaoIniciado, new DateTime(), new DateTime(), true); List <CronogramaTarefa> tarefasReordenadas = new List <CronogramaTarefa>(); DateTime dataHoraDaAcao = new DateTime(); CronogramaTarefa cronogramaTarefa = CronogramaBo.CriarTarefa(cronograma1.Oid, (string)"Tarefa 01", situacaoPlanejamentoNaoIniciado.Oid.ToString(), DateTime.Today, colaborador.Usuario.UserName, "", "", out tarefasReordenadas, ref dataHoraDaAcao, 5); TarefaHistoricoTrabalhoBo.CriarHistoricoTarefa((Guid)cronogramaTarefa.OidTarefa, colaborador.Usuario.UserName, new TimeSpan(3, 0, 0), DateTime.Now, new TimeSpan(8, 0, 0), new TimeSpan(11, 0, 0), "comentário", new TimeSpan(2, 0, 0), situacaoPlanejamentoEmAndamento.Oid, ""); TarefaHistoricoTrabalho historicoCriado = TarefaHistoricoTrabalhoDao.ConsultarTarefaHistoricoAtualPorOidTarefa((Guid)cronogramaTarefa.OidTarefa); bool cronogramaExcluido = CronogramaBo.ExcluirCronograma(contexto, cronograma1.Oid); Assert.IsNotNull(historicoCriado, "Deveria ter criado um histórico pra tarefa"); Assert.IsTrue(cronogramaExcluido, "Deveria ser true, pois o cronograma exclui quaisquer tarefas associadas a ele."); }
public void ConsultarCronogramaTarefasPorOidCronogramaQuandoExistirMaisDeUmaTarefa() { //cria situação planejamento SituacaoPlanejamento situacaoPlanejamento = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S1", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Execução, CsPadraoSistema.Sim, true); Cronograma cronograma1 = CronogramaFactoryEntity.CriarCronograma(contexto, "Cronograma 01", situacaoPlanejamento, new DateTime(), new DateTime(), true); Colaborador colaborador1 = ColaboradorFactoryEntity.CriarColaborador(contexto, "anderson.lins", true); string responsaveis = colaborador1.NomeCompleto; //iníco tarefa DateTime dtInicio = DateTime.Now; DateTime dataHoraAcao = new DateTime(); List <CronogramaTarefa> tarefasImpactadas; //cria tarefa CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 01", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas, ref dataHoraAcao, 3, 0); CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 02", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas, ref dataHoraAcao, 3, 0); CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 03", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas, ref dataHoraAcao, 3, 0); CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 04", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas, ref dataHoraAcao, 3, 0); CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 05", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas, ref dataHoraAcao, 3, 0); //lista de oid tarefas. List <CronogramaTarefa> cronogramaTarefas = new List <CronogramaTarefa>(); cronogramaTarefas = CronogramaTarefaDao.ConsultarCronogramaTarefasPorOidCronograma(cronograma1.Oid); Assert.AreEqual(1, cronogramaTarefas[0].NbID, "Deveria ser 1, pois o método de busca deveria ordenar adequadamente a partir do NbId de cada tarefa"); Assert.AreEqual(2, cronogramaTarefas[1].NbID, "Deveria ser 2, pois o método de busca deveria ordenar adequadamente a partir do NbId de cada tarefa"); Assert.AreEqual(3, cronogramaTarefas[2].NbID, "Deveria ser 3, pois o método de busca deveria ordenar adequadamente a partir do NbId de cada tarefa"); Assert.AreEqual(4, cronogramaTarefas[3].NbID, "Deveria ser 4, pois o método de busca deveria ordenar adequadamente a partir do NbId de cada tarefa"); Assert.AreEqual(5, cronogramaTarefas[4].NbID, "Deveria ser 5, pois o método de busca deveria ordenar adequadamente a partir do NbId de cada tarefa"); }
public ActionResult CriarTarefa(TarefaCriacaoDto tarefa) { CronogramaTarefa novaTarefa = null; List <CronogramaTarefa> tarefasImpactadas = null; DateTime dataHoraAcao = new DateTime(); novaTarefa = CronogramaBo.CriarTarefa(tarefa.OidCronograma, tarefa.TxDescricaoTarefa, tarefa.OidSituacaoPlanejamentoTarefa, tarefa.DtInicio, tarefa.AutorCriacao, tarefa.TxObservacaoTarefa, tarefa.TxResponsaveis, out tarefasImpactadas, ref dataHoraAcao, tarefa.NbEstimativaInicial, tarefa.NbIdReferencia); return(Json(TarefaBo.TarefaCriadaDtoFactory(novaTarefa, tarefasImpactadas, dataHoraAcao))); }
public void CriarTarefaQuandoTarefasForemImpactadasTest() { SituacaoPlanejamento situacaoPlanejamento = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S1", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Execução, CsPadraoSistema.Sim, true); Cronograma cronograma1 = CronogramaFactoryEntity.CriarCronograma(contexto, "Cronograma 01", situacaoPlanejamento, new DateTime(), new DateTime(), true); Cronograma cronograma2 = CronogramaFactoryEntity.CriarCronograma(contexto, "Cronograma 02", situacaoPlanejamento, new DateTime(), new DateTime(), true); Colaborador colaborador1 = ColaboradorFactoryEntity.CriarColaborador(contexto, "anderson.lins", true); string responsaveis = colaborador1.NomeCompleto; //iníco tarefa DateTime dtInicio = new DateTime(); List <CronogramaTarefa> tarefasImpactadas1; List <CronogramaTarefa> tarefasImpactadas2; DateTime dataHoraAcao = new DateTime(); //cria tarefas cronograma1 CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 01", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas1, ref dataHoraAcao, 3, 0); List <CronogramaTarefa> lstCronoTarefa1 = contexto.CronogramaTarefa.Where(o => o.OidCronograma == cronograma1.Oid).ToList(); CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 02", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas1, ref dataHoraAcao, 3, lstCronoTarefa1[0].NbID); lstCronoTarefa1 = contexto.CronogramaTarefa.Where(o => o.OidCronograma == cronograma1.Oid).ToList(); CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 03", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas1, ref dataHoraAcao, 3, lstCronoTarefa1[0].NbID); lstCronoTarefa1 = contexto.CronogramaTarefa.Where(o => o.OidCronograma == cronograma1.Oid).ToList(); CronogramaBo.CriarTarefa(cronograma2.Oid, "Tarefa 01", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas2, ref dataHoraAcao, 3, 0); List <CronogramaTarefa> lstCronoTarefa2 = contexto.CronogramaTarefa.Where(o => o.OidCronograma == cronograma2.Oid).ToList(); CronogramaBo.CriarTarefa(cronograma2.Oid, "Tarefa 02", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas2, ref dataHoraAcao, 3, lstCronoTarefa2[0].NbID); lstCronoTarefa2 = contexto.CronogramaTarefa.Where(o => o.OidCronograma == cronograma2.Oid).ToList(); Assert.IsNotNull(lstCronoTarefa1); Assert.AreEqual(3, lstCronoTarefa1.Count); Assert.AreEqual(2, tarefasImpactadas1.Count); Assert.IsNotNull(lstCronoTarefa2); Assert.AreEqual(2, lstCronoTarefa2.Count); }
public void ConsultarCronogramaTarefasPorOidTest() { SituacaoPlanejamento situacaoPlanejamento = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S1", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Execução, CsPadraoSistema.Sim, true); Cronograma cronograma1 = CronogramaFactoryEntity.CriarCronograma(contexto, "Cronograma 01", situacaoPlanejamento, new DateTime(), new DateTime(), true); Colaborador colaborador1 = ColaboradorFactoryEntity.CriarColaborador(contexto, "anderson.lins", true); string responsaveis = colaborador1.NomeCompleto; DateTime dtInicio = DateTime.Now; List <Guid> oidTarefas = new List <Guid>(); List <CronogramaTarefa> tarefasImpactadas; DateTime dataHoraAcao = new DateTime(); CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 01", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas, ref dataHoraAcao, 3, 0); List <CronogramaTarefa> lstCronoTarefas = CronogramaTarefaDao.ConsultarCronogramaTarefasPorOidCronograma(cronograma1.Oid, o => o.Tarefa.SituacaoPlanejamento, o => o.Tarefa.AtualizadoPor.Usuario.Person, o => o.Cronograma); CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 02", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas, ref dataHoraAcao, 3, lstCronoTarefas[0].NbID); lstCronoTarefas = CronogramaTarefaDao.ConsultarCronogramaTarefasPorOidCronograma(cronograma1.Oid, o => o.Tarefa.SituacaoPlanejamento, o => o.Tarefa.AtualizadoPor.Usuario.Person, o => o.Cronograma); CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 03", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas, ref dataHoraAcao, 3, lstCronoTarefas[1].NbID); lstCronoTarefas = CronogramaTarefaDao.ConsultarCronogramaTarefasPorOidCronograma(cronograma1.Oid, o => o.Tarefa.SituacaoPlanejamento, o => o.Tarefa.AtualizadoPor.Usuario.Person, o => o.Cronograma); CronogramaBo.CriarTarefa(cronograma1.Oid, "Tarefa 04", situacaoPlanejamento.Oid.ToString(), dtInicio, colaborador1.Usuario.UserName, "Criar método", responsaveis, out tarefasImpactadas, ref dataHoraAcao, 3, lstCronoTarefas[2].NbID); lstCronoTarefas = CronogramaTarefaDao.ConsultarCronogramaTarefasPorOidCronograma(cronograma1.Oid, o => o.Tarefa.SituacaoPlanejamento, o => o.Tarefa.AtualizadoPor.Usuario.Person, o => o.Cronograma); oidTarefas.Add(lstCronoTarefas[0].Oid); oidTarefas.Add(lstCronoTarefas[2].Oid); //realiza a busca pelas tarefas de acordo com a lista de oids passados e o cronograma. List <CronogramaTarefa> lstTarefasResult = CronogramaTarefaDao.ConsultarCronogramaTarefasPorOid(oidTarefas, o => o.Tarefa.SituacaoPlanejamento, o => o.Tarefa.AtualizadoPor.Usuario.Person, o => o.Cronograma); //verifica se as tarefas são as mesmas e a quantidade é a mesma. Assert.AreEqual(2, lstTarefasResult.Count); Assert.AreEqual(lstCronoTarefas[0].Oid, lstTarefasResult[0].Oid, "Deveria ser o mesmo CronogramaTarefa"); Assert.AreEqual(lstCronoTarefas[0].OidCronograma, lstTarefasResult[0].OidCronograma, "Deveriam estar no mesmo cronograma"); Assert.AreEqual(lstCronoTarefas[0].OidTarefa, lstTarefasResult[0].OidTarefa, "Deveriam estar relacionadas a mesma tarefa"); Assert.AreEqual(lstCronoTarefas[0].NbID, lstTarefasResult[0].NbID, "Deveria estar com o mesmo NbId"); Assert.AreEqual(lstCronoTarefas[0].CsExcluido, lstTarefasResult[0].CsExcluido, "Deveriam estar com o mesmo estado de exclusão"); Assert.AreEqual(lstCronoTarefas[2].Oid, lstTarefasResult[1].Oid, "Deveria ser o mesmo CronogramaTarefa"); Assert.AreEqual(lstCronoTarefas[2].OidCronograma, lstTarefasResult[1].OidCronograma, "Deveriam estar no mesmo cronograma"); Assert.AreEqual(lstCronoTarefas[2].OidTarefa, lstTarefasResult[1].OidTarefa, "Deveriam estar relacionadas a mesma tarefa"); Assert.AreEqual(lstCronoTarefas[2].NbID, lstTarefasResult[1].NbID, "Deveria estar com o mesmo NbId"); Assert.AreEqual(lstCronoTarefas[2].CsExcluido, lstTarefasResult[1].CsExcluido, "Deveriam estar com o mesmo estado de exclusão"); }