예제 #1
0
        public async Task <long> Handle(NotificarUsuarioCommand request, CancellationToken cancellationToken)
        {
            var usuarioId = await mediator.Send(new ObterOuAdicionarUsuarioIdCommand(request.UsuarioRf, request.NomeUsuario));

            var notificacao = new Notificacao()
            {
                Codigo    = request.Codigo == 0 ? ObtemNovoCodigo() : request.Codigo,
                Titulo    = request.Titulo,
                Mensagem  = request.Mensagem,
                DreId     = request.DreCodigo,
                UeId      = request.UeCodigo,
                TurmaId   = request.TurmaCodigo,
                Ano       = request.Ano,
                Categoria = request.Categoria,
                Tipo      = request.Tipo,
                UsuarioId = usuarioId,
            };

            if (request.CriadoEm.HasValue)
            {
                notificacao.CriadoEm = request.CriadoEm.Value;
            }

            return(await repositorioNotificacao.SalvarAsync(notificacao));
        }
예제 #2
0
        public async Task <AuditoriaDto> Handle(AlterarNotificacaoDiarioBordoCommand request, CancellationToken cancellationToken)
        {
            var notificacaoObs = await repositorioDiarioBordoObservacaoNotificacao.ObterPorObservacaoUsuarioId(request.ObservacaoId, request.UsuarioId);

            var notificacao = await repositorioNotificacao.ObterPorIdAsync(notificacaoObs.IdNotificacao);

            notificacao.Mensagem = "O usuário foi removido da observação direcionada.";

            await repositorioNotificacao.SalvarAsync(notificacao);

            return((AuditoriaDto)notificacao);
        }
예제 #3
0
        public async Task <bool> Handle(EnviarNotificacaoUsuariosCommand request, CancellationToken cancellationToken)
        {
            foreach (var usuario in request.Usuarios)
            {
                var notificacao = new Notificacao()
                {
                    Codigo    = ObtemNovoCodigo(),
                    Ano       = DateTime.Today.Year,
                    Categoria = request.CategoriaNotificacao,
                    Tipo      = request.TipoNotificacao,
                    DreId     = request.DreCodigo,
                    UeId      = request.UeCodigo,
                    TurmaId   = request.TurmaCodigo,
                    Titulo    = request.Titulo,
                    Mensagem  = request.Mensagem,
                    UsuarioId = usuario
                };

                await repositorioNotificacao.SalvarAsync(notificacao);
            }

            return(true);
        }
        public async Task SalvarAsync(Notificacao notificacao)
        {
            GeraNovoCodigo(notificacao);

            await repositorioNotificacao.SalvarAsync(notificacao);
        }