public List <AlteracaoStatusNotificacaoDto> Excluir(IList <long> notificacoesId) { if (notificacoesId == null) { throw new NegocioException("A lista de notificações deve ser informada."); } var resultado = new List <AlteracaoStatusNotificacaoDto>(); foreach (var notificacaoId in notificacoesId) { try { Notificacao notificacao = ObterPorIdENotificarCasoNaoExista(notificacaoId); notificacao.Remover(); repositorioNotificacao.Salvar(notificacao); resultado.Add(new AlteracaoStatusNotificacaoDto($"Notificação com Código: '{notificacao.Codigo}' excluída com sucesso.", true)); } catch (NegocioException nex) { resultado.Add(new AlteracaoStatusNotificacaoDto(nex.Message, false)); } catch (Exception) { resultado.Add(new AlteracaoStatusNotificacaoDto($"Não foi possível excluir a notificação com id: '{notificacaoId}'", false)); } } return(resultado); }
private void AtualizaNiveis(IEnumerable <WorkflowAprovacaoNivel> niveis) { foreach (var nivel in niveis) { workflowAprovacaoNivel.Salvar(nivel); foreach (var notificacao in nivel.Notificacoes) { repositorioNotificacao.Salvar(notificacao); } } }
public NotificacaoDetalheDto Obter(long notificacaoId) { var notificacao = repositorioNotificacao.ObterPorId(notificacaoId); if (notificacao == null) { throw new NegocioException($"Notificação de Id: '{notificacaoId}' não localizada."); } if (notificacao.Status != NotificacaoStatus.Lida && notificacao.MarcarComoLidaAoObterDetalhe()) { repositorioNotificacao.Salvar(notificacao); } var retorno = MapearEntidadeParaDetalheDto(notificacao); return(retorno); }
public void Salvar(Notificacao notificacao) { GeraNovoCodigo(notificacao); repositorioNotificacao.Salvar(notificacao); }