Example #1
0
        protected override async Task Handle(ArquivarTurmasCommand request, CancellationToken cancellationToken)
        {
            var cursosEol = await mediator.Send(new ObterTurmasConcluidasPorAnoLetivoQuery(request.ParametrosCargaInicialDto, request.AnoLetivo, request.TurmaId));

            foreach (var curso in cursosEol)
            {
                var dto = new ArquivarTurmaDto(curso.TurmaId, DateTime.Now, false);

                await mediator.Send(new PublicaFilaRabbitCommand(RotasRabbit.FilaCursoArquivarTratar, dto));
            }
        }
        protected override async Task Handle(ArquivarTurmasExtintasCommand request, CancellationToken cancellationToken)
        {
            var dataReferencia   = request.DataReferencia ?? DateTime.Today;
            var ano              = dataReferencia.Year;
            var parametroSistema = await ObterParametroDeSistema(ano);

            var dataInicio = await mediator.Send(new ObterDataUltimaExecucaoPorTipoQuery(ExecucaoTipo.ArquivarCursosTurmasExtintas));

            var dataFim        = DateTime.Today;
            var turmasExtintas = await mediator.Send(new ObterCursosExtintosPorPeriodoQuery(request.ParametrosCargaInicialDto, dataInicio, dataFim, ano, request.TurmaId));

            foreach (var item in turmasExtintas)
            {
                var dto = new ArquivarTurmaDto(item.TurmaId, item.DataExtincao, DefinaExclusaoOuArquivamento(item.DataExtincao, DateTime.Parse(parametroSistema.Valor)));

                await mediator.Send(new PublicaFilaRabbitCommand(RotasRabbit.FilaCursoArquivarTratar, dto));
            }
        }