public async Task RevogarToken(string login) { var chaveLogin = ObterChaveLogin(login); var token = cache.Obter(chaveLogin); if (!string.IsNullOrWhiteSpace(token)) { await cache.RemoverAsync(chaveLogin); } }
private async Task RemoverChaves() { var i = 1111111; while (i != 4444444) { var chave = $"teste-redis-{i}"; await repositorioCache.RemoverAsync(chave); i++; } }
private async Task RemoverDisciplinasCache(AtribuicaoCJPersistenciaDto atribuicaoCJPersistenciaDto) { var chaveCache = $"Disciplinas-{atribuicaoCJPersistenciaDto.TurmaId}-{atribuicaoCJPersistenciaDto.UsuarioRf}--{Perfis.PERFIL_CJ}"; await repositorioCache.RemoverAsync(chaveCache); }
public async Task SincronizarObjetivosComJurema() { var parametrosDataUltimaAtualizacao = await repositorioParametrosSistema.ObterUnicoChaveEValorPorTipo(TipoParametroSistema.DataUltimaAtualizacaoObjetivosJurema); if (parametrosDataUltimaAtualizacao.HasValue) { var dataUltimaAtualizacao = DateTime.Parse(parametrosDataUltimaAtualizacao.Value.Value); var objetivosJuremaRespostaApi = await servicoJurema.ObterListaObjetivosAprendizagem(); if (objetivosJuremaRespostaApi != null && objetivosJuremaRespostaApi.Any()) { var objetivosBase = await repositorioObjetivoAprendizagem.ListarAsync(); var objetivosJuremaResposta = objetivosJuremaRespostaApi.Where(c => c.Codigo.Length <= 20); var objetivosAIncluir = objetivosJuremaResposta?.Where(c => !objetivosBase.Any(b => b.CodigoCompleto == c.Codigo)); var objetivosADesativar = objetivosBase?.Where(c => !c.Excluido)?.Where(c => !objetivosJuremaResposta.Any(b => b.Codigo == c.CodigoCompleto)); var objetivosAReativar = objetivosJuremaResposta?.Where(c => objetivosBase.Any(b => b.CodigoCompleto == c.Codigo && b.Excluido)); var objetivosAAtualizar = objetivosJuremaResposta?.Where(c => c.AtualizadoEm > dataUltimaAtualizacao); var atualizarUltimaDataAtualizacao = false; var houveAlteracaoNosDados = false; if (objetivosAAtualizar != null && objetivosAAtualizar.Any()) { foreach (var objetivo in objetivosAAtualizar) { await AtualizarObjetivoBase(objetivo); } atualizarUltimaDataAtualizacao = true; houveAlteracaoNosDados = true; } if (objetivosAIncluir != null && objetivosAIncluir.Any()) { foreach (var objetivo in objetivosAIncluir) { await repositorioObjetivoAprendizagem.SalvarAsync(MapearObjetivoRespostaParaDominio(objetivo)); } houveAlteracaoNosDados = true; } if (objetivosAReativar != null && objetivosAReativar.Any()) { foreach (var objetivo in objetivosAReativar) { await repositorioObjetivoAprendizagem.ReativarAsync(objetivo.Id); } houveAlteracaoNosDados = true; } if (objetivosADesativar != null && objetivosADesativar.Any()) { foreach (var objetivo in objetivosADesativar) { objetivo.Desativar(); await repositorioObjetivoAprendizagem.AtualizarAsync(objetivo); } houveAlteracaoNosDados = true; } if (atualizarUltimaDataAtualizacao) { dataUltimaAtualizacao = objetivosJuremaResposta.Max(c => c.AtualizadoEm); await repositorioParametrosSistema.AtualizarValorPorTipoAsync(TipoParametroSistema.DataUltimaAtualizacaoObjetivosJurema, dataUltimaAtualizacao.ToString("yyyy-MM-dd HH:mm:ss.fff tt")); } if (houveAlteracaoNosDados) { await repositorioCache.RemoverAsync("ObjetivosAprendizagem"); } } } else { SentrySdk.CaptureException(new NegocioException("Parâmetro 'DataUltimaAtualizacaoObjetivosJurema' não encontrado na base de dados, os objetivos de aprendizagem não serão atualizados.")); } }
public void RemoverPerfisUsuarioCache(string login) { var chaveRedis = $"perfis-usuario-{login}"; _ = repositorioCache.RemoverAsync(chaveRedis); }