public void DadoQueExistaATarefa(Table table) { TarefaEstimativaHelper tarefaHelper = table.CreateInstance <TarefaEstimativaHelper>(); tarefaAtual = planejamentoServiceStub.CriarTarefa(tarefaHelper.Descricao); tarefaAtual.NbEstimativaInicial = tarefaHelper.EstimativaInicial; tarefaAtual.NbRealizado = ConversorTimeSpan.ConverterHorasDeStringParaTicks(tarefaHelper.Realizado); tarefaAtual.NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks(tarefaHelper.Restante); }
public void DevePermitirEdicaoSituacaoPlanejamentoParaAndamentoApenasQuandoPossuirHorasParaConsumir() { CronogramaTarefaDto novaTarefa = new CronogramaTarefaDto() { CsLinhaBaseSalva = false, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 0, NbEstimativaRestante = 0, NbRealizado = 0, }; CronogramaTarefaDto novaTarefaComEstimativa = new CronogramaTarefaDto() { CsLinhaBaseSalva = false, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks("8:00"), NbRealizado = 0, }; CronogramaTarefaDto tarefaConsumidaParcialmente = new CronogramaTarefaDto() { CsLinhaBaseSalva = true, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks("4:00"), NbRealizado = ConversorTimeSpan.ConverterHorasDeStringParaTicks("4:00"), }; CronogramaTarefaDto tarefaPronta = new CronogramaTarefaDto() { CsLinhaBaseSalva = true, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = 0, NbRealizado = ConversorTimeSpan.ConverterHorasDeStringParaTicks("8:00"), }; CronogramaTarefaDto tarefaCancelada = new CronogramaTarefaDto() { CsLinhaBaseSalva = false, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = 0, NbRealizado = 0, }; string mensagem; Assert.IsFalse(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(novaTarefa, CsTipoPlanejamento.Execução, out mensagem), "Não deveria permitir setar a situação como execução pois não foi estimada uma quantidade de horas a ser realizada a tarefa."); Assert.IsTrue(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(novaTarefaComEstimativa, CsTipoPlanejamento.Execução, out mensagem), "Deveria permitir setar a situação como execução pois foi estimada uma quantidade de horas a ser realizada a tarefa."); Assert.IsTrue(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(tarefaConsumidaParcialmente, CsTipoPlanejamento.Execução, out mensagem), "Deveria permitir setar a situação como execução pois ainda há horas restantes para executar a tarefa."); Assert.IsFalse(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(tarefaPronta, CsTipoPlanejamento.Execução, out mensagem), "Não deveria permitir setar a situação como execução pois foram consumidas todas as horas de execução da tarefa."); Assert.IsFalse(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(tarefaCancelada, CsTipoPlanejamento.Execução, out mensagem), "Não deveria permitir setar a situação como execução pois após o cancelamento não há horas restantes para trabalhar na tarefa."); }
public void ConverterHorasDeStringParaTicksTest() { long estimativaAtual, estimativaEsperada; estimativaEsperada = 361200000000; estimativaAtual = ConversorTimeSpan.ConverterHorasDeStringParaTicks("10:02"); Assert.AreEqual(estimativaEsperada, estimativaAtual, "A estimativa convertida deveria ser a mesma da estimativaAtual"); estimativaEsperada = 180000000000; estimativaAtual = ConversorTimeSpan.ConverterHorasDeStringParaTicks("5:00"); Assert.AreEqual(estimativaEsperada, estimativaAtual, "A estimativa convertida deveria ser a mesma da estimativaAtual"); }
public void HouveMudancasEsforcoRealizadoModificadaTest() { CronogramaTarefaGridItem tarefaAtual; Guid oidCronograma = Guid.NewGuid(); Guid oidSituacaoPlanejamento = Guid.NewGuid(); tarefaAtual = CriarTarefa(oidCronograma, oidSituacaoPlanejamento); TarefaEditada tarefaEmEdicao = new TarefaEditada(tarefaAtual); tarefaAtual.NbRealizado = 0; Assert.IsFalse(tarefaEmEdicao.HouveMudancas(tarefaAtual), "As mudanças nulas não devem ser registradas"); tarefaAtual.NbRealizado = ConversorTimeSpan.ConverterHorasDeStringParaTicks("12:00"); Assert.IsTrue(tarefaEmEdicao.HouveMudancas(tarefaAtual), "Deveria alertar que houve mudança, pois foi modificado esforço realizado da tarefa"); }
/// <summary> /// Método responsável por selecionar o periodo de trabalho do dia atual /// </summary> public void SelecionarPeriodoTrabalhoDiaAtual() { if (DiaTrabalhoAtual != null) { PeriodosDeTrabalho = DiaTrabalhoAtual.PeriodosTrabalho.OrderBy(o => ConversorTimeSpan.ConverterHorasDeStringParaTicks(o.HoraInicial)).ToArray(); HoraInicioExpediente = new TimeSpan(PeriodosDeTrabalho.Min(o => ConversorTimeSpan.ConverterHorasDeStringParaTicks(o.HoraInicial))); HoraFinalExpediente = new TimeSpan(PeriodosDeTrabalho.Max(o => ConversorTimeSpan.ConverterHorasDeStringParaTicks(o.HoraFinal))); } else { PeriodoTrabalhoDto periodo = new PeriodoTrabalhoDto("08:00", "18:00"); PeriodosDeTrabalho = new PeriodoTrabalhoDto[1]; PeriodosDeTrabalho[0] = periodo; } }
public void DevePermitirEdicaoSituacaoPlanejamentoParaProntoSePossuirEstimativaInicial() { CronogramaTarefaDto novaTarefa = new CronogramaTarefaDto() { CsLinhaBaseSalva = false, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 0, NbEstimativaRestante = 0, NbRealizado = 0, }; CronogramaTarefaDto novaTarefaComEstimativa = new CronogramaTarefaDto() { CsLinhaBaseSalva = false, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks("8:00"), NbRealizado = 0, }; CronogramaTarefaDto tarefaConsumidaParcialmente = new CronogramaTarefaDto() { CsLinhaBaseSalva = true, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks("4:00"), NbRealizado = ConversorTimeSpan.ConverterHorasDeStringParaTicks("4:00"), }; CronogramaTarefaDto tarefaCanceladaParcialmenteRealizada = new CronogramaTarefaDto() { CsLinhaBaseSalva = false, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks("6:00"), NbRealizado = ConversorTimeSpan.ConverterHorasDeStringParaTicks("2:00"), }; string mensagem; Assert.IsFalse(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(novaTarefa, CsTipoPlanejamento.Encerramento, out mensagem), "Não deve permitir ir para o estado de pronto pois não possui uma estimativa inicial de duração"); Assert.IsTrue(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(novaTarefaComEstimativa, CsTipoPlanejamento.Encerramento, out mensagem), "Deve permitir pois a tarefa já possui uma estimativa inicial de duração."); Assert.IsTrue(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(tarefaConsumidaParcialmente, CsTipoPlanejamento.Encerramento, out mensagem), "Deve permitir pois a tarefa já possui uma estimativa inicial de duração"); Assert.IsTrue(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(tarefaCanceladaParcialmenteRealizada, CsTipoPlanejamento.Encerramento, out mensagem), "Deve permitir a edição pois a tarefa já possui uma estimativa inicial de duração."); }
/// <summary> /// Método responsável por selecionar o periodo de trabalho do dia atual /// </summary> public PeriodoTrabalhoDto[] SelecionarPeriodoTrabalhoDiaAtual(DiaTrabalhoDto diaTrabalho, out TimeSpan horaInicioExpediente, out TimeSpan horaFimExpediente) { PeriodoTrabalhoDto[] periodos; if (diaTrabalho != null) { periodos = diaTrabalho.PeriodosTrabalho.OrderBy(o => ConversorTimeSpan.ConverterHorasDeStringParaTicks(o.HoraInicial)).ToArray(); horaInicioExpediente = new TimeSpan(periodos.Min(o => ConversorTimeSpan.ConverterHorasDeStringParaTicks(o.HoraInicial))); horaFimExpediente = new TimeSpan(periodos.Max(o => ConversorTimeSpan.ConverterHorasDeStringParaTicks(o.HoraFinal))); } else { PeriodoTrabalhoDto periodo = new PeriodoTrabalhoDto("08:00", "18:00"); horaInicioExpediente = new TimeSpan(8, 0, 0); horaFimExpediente = new TimeSpan(18, 0, 0); periodos = new PeriodoTrabalhoDto[] { periodo }; } return(periodos); }
/// <summary> /// Método para preencher uma inicialização do dia selecionado /// </summary> /// <param name="semanaTrabalho">semana de trabalho do colaborador</param> /// <param name="dataSelecionada">data de selecao</param> /// <returns></returns> private static InicializadorEstimativaDto PreencherInicializacaoDiaSelecionado(SemanaTrabalho semanaTrabalho, DateTime dataSelecionada) { InicializadorEstimativaDto inicializadorDto = new InicializadorEstimativaDto(); if (SemanaTrabalhoBo.DiaAtualPossuiPeriodoTrabalho(semanaTrabalho, dataSelecionada.DayOfWeek)) { inicializadorDto.DataEstimativa = dataSelecionada; DiaTrabalho dia = SemanaTrabalhoDao.SelecionarDiaTrabalho(semanaTrabalho, dataSelecionada.DayOfWeek); long ticks = dia.PeriodosDeTrabalho.Min(o => ConversorTimeSpan.ConverterHorasDeStringParaTicks(o.HoraInicial)); inicializadorDto.HoraInicialEstimativa = new TimeSpan(ticks); } else { inicializadorDto = new InicializadorEstimativaDto() { DataEstimativa = dataSelecionada, HoraInicialEstimativa = new TimeSpan(8, 0, 0) } }; inicializadorDto.DiaAtual = TarefaHistoricoTrabalhoDao.ConsultarDiaAtualDeTrabalhoDto(dataSelecionada.DayOfWeek, semanaTrabalho); return(inicializadorDto); }
/// <summary> /// Método responsável por efetuar a seleção da hora de inicio da estimativa de uma tarefa para o colaborador /// </summary> /// <param name="contexto">sessão atual do banco</param> /// <param name="loginColaborador">login do colaborador atual</param> /// <returns>tarefaHistorico preenchida com</returns> public static InicializadorEstimativaDto SelecionarInicializadorEstimativaDto(string loginColaborador, DateTime dataSolicitacao, SemanaTrabalho semanaTrabalho) { WexDb contexto = ContextFactoryManager.CriarWexDb(); TarefaHistoricoTrabalho ultimoHistoricoTrabalho = TarefaHistoricoTrabalhoDao.ConsultarUltimoEsforcoRealizadoColaborador(contexto, loginColaborador, dataSolicitacao); InicializadorEstimativaDto inicializadorEstimativaDto = new InicializadorEstimativaDto(); DateTime dataSelecionada; if (!ValidarTarefaHistoricoTrabalho(ultimoHistoricoTrabalho)) { dataSelecionada = dataSolicitacao.Date; SelecionarDataDiaUtilInicial(semanaTrabalho, ref dataSelecionada); return(PreencherInicializacaoDiaSelecionado(semanaTrabalho, dataSelecionada)); } bool ultrapassouLimiteDia = ultimoHistoricoTrabalho.HoraFinal.Days > 0; dataSelecionada = new DateTime(ultimoHistoricoTrabalho.DtRealizado.Ticks); if (ultrapassouLimiteDia) { dataSelecionada = SelecionarDataProximoDiaUtil(semanaTrabalho, dataSelecionada); return(PreencherInicializacaoDiaSelecionado(semanaTrabalho, dataSelecionada)); } SelecionarDataDiaUtilInicial(semanaTrabalho, ref dataSelecionada); if (dataSelecionada.Equals(dataSolicitacao.Date)) { if (dataSelecionada.Equals(ultimoHistoricoTrabalho.DtRealizado)) { inicializadorEstimativaDto.DataEstimativa = dataSelecionada; inicializadorEstimativaDto.HoraInicialEstimativa = ultimoHistoricoTrabalho.HoraFinal; inicializadorEstimativaDto.DiaAtual = TarefaHistoricoTrabalhoDao.ConsultarDiaAtualDeTrabalhoDto(dataSelecionada.DayOfWeek, semanaTrabalho); return(inicializadorEstimativaDto); } return(PreencherInicializacaoDiaSelecionado(semanaTrabalho, dataSelecionada)); } else { if (SemanaTrabalhoBo.DiaAtualPossuiPeriodoTrabalho(semanaTrabalho, dataSelecionada.DayOfWeek)) { DiaTrabalho dia = SemanaTrabalhoDao.SelecionarDiaTrabalho(semanaTrabalho, dataSelecionada.DayOfWeek); long ticks = dia.PeriodosDeTrabalho.Max(o => ConversorTimeSpan.ConverterHorasDeStringParaTicks(o.HoraFinal)); TimeSpan horaFinalExpediente = new TimeSpan(ticks); if (ultimoHistoricoTrabalho.HoraFinal >= horaFinalExpediente) { dataSelecionada = SelecionarDataProximoDiaUtil(semanaTrabalho, dataSelecionada); return(PreencherInicializacaoDiaSelecionado(semanaTrabalho, dataSelecionada)); } if (dataSelecionada.Equals(ultimoHistoricoTrabalho.DtRealizado)) { inicializadorEstimativaDto.DataEstimativa = dataSelecionada; inicializadorEstimativaDto.HoraInicialEstimativa = ultimoHistoricoTrabalho.HoraFinal; inicializadorEstimativaDto.DiaAtual = TarefaHistoricoTrabalhoDao.ConsultarDiaAtualDeTrabalhoDto(dataSelecionada.DayOfWeek, semanaTrabalho); return(inicializadorEstimativaDto); } return(PreencherInicializacaoDiaSelecionado(semanaTrabalho, dataSelecionada)); } else { inicializadorEstimativaDto.DataEstimativa = dataSolicitacao.Date; inicializadorEstimativaDto.HoraInicialEstimativa = new TimeSpan(8, 0, 0); inicializadorEstimativaDto.DiaAtual = TarefaHistoricoTrabalhoDao.ConsultarDiaAtualDeTrabalhoDto(dataSolicitacao.DayOfWeek, semanaTrabalho); } return(inicializadorEstimativaDto); } }
public void RnValidarTarefaEditadaQuandoSituacaoEEstimativasSejamAlteradasTest() { //cria situação planejamento SituacaoPlanejamento situacaoPlanejamento1 = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S1", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Execução, CsPadraoSistema.Sim, true); //cria situação planejamento SituacaoPlanejamento situacaoPlanejamento2 = CronogramaFactoryEntity.CriarSituacaoPlanejamento(contexto, "S2", CsTipoSituacaoPlanejamento.Ativo, CsTipoPlanejamento.Cancelamento, CsPadraoSistema.Não, true); //cria cronograma Cronograma cronograma1 = CronogramaFactoryEntity.CriarCronograma(contexto, "Cronograma 01", situacaoPlanejamento1, new DateTime(), new DateTime(), true); //cria colaborador Colaborador colaborador1 = ColaboradorFactoryEntity.CriarColaborador(contexto, "anderson.lins", true); //adiciona colaborador como responsável pela tarefa string responsaveis = colaborador1.NomeCompleto; List <CronogramaTarefa> tarefasImpactadas; DateTime dataHoraAcao = new DateTime(); //cria tarefa a partir da RnIncluirTarefa em CronogramaTarefa CronogramaTarefa novaTarefa = CronogramaTarefaBo.CriarCronogramaTarefa(cronograma1.Oid, "Tarefa 01", situacaoPlanejamento1, DateTime.Now, responsaveis, colaborador1.Usuario.UserName, out tarefasImpactadas, ref dataHoraAcao, "Criar método1", 3, 0); //recupera a tarefa criada CronogramaTarefa tarefa = CronogramaTarefaDao.ConsultarCronogramaTarefaPorOid(novaTarefa.Oid, o => o.Tarefa.SituacaoPlanejamento); //criar um Dto da tarefa e repassa as informações para poder utilizar o método que está sendo testado CronogramaTarefaGridItem tarefaDto = new CronogramaTarefaGridItem(); tarefaDto.OidCronogramaTarefa = tarefa.Oid; tarefaDto.TxDescricaoSituacaoPlanejamentoTarefa = tarefa.Tarefa.SituacaoPlanejamento.TxDescricao; tarefaDto.NbEstimativaInicial = tarefa.Tarefa.NbEstimativaInicial; tarefaDto.NbEstimativaRestante = tarefa.Tarefa.NbEstimativaRestante; //adiciona tarefa na lista de tarefas antigas (antes de serem alteradas) List <CronogramaTarefaGridItem> tarefasAntigas = new List <CronogramaTarefaGridItem>(); tarefasAntigas.Add(tarefaDto); //cria uma tarefa Dto alterada e modifica o campo situação de planejamento CronogramaTarefaGridItem tarefaDtoAlterada = new CronogramaTarefaGridItem(); tarefaDtoAlterada.OidCronogramaTarefa = tarefaDto.OidCronogramaTarefa; tarefaDtoAlterada.TxDescricaoSituacaoPlanejamentoTarefa = situacaoPlanejamento2.TxDescricao; tarefaDtoAlterada.NbEstimativaInicial = 18; tarefaDtoAlterada.NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks("5:00"); //adiciona a tarefa na lista de tarefas modificadas. List <CronogramaTarefaGridItem> tarefasAtualizadas = new List <CronogramaTarefaGridItem>(); tarefasAtualizadas.Add(tarefaDtoAlterada); //valida os campos alterados Hashtable camposAlterados = TarefaEditada.ValidarCamposRelevantesAlterados(tarefasAntigas, tarefasAtualizadas); List <int> campos = new List <int>(); campos = (List <int>)camposAlterados[tarefaDto.OidCronogramaTarefa]; Assert.AreEqual(3, campos.Count, "Deveriam ter sido alterados 3 campos."); Assert.AreEqual((int)CsTipoCampoEditado.SituacaoPlanejamento, campos[0], "O campo alterado deveria ser do mesmo Tipo"); Assert.AreEqual((int)CsTipoCampoEditado.EstimativaInicial, campos[1], "O campo alterado deveria ser do mesmo Tipo"); Assert.AreEqual((int)CsTipoCampoEditado.EstimativaRestante, campos[2], "O campo alterado deveria ser do mesmo Tipo"); Assert.AreNotEqual(tarefaDto.TxDescricaoSituacaoPlanejamentoTarefa, tarefaDtoAlterada.TxDescricaoSituacaoPlanejamentoTarefa, "Não deveriam ser iguais, pois o campo foi alterado."); Assert.AreNotEqual(tarefaDto.NbEstimativaInicial, tarefaDtoAlterada.NbEstimativaInicial, "Não deveriam ser iguais, pois o campo foi alterado."); Assert.AreNotEqual(tarefaDto.NbEstimativaRestante, tarefaDtoAlterada.NbEstimativaRestante, "Não deveriam ser iguais, pois o campo foi alterado."); }
public void DevePermitirEdicaoSituacaoPlanejamentoParaNaoIniciadoApenasQuandoNaoFoiRealizadoNenhumEsforco() { CronogramaTarefaDto novaTarefa = new CronogramaTarefaDto() { CsLinhaBaseSalva = false, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 0, NbEstimativaRestante = 0, NbRealizado = 0, }; CronogramaTarefaDto novaTarefaComEstimativa = new CronogramaTarefaDto() { CsLinhaBaseSalva = false, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks("8:00"), NbRealizado = 0, }; CronogramaTarefaDto tarefaConsumidaParcialmente = new CronogramaTarefaDto() { CsLinhaBaseSalva = true, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks("4:00"), NbRealizado = ConversorTimeSpan.ConverterHorasDeStringParaTicks("4:00"), }; CronogramaTarefaDto tarefaPronta = new CronogramaTarefaDto() { CsLinhaBaseSalva = true, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = 0, NbRealizado = ConversorTimeSpan.ConverterHorasDeStringParaTicks("8:00"), }; CronogramaTarefaDto tarefaCancelada = new CronogramaTarefaDto() { CsLinhaBaseSalva = false, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = 0, NbRealizado = 0, }; CronogramaTarefaDto tarefaCanceladaParcialmenteRealizada = new CronogramaTarefaDto() { CsLinhaBaseSalva = false, DtAtualizadoEm = DateTime.Now, NbEstimativaInicial = 8, NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks("6:00"), NbRealizado = ConversorTimeSpan.ConverterHorasDeStringParaTicks("2:00"), }; string mensagem; Assert.IsTrue(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(novaTarefa, CsTipoPlanejamento.Planejamento, out mensagem), "Deve poder estar na situação de não iniciado pois não foi realizado nenhum esforço"); Assert.IsTrue(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(novaTarefaComEstimativa, CsTipoPlanejamento.Planejamento, out mensagem), "Deve poder estar na situação de não iniciado pois não foi realizado nenhum esforço."); Assert.IsFalse(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(tarefaConsumidaParcialmente, CsTipoPlanejamento.Planejamento, out mensagem), "Não deve poder estar na situação de não iniciado pois foi estimado um esforço realizado."); Assert.IsFalse(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(tarefaPronta, CsTipoPlanejamento.Planejamento, out mensagem), "Não deve poder estar na situação de não iniciado pois a tarefa já foi executada."); Assert.IsTrue(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(tarefaCancelada, CsTipoPlanejamento.Planejamento, out mensagem), "Deve poder estar na situação de não iniciado pois não foi realizado nenhum esforço."); Assert.IsFalse(TarefaEditada.ValidarEdicaoSituacaoPlanejamento(tarefaCanceladaParcialmenteRealizada, CsTipoPlanejamento.Planejamento, out mensagem), "Não deve poder estar na situação de não iniciado pois foi realizado um esforço parcial na tarefa."); }
public CronogramaTarefaDecoratorBuilder Realizado(string estimativa) { tarefaAtual.NbRealizado = ConversorTimeSpan.ConverterHorasDeStringParaTicks(estimativa); return(this); }
public CronogramaTarefaDecoratorBuilder EstimativaRestante(string estimativa) { tarefaAtual.NbEstimativaRestante = ConversorTimeSpan.ConverterHorasDeStringParaTicks(estimativa); return(this); }