Exemplo n.º 1
0
        private void CriarEventoFechamento(PeriodoFechamento fechamento)
        {
            if (fechamento.UeId > 0)
            {
                var tipoEvento = repositorioTipoEvento.ObterTipoEventoPorTipo(TipoEvento.FechamentoBimestre);
                if (tipoEvento == null)
                {
                    throw new NegocioException("Tipo de evento de fechamento de bimestre não encontrado na base de dados.");
                }

                foreach (var bimestre in fechamento.FechamentosBimestre)
                {
                    EventoFechamento fechamentoExistente = repositorioEventoFechamento.ObterPorIdFechamento(bimestre.Id);

                    if (fechamentoExistente != null)
                    {
                        AtualizaEventoDeFechamento(bimestre, fechamentoExistente);
                    }
                    else
                    {
                        CriaEventoDeFechamento(fechamento, tipoEvento, bimestre);
                    }
                }
            }
        }
Exemplo n.º 2
0
        private void CriarEventoFechamentoReabertura(FechamentoReabertura fechamentoReabertura)
        {
            var tipoEvento = repositorioEventoTipo.ObterTipoEventoPorTipo(TipoEvento.FechamentoBimestre);

            if (tipoEvento == null)
            {
                throw new NegocioException($"Não foi possível localizar o tipo de evento {TipoEvento.FechamentoBimestre.GetAttribute<DisplayAttribute>().Name}.");
            }

            var evento = new Evento()
            {
                DataFim          = fechamentoReabertura.Fim,
                DataInicio       = fechamentoReabertura.Inicio,
                Descricao        = fechamentoReabertura.Descricao,
                Nome             = $"Reabertura de fechamento de bimestre - {fechamentoReabertura.TipoCalendario.Nome} - {fechamentoReabertura.TipoCalendario.AnoLetivo}.",
                TipoCalendarioId = fechamentoReabertura.TipoCalendario.Id,
                DreId            = fechamentoReabertura.Dre.CodigoDre,
                UeId             = fechamentoReabertura.Ue.CodigoUe,
                Status           = EntidadeStatus.Aprovado,
                TipoEventoId     = tipoEvento.Id,
                Migrado          = false,
                Letivo           = EventoLetivo.Sim,
            };

            repositorioEvento.Salvar(evento);
        }