/// <summary> /// Método responsável por construir um objeto novaTarefaDto a partir de dados vindos de uma hash. /// </summary> /// <param name="dadosTarefa">Hash contendo os dados relevantes de uma tarefa que foi criada</param> /// <returns>Retorna um DTO com o Oid, NbId, lista de tarefas impactadas, data da atualização e quem atualizou a tarefa</returns> public static TarefaCriadaDto TarefaCriadaDtoFactory(CronogramaTarefa novaTarefa, List <CronogramaTarefa> impactadas, DateTime dataHoraAcao) { TarefaCriadaDto tarefa = new TarefaCriadaDto() { OidCronogramaTarefa = novaTarefa.Oid, OidCronograma = (Guid)novaTarefa.OidCronograma, OidTarefa = novaTarefa.Tarefa.Oid, NbIdTarefa = novaTarefa.NbID, TarefasImpactadas = impactadas.ToDictionary(o => o.Oid.ToString(), o => o.NbID), CsLinhaBaseSalva = novaTarefa.Tarefa.CsLinhaBaseSalva, DtInicio = (DateTime)novaTarefa.Tarefa.DtInicio, NbEstimativaInicial = novaTarefa.Tarefa.NbEstimativaInicial, NbEstimativaRestante = novaTarefa.Tarefa.NbEstimativaRestante, NbRealizado = novaTarefa.Tarefa.NbRealizado, OidSituacaoPlanejamentoTarefa = novaTarefa.Tarefa.SituacaoPlanejamento.Oid, TxDescricaoColaborador = novaTarefa.Tarefa.TxResponsaveis, TxDescricaoSituacaoPlanejamentoTarefa = novaTarefa.Tarefa.SituacaoPlanejamento.TxDescricao, TxDescricaoTarefa = novaTarefa.Tarefa.TxDescricao, TxObservacaoTarefa = novaTarefa.Tarefa.TxObservacao, DtAtualizadoEm = (DateTime)novaTarefa.Tarefa.DtAtualizadoEm, TxAtualizadoPor = novaTarefa.Tarefa.AtualizadoPor.NomeCompleto, dataHoraAcao = dataHoraAcao, }; return(tarefa); }
/// <summary> /// Método responsável pelo comportamento ao receber o retorno assincrono da criação da nova tarefa /// </summary> /// <param name="response"></param> /// <param name="handle"></param> private void CriarNovaTarefaCallBack(IRestResponse <TarefaCriadaDto> response, RestRequestAsyncHandle handle) { if (response.ResponseStatus == ResponseStatus.Completed) { TarefaCriadaDto novaTarefa = DeserializarResposta(response); if (novaTarefa != null) { if (AoCompletarSolicitacaoCriarNovaTarefa != null) { AoCompletarSolicitacaoCriarNovaTarefa(novaTarefa); } } } }