コード例 #1
0
        private EventoTipoDto EntidadeParaDto(EventoTipo eventoTipo)
        {
            if (eventoTipo == null || eventoTipo.Id == 0)
            {
                return(null);
            }

            return(new EventoTipoDto
            {
                Descricao = eventoTipo.Descricao,
                Id = eventoTipo.Id,
                Concomitancia = eventoTipo.Concomitancia,
                Dependencia = eventoTipo.Dependencia,
                Letivo = eventoTipo.Letivo,
                Ativo = eventoTipo.Ativo,
                LocalOcorrencia = eventoTipo.LocalOcorrencia,
                TipoData = eventoTipo.TipoData,
                AlteradoEm = eventoTipo.AlteradoEm,
                AlteradoPor = eventoTipo.AlteradoPor,
                AlteradoRF = eventoTipo.AlteradoRF,
                CriadoEm = eventoTipo.CriadoEm,
                CriadoPor = eventoTipo.CriadoPor,
                CriadoRF = eventoTipo.CriadoRF
            });
        }
コード例 #2
0
        private EventoTipoDto EntidadeParaDto(EventoTipo eventoTipo)
        {
            if (eventoTipo == null || eventoTipo.Id == 0)
            {
                return(null);
            }

            var possuiEventos = repositorioEvento.ExisteEventoPorEventoTipoId(eventoTipo.Id);

            return(new EventoTipoDto
            {
                Descricao = eventoTipo.Descricao,
                Id = eventoTipo.Id,
                Concomitancia = eventoTipo.Concomitancia,
                Dependencia = eventoTipo.Dependencia,
                Letivo = eventoTipo.Letivo,
                Ativo = eventoTipo.Ativo,
                LocalOcorrencia = eventoTipo.LocalOcorrencia,
                TipoData = eventoTipo.TipoData,
                AlteradoEm = eventoTipo.AlteradoEm,
                AlteradoPor = eventoTipo.AlteradoPor,
                AlteradoRF = eventoTipo.AlteradoRF,
                CriadoEm = eventoTipo.CriadoEm,
                CriadoPor = eventoTipo.CriadoPor,
                CriadoRF = eventoTipo.CriadoRF,
                PossuiEventos = possuiEventos
            });
        }
コード例 #3
0
 private EventoTipoDto MapearTipoEvento(EventoTipo tipoEvento)
 {
     return(tipoEvento == null ? null : new EventoTipoDto
     {
         Descricao = tipoEvento.Descricao,
         Id = tipoEvento.Id,
         TipoData = tipoEvento.TipoData
     });
 }
コード例 #4
0
        public async Task DeveCriarEventoEValidarParticularidadesSME_OrganizacaoSME_PerfilSME()
        {
            //ARRANGE
            var tipoEvento = new EventoTipo
            {
                Id              = 8,
                Codigo          = 8,
                TipoData        = EventoTipoData.InicioFim,
                LocalOcorrencia = EventoLocalOcorrencia.SME
            };

            repositorioEventoTipo.Setup(c => c.ObterPorId(It.IsAny <long>()))
            .Returns(tipoEvento);

            repositorioTipoCalendario.Setup(c => c.ObterPorId(It.IsAny <long>()))
            .Returns(new TipoCalendario
            {
                Id = 1
            });

            IEnumerable <Evento> listaEventosParaValidarPeriodo = new List <Evento>()
            {
                new Evento()
                {
                    DataInicio = DateTime.Now, DataFim = DateTime.Now.AddDays(1)
                }
            };

            repositorioEvento.Setup(a => a.ObterEventosPorTipoETipoCalendario(tipoEvento.Codigo, 8)).Returns(Task.FromResult(listaEventosParaValidarPeriodo));

            var usuario         = new Usuario();
            var perfilProfessor = new PrioridadePerfil
            {
                CodigoPerfil = Guid.Parse("23E1E074-37D6-E911-ABD6-F81654FE895D"),
                Tipo         = TipoPerfil.UE
            };

            usuario.DefinirPerfis(new List <PrioridadePerfil>
            {
                perfilProfessor
            });

            servicoUsuario.Setup(c => c.ObterUsuarioLogado())
            .Returns(Task.FromResult(usuario));

            var evento = new Evento
            {
                TipoCalendarioId = 8,
                TipoEvento       = tipoEvento,
                DataInicio       = DateTime.Now,
                DataFim          = DateTime.Now.AddDays(2),
                Letivo           = EventoLetivo.Sim
            };

            //ASSERT
            await Assert.ThrowsAsync <NegocioException>(() => servicoEvento.Salvar(evento));
        }
コード例 #5
0
        private EventoTipo ObterTipoEventoFechamentoBimestre()
        {
            EventoTipo tipoEvento = repositorioEventoTipo.ObterPorCodigo((int)TipoEvento.FechamentoBimestre);

            if (tipoEvento == null)
            {
                throw new NegocioException($"Não foi possível localizar o tipo de evento {TipoEvento.FechamentoBimestre.GetAttribute<DisplayAttribute>().Name}.");
            }
            return(tipoEvento);
        }
コード例 #6
0
        private void CriaEventoDeFechamento(PeriodoFechamento fechamento, EventoTipo tipoEvento, PeriodoFechamentoBimestre bimestre)
        {
            var evento = new Evento()
            {
                DataInicio       = bimestre.InicioDoFechamento,
                DataFim          = bimestre.FinalDoFechamento,
                DreId            = fechamento.Dre?.CodigoDre,
                UeId             = fechamento.Ue?.CodigoUe,
                Nome             = $"Fechamento do {bimestre.PeriodoEscolar?.Bimestre}º bimestre",
                TipoEventoId     = tipoEvento.Id,
                TipoCalendarioId = bimestre.PeriodoEscolar.TipoCalendarioId
            };
            var eventoId = repositorioEvento.Salvar(evento);

            repositorioEventoFechamento.Salvar(new EventoFechamento()
            {
                FechamentoId = bimestre.Id,
                EventoId     = eventoId
            });
        }
コード例 #7
0
 public void AdicionarTipoEvento(EventoTipo tipoEvento)
 {
     TipoEvento = tipoEvento;
 }
コード例 #8
0
 public IEnumerable <EventoTipo> Fetch(EventoTipo entity)
 {
     return(DataHelper.List <EventoTipo>("PR_EVENTO_TIPO_CONSULTAR",
                                         new SqlParameter("@id_evento_tipo", entity.Id)
                                         ));
 }
コード例 #9
0
        public async Task DeveCriarEventoEValidarParticularidadesSME_OrganizacaoSME_Periodo()
        {
            //ARRANGE
            var tipoEvento = new EventoTipo
            {
                Id              = 1,
                Codigo          = 1,
                TipoData        = EventoTipoData.InicioFim,
                LocalOcorrencia = EventoLocalOcorrencia.UE
            };

            repositorioEventoTipo.Setup(c => c.ObterPorId(It.IsAny <long>()))
            .Returns(tipoEvento);

            repositorioTipoCalendario.Setup(c => c.ObterPorId(It.IsAny <long>()))
            .Returns(new TipoCalendario
            {
                Id = 1
            });

            IEnumerable <Evento> listaEventosParaValidarPeriodo = new List <Evento>()
            {
                new Evento()
                {
                    DataInicio = DateTime.Now, DataFim = DateTime.Now.AddDays(1), Nome = "teste"
                },
                new Evento()
                {
                    DataInicio = DateTime.Now.AddDays(1), DataFim = DateTime.Now.AddDays(3), Nome = "teste"
                }
            };

            repositorioEvento.Setup(a => a.ObterEventosPorTipoETipoCalendario((long)TipoEvento.OrganizacaoEscolar, 8)).Returns(Task.FromResult(listaEventosParaValidarPeriodo));

            var usuario   = new Usuario();
            var perfilSme = new PrioridadePerfil
            {
                CodigoPerfil = Guid.Parse("23E1E074-37D6-E911-ABD6-F81654FE895D"),
                Tipo         = TipoPerfil.UE
            };

            usuario.DefinirPerfis(new List <PrioridadePerfil>
            {
                perfilSme
            });

            servicoUsuario.Setup(c => c.ObterUsuarioLogado())
            .Returns(Task.FromResult(usuario));

            var eventoQueNaoDevePassar = new Evento
            {
                TipoCalendarioId = 8,
                DreId            = "1",
                UeId             = "2",
                TipoEvento       = tipoEvento,
                DataInicio       = DateTime.Now,
                DataFim          = DateTime.Now.AddDays(2),
                Letivo           = EventoLetivo.Sim
            };

            var eventoQueDevePassar = new Evento
            {
                TipoCalendarioId = 8,
                DreId            = "1",
                UeId             = "2",
                TipoEvento       = tipoEvento,
                DataInicio       = DateTime.Now.AddDays(4),
                DataFim          = DateTime.Now.AddDays(6),
                Letivo           = EventoLetivo.Sim
            };

            //ASSERT
            Task task() => servicoEvento.Salvar(eventoQueNaoDevePassar);

            await Assert.ThrowsAsync <NegocioException>(task);

            await servicoEvento.Salvar(eventoQueDevePassar);

            repositorioEvento.Verify(c => c.Salvar(It.IsAny <Evento>()), Times.Once);
        }
コード例 #10
0
        public async Task DeveCriarEventoEValidarParticularidadesSME_LiberacaoExcepcional_Periodo_Alertar()
        {
            //ARRANGE
            var tipoEvento = new EventoTipo
            {
                Id              = 1,
                Codigo          = (int)TipoEvento.LiberacaoExcepcional,
                TipoData        = EventoTipoData.InicioFim,
                LocalOcorrencia = EventoLocalOcorrencia.UE
            };

            repositorioEventoTipo.Setup(c => c.ObterPorId(It.IsAny <long>()))
            .Returns(tipoEvento);

            var tipoCalendario = new TipoCalendario
            {
                Id = 1
            };

            repositorioTipoCalendario.Setup(c => c.ObterPorId(It.IsAny <long>()))
            .Returns(tipoCalendario);

            var listaPeriodoEscolar = new List <PeriodoEscolar>()
            {
                new PeriodoEscolar()
                {
                    PeriodoInicio = DateTime.Today, PeriodoFim = DateTime.Today.AddDays(7)
                }
            };

            repositorioPeriodoEscolar.Setup(a => a.ObterPorTipoCalendario(tipoCalendario.Id)).Returns(listaPeriodoEscolar);

            var usuario = new Usuario();

            var perfil = new PrioridadePerfil
            {
                CodigoPerfil = Guid.Parse("23A1E074-37D6-E911-ABD6-F81654FE895D"),
                Tipo         = TipoPerfil.DRE
            };

            usuario.DefinirPerfis(new List <PrioridadePerfil>
            {
                perfil
            });

            servicoUsuario.Setup(c => c.ObterUsuarioLogado())
            .Returns(Task.FromResult(usuario));

            var evento = new Evento
            {
                TipoCalendarioId = tipoCalendario.Id,
                DreId            = "1",
                UeId             = "2",
                TipoEvento       = tipoEvento,
                DataInicio       = DateTime.Now.AddMonths(1),
                DataFim          = DateTime.Now.AddMonths(1).AddDays(2),
                Letivo           = EventoLetivo.Sim
            };

            //ASSERT
            await Assert.ThrowsAsync <NegocioException>(() => servicoEvento.Salvar(evento));
        }
コード例 #11
0
        public async Task DeveCriarEventoEValidarParticularidadesSME_LiberacaoExcepcional(TipoPerfil tipoPerfil, bool sucesso)
        {
            //ARRANGE
            var tipoEvento = new EventoTipo
            {
                Id              = 1,
                Codigo          = (int)TipoEvento.LiberacaoExcepcional,
                TipoData        = EventoTipoData.InicioFim,
                LocalOcorrencia = EventoLocalOcorrencia.UE
            };

            repositorioEventoTipo.Setup(c => c.ObterPorId(It.IsAny <long>()))
            .Returns(tipoEvento);

            var tipoCalendario = new TipoCalendario
            {
                Id = 1
            };

            repositorioTipoCalendario.Setup(c => c.ObterPorId(It.IsAny <long>()))
            .Returns(tipoCalendario);

            var listaPeriodoEscolar = new List <PeriodoEscolar>()
            {
                new PeriodoEscolar()
                {
                    PeriodoInicio = DateTime.Today, PeriodoFim = DateTime.Today.AddDays(7)
                }
            };

            repositorioPeriodoEscolar.Setup(a => a.ObterPorTipoCalendario(tipoCalendario.Id)).Returns(listaPeriodoEscolar);

            var usuario = new Usuario();

            var perfil = new PrioridadePerfil
            {
                CodigoPerfil = Guid.Parse("23A1E074-37D6-E911-ABD6-F81654FE895D"),
                Tipo         = tipoPerfil
            };

            usuario.DefinirPerfis(new List <PrioridadePerfil>
            {
                perfil
            });

            servicoUsuario.Setup(c => c.ObterUsuarioLogado())
            .Returns(Task.FromResult(usuario));

            var evento = new Evento
            {
                TipoCalendarioId = tipoCalendario.Id,
                DreId            = "1",
                UeId             = "2",
                TipoEvento       = tipoEvento,
                DataInicio       = DateTime.Now,
                DataFim          = DateTime.Now.AddDays(2),
                Letivo           = EventoLetivo.Sim
            };

            var ue = new AbrangenciaUeRetorno();

            repositorioAbrangencia.Setup(a => a.ObterUe(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Guid>())).Returns(Task.FromResult(ue));

            //ASSERT
            try
            {
                await servicoEvento.Salvar(evento, true);

                Assert.True(true);
            }
            catch (Exception)
            {
                if (sucesso)
                {
                    Assert.True(false);
                }
            }
        }
コード例 #12
0
ファイル: EventoBackend.cs プロジェクト: l17719/pbackend
 public EventoBackend(EventoTipo valueTipo, dynamic valueData)
 {
     TipoEvento = valueTipo;
     EventData  = valueData;
 }
コード例 #13
0
 public IEnumerable <EventoTipo> Buscar(EventoTipo entity)
 {
     return(_repository.Fetch(entity));
 }