Ejemplo n.º 1
0
        protected override async Task ExecuteAsync(CancellationToken stoppingToken)
        {
            await Task.Delay(120000, stoppingToken);

            while (!stoppingToken.IsCancellationRequested)
            {
                try
                {
                    var notificacao             = new DomainNotificationHandler();
                    var _iAgendamentoRepository = new AgendamentoRepository(notificacao);

                    //Caso haja exceção na instância do BD, notifica erro
                    if (notificacao.HasNotifications())
                    {
                        Serilog.Log.Logger.Error($"Worker error at: {notificacao.GetShowNotifications().FirstOrDefault()}", DateTimeOffset.Now);
                        notificacao.Dispose();
                    }
                    else
                    {
                        var agendamentos = _iAgendamentoRepository.BuscarAgendamentos();

                        //Caso haja exceção na consulta dos agendamentos no banco, notifica erro
                        if (notificacao.HasNotifications())
                        {
                            Serilog.Log.Logger.Error($"Worker error at: {notificacao.GetShowNotifications().FirstOrDefault()}", DateTimeOffset.Now);
                            notificacao.Dispose();
                        }

                        //processa os agendamentos encontrados
                        agendamentos?.ToList().ForEach(agendamento =>
                        {
                            //Start Processamento
                            new ProcessaService(notificacao).IniciarProcessamento(agendamento);

                            //Caso haja exceção na consulta dos agendamentos no banco, notifica erro
                            if (notificacao.HasNotifications())
                            {
                                Serilog.Log.Logger.Error($"Worker error at: {notificacao.GetShowNotifications().FirstOrDefault()}", DateTimeOffset.Now);
                                notificacao.Dispose();
                            }
                        });
                    }
                }
                catch (Exception ex)
                {
                    Serilog.Log.Logger.Error($"Worker error at: {ex.Message}", DateTimeOffset.Now);
                }
            }
        }
        public async Task <IViewComponentResult> InvokeAsync()
        {
            var notificacoes = await Task.FromResult(_notification.ObterNotificacoes());

            notificacoes.ForEach(c => ViewData.ModelState.AddModelError(string.Empty, c.Value));

            if (notificacoes.Any())
            {
                _notification.Dispose();
            }

            return(View());
        }
Ejemplo n.º 3
0
        public static TResponse checkHasNotification(DomainNotificationHandler _notifications, TResponse response)
        {
            if (_notifications.HasNotifications())
            {
                if (_notifications.GetNotifications().Any(x => x.ResultCode == NotificationCode.Error))
                {
                    foreach (var item in _notifications.GetNotifications())
                    {
                        response.Message += item.request + "; ";
                    }
                }

                _notifications.Dispose();
                response.Success = false;
                response.Status  = (int)StatusCode.Error;
            }
            else
            {
                response.Status  = (int)StatusCode.Success;
                response.Message = StatusCode.Success.ToString();
                response.Success = true;
            }
            return(response);
        }
Ejemplo n.º 4
0
 protected void LimparMensagens()
 {
     _DomainNotificationHandler.Dispose();
 }
 public void Dispose()
 {
     _notifications.Dispose();
 }