public void Deve_Incluir_Calendario_Fundamental_E_Retornar_Acima_200_dias_letivos() { MontarCabecalho(); TipoCalendarioDto tipoCalendario = AdicionarTipoCalendario(ano); var jsonParaPost = new StringContent(JsonConvert.SerializeObject(tipoCalendario), Encoding.UTF8, "application/json"); var postResult = _fixture._clientApi.PostAsync("api/v1/calendarios/tipos", jsonParaPost).Result; Assert.True(postResult.IsSuccessStatusCode); if (postResult.IsSuccessStatusCode) { PeriodoEscolarListaDto periodoEscolar = AdicionarPerioEscolar(ano); var jsonParaPost2 = new StringContent(JsonConvert.SerializeObject(periodoEscolar), Encoding.UTF8, "application/json"); var postResult2 = _fixture._clientApi.PostAsync("api/v1/periodo-escolar", jsonParaPost2).Result; Assert.True(postResult2.IsSuccessStatusCode); var filtro = new FiltroDiasLetivosDTO() { TipoCalendarioId = 1 }; var filtroPeriodoEscolar = new StringContent(JsonConvert.SerializeObject(filtro), Encoding.UTF8, "application/json"); var diasLetivosResponse = _fixture._clientApi.PostAsync("api/v1/calendarios/dias-letivos", filtroPeriodoEscolar).Result; if (diasLetivosResponse.IsSuccessStatusCode) { var diasLetivos = JsonConvert.DeserializeObject <DiasLetivosDto>(diasLetivosResponse.Content.ReadAsStringAsync().Result); Assert.True(diasLetivos.Dias > 0); } } }
public void ExecutarMetodosAsync(TipoCalendarioDto dto, bool inclusao, TipoCalendario tipoCalendario) { servicoFeriadoCalendario.VerficaSeExisteFeriadosMoveisEInclui(dto.AnoLetivo); if (inclusao) { servicoEvento.SalvarEventoFeriadosAoCadastrarTipoCalendario(tipoCalendario); } }
private RelatorioImpressaoCalendarioDto MontarCabecalho(Dre dre, Ue ue, TipoCalendarioDto tipoCalendarioDto) { var retorno = new RelatorioImpressaoCalendarioDto(); retorno.DreNome = dre == null ? "TODAS" : dre.Abreviacao; retorno.TipoCalendarioNome = tipoCalendarioDto.Nome; retorno.UeNome = ue == null ? "TODAS" : ue.NomeComTipoEscola; return(retorno); }
public ObterRelatorioImpressaoCalendarioQuery(Dre dre, Ue ue, TipoCalendarioDto tipoCalendario, bool ehSME, string usuarioRF, Guid usuarioPerfil, bool consideraPendenteAprovacao, bool podeVisualizarEventosOcorrenciaDre) { Dre = dre; Ue = ue; TipoCalendario = tipoCalendario; EhSME = ehSME; UsuarioRF = usuarioRF; UsuarioPerfil = usuarioPerfil; ConsideraPendenteAprovacao = consideraPendenteAprovacao; PodeVisualizarEventosOcorrenciaDre = podeVisualizarEventosOcorrenciaDre; }
public async Task Deve_Incluir_Calendario_E_Feriados_Moveis() { _fixture._clientApi.DefaultRequestHeaders.Clear(); _fixture._clientApi.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _fixture.GerarToken(new Permissao[] { Permissao.TCE_C, Permissao.TCE_I, Permissao.TCE_E, Permissao.TF_C })); var calendarioParaIncluir = new TipoCalendarioDto() { AnoLetivo = 2019, DescricaoPeriodo = "Teste", Modalidade = Dominio.ModalidadeTipoCalendario.EJA, Nome = "Calendário de teste", Periodo = Dominio.Periodo.Anual, Situacao = true }; var jsonParaPostCalendario = new StringContent(TransformarEmJson(calendarioParaIncluir), Encoding.UTF8, "application/json"); var postResultIncluiCalendario = await _fixture._clientApi.PostAsync("api/v1/calendarios/tipos/", jsonParaPostCalendario); Assert.True(postResultIncluiCalendario.IsSuccessStatusCode); if (postResultIncluiCalendario.IsSuccessStatusCode) { var buscarTodosCalendariosResultado = await _fixture._clientApi.GetAsync($"api/v1/calendarios/tipos"); Assert.True(buscarTodosCalendariosResultado.IsSuccessStatusCode); if (buscarTodosCalendariosResultado.IsSuccessStatusCode) { var dtoTodos = JsonConvert.DeserializeObject <IEnumerable <TipoCalendarioDto> >(await buscarTodosCalendariosResultado.Content.ReadAsStringAsync()); Assert.True(dtoTodos.Any()); var filtroFeriadoCalendarioDto = new FiltroFeriadoCalendarioDto() { Tipo = Dominio.TipoFeriadoCalendario.Movel, Ano = 2019 }; var jsonParaPostFiltroFeriados = new StringContent(TransformarEmJson(filtroFeriadoCalendarioDto), Encoding.UTF8, "application/json"); Thread.Sleep(2000); var postResultBuscaFeriados = await _fixture._clientApi.PostAsync("api/v1/calendarios/feriados/listar", jsonParaPostFiltroFeriados); Assert.True(postResultBuscaFeriados.IsSuccessStatusCode); if (postResultBuscaFeriados.IsSuccessStatusCode) { var dtoFeriados = JsonConvert.DeserializeObject <IEnumerable <FeriadoCalendarioDto> >(await postResultBuscaFeriados.Content.ReadAsStringAsync()); Assert.True(dtoFeriados.Count() == 4); } } } }
private void AdicionarTipoCalendario() { var tipoCalendarioDto = new TipoCalendarioDto(); tipoCalendarioDto.AnoLetivo = 2019; tipoCalendarioDto.Nome = "Teste Periodo Escolar"; tipoCalendarioDto.Periodo = Periodo.Anual; tipoCalendarioDto.Modalidade = ModalidadeTipoCalendario.FundamentalMedio; tipoCalendarioDto.Situacao = true; var jsonParaPost = new StringContent(JsonConvert.SerializeObject(tipoCalendarioDto), UnicodeEncoding.UTF8, "application/json"); var postResult = _fixture._clientApi.PostAsync("api/v1/calendarios/tipos", jsonParaPost).Result; Assert.True(postResult.IsSuccessStatusCode); }
public async Task Incluir(TipoCalendarioDto dto) { var tipoCalendario = MapearParaDominio(dto, 0); bool ehRegistroExistente = await repositorio.VerificarRegistroExistente(0, dto.Nome); if (ehRegistroExistente) { throw new NegocioException($"O Tipo de Calendário Escolar '{dto.Nome}' já existe"); } repositorio.Salvar(tipoCalendario); SME.Background.Core.Cliente.Executar <IComandosTipoCalendario>(x => x.ExecutarMetodosAsync(dto, true, tipoCalendario)); }
public TipoCalendario MapearParaDominio(TipoCalendarioDto dto) { TipoCalendario entidade = repositorio.ObterPorId(dto.Id); if (entidade == null) { entidade = new TipoCalendario(); } entidade.Nome = dto.Nome; entidade.AnoLetivo = dto.AnoLetivo; entidade.Periodo = dto.Periodo; entidade.Situacao = dto.Situacao; entidade.Modalidade = dto.Modalidade; return(entidade); }
public async Task ExecutarMetodosAsync(TipoCalendarioDto dto, bool inclusao, TipoCalendario tipoCalendario) { servicoFeriadoCalendario.VerficaSeExisteFeriadosMoveisEInclui(dto.AnoLetivo); if (inclusao) { servicoEvento.SalvarEventoFeriadosAoCadastrarTipoCalendario(tipoCalendario); var existeParametro = await mediator.Send(new VerificaSeExisteParametroSistemaPorAnoQuery(dto.AnoLetivo)); if (!existeParametro) { await mediator.Send(new ReplicarParametrosAnoAnteriorCommand(dto.AnoLetivo)); } } }
public static void AdicionarTipoCalendario(TestServerFixture _fixture) { _fixture = ObtenhaCabecalhoAuthentication(_fixture, new Permissao[] { Permissao.TCE_I }); var tipoCalendarioDto = new TipoCalendarioDto(); tipoCalendarioDto.AnoLetivo = 2019; tipoCalendarioDto.Nome = "Teste Periodo Escolar"; tipoCalendarioDto.Periodo = Periodo.Anual; tipoCalendarioDto.Modalidade = ModalidadeTipoCalendario.FundamentalMedio; tipoCalendarioDto.Situacao = true; var postResult = ExecutePostAsync(_fixture, "api/v1/calendarios/tipos", tipoCalendarioDto); Assert.True(postResult.IsSuccessStatusCode); }
public async Task Salvar(TipoCalendarioDto dto) { var inclusao = dto.Id == 0; var tipoCalendario = MapearParaDominio(dto); bool ehRegistroExistente = await repositorio.VerificarRegistroExistente(dto.Id, dto.Nome); if (ehRegistroExistente) { throw new NegocioException($"O Tipo de Calendário Escolar '{dto.Nome}' já existe"); } repositorio.Salvar(tipoCalendario); await ExecutarMetodosAsync(dto, inclusao, tipoCalendario).ConfigureAwait(false); }
public TipoCalendario MapearParaDominio(TipoCalendarioDto dto, long id) { TipoCalendario entidade = repositorio.ObterPorId(id); bool possuiEventos = repositorioEvento.ExisteEventoPorTipoCalendarioId(id); if (entidade == null) { entidade = new TipoCalendario(); } entidade.Nome = dto.Nome; entidade.Situacao = dto.Situacao; if (!possuiEventos) { entidade.AnoLetivo = dto.AnoLetivo; entidade.Periodo = dto.Periodo; entidade.Modalidade = dto.Modalidade; } return(entidade); }
public async Task Deve_Incluir_Excluir_Consular_Tipo_Calendario() { _fixture._clientApi.DefaultRequestHeaders.Clear(); _fixture._clientApi.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _fixture.GerarToken(new Permissao[] { Permissao.TCE_C, Permissao.TCE_I, Permissao.TCE_E })); var tipoCalendarioDto = new TipoCalendarioDto(); tipoCalendarioDto.AnoLetivo = 2019; tipoCalendarioDto.Nome = "Teste 1"; tipoCalendarioDto.Periodo = Periodo.Anual; tipoCalendarioDto.Modalidade = ModalidadeTipoCalendario.FundamentalMedio; tipoCalendarioDto.Situacao = true; var tipoCalendarioDto2 = new TipoCalendarioDto(); tipoCalendarioDto2.AnoLetivo = 2019; tipoCalendarioDto2.Nome = "Teste 2"; tipoCalendarioDto2.Periodo = Periodo.Semestral; tipoCalendarioDto2.Modalidade = ModalidadeTipoCalendario.FundamentalMedio; tipoCalendarioDto2.Situacao = true; var jsonParaPost = new StringContent(TransformarEmJson(tipoCalendarioDto), UnicodeEncoding.UTF8, "application/json"); var postResult = await _fixture._clientApi.PostAsync("api/v1/calendarios/tipos/", jsonParaPost); Assert.True(postResult.IsSuccessStatusCode); if (postResult.IsSuccessStatusCode) { var jsonParaPost2 = new StringContent(TransformarEmJson(tipoCalendarioDto2), UnicodeEncoding.UTF8, "application/json"); var postResult2 = await _fixture._clientApi.PostAsync("api/v1/calendarios/tipos/", jsonParaPost2); Assert.True(postResult2.IsSuccessStatusCode); if (postResult2.IsSuccessStatusCode) { var getAllResult = await _fixture._clientApi.GetAsync($"api/v1/calendarios/tipos/"); var dtoTodos = JsonConvert.DeserializeObject <IEnumerable <TipoCalendarioDto> >(getAllResult.Content.ReadAsStringAsync().Result); Assert.True(dtoTodos.Any()); var feriadoParaExcluir = dtoTodos.ElementAt(0); var ids = new long[1]; ids[0] = feriadoParaExcluir.Id; var jsonDelete = new StringContent(JsonConvert.SerializeObject(ids), UnicodeEncoding.UTF8, "application/json"); HttpRequestMessage request = new HttpRequestMessage { Content = jsonDelete, Method = HttpMethod.Delete, RequestUri = new Uri($"{ _fixture._clientApi.BaseAddress}api/v1/calendarios/tipos/") }; var deleteResult = await _fixture._clientApi.SendAsync(request); Assert.False(deleteResult.IsSuccessStatusCode); var feriadoParaConsultar = dtoTodos.ElementAt(1); var getOneResult = await _fixture._clientApi.GetAsync($"api/v1/calendarios/tipos/{feriadoParaConsultar.Id}"); Assert.True(getOneResult.IsSuccessStatusCode); var dtoUm = JsonConvert.DeserializeObject <TipoCalendarioCompletoDto>(getOneResult.Content.ReadAsStringAsync().Result); Assert.True(dtoUm.Id == feriadoParaConsultar.Id); } } }
public async Task <IActionResult> Incluir([FromBody] TipoCalendarioDto dto) { await comandos.Incluir(dto); return(Ok()); }
public async Task <IActionResult> Alterar([FromBody] TipoCalendarioDto dto, long id) { await comandos.Alterar(dto, id); return(Ok()); }