/// <summary> /// Exclusão de uma atribuição esporádica, verificando se tem aula criada na data de sua atribuição. /// </summary> /// <param name="entidade"></param> /// <returns></returns> public static bool ExcluirAtribuicaoEsporadica (RHU_ColaboradorCargo entidade, long doc_id, Guid ent_id) { DataTable dtAulas = CLS_TurmaAulaBO.PesquisaPor_AtribuicaoEsporadica(entidade.col_id, entidade.crg_id, entidade.coc_id, null); if (dtAulas.Rows.Count > 0) { throw new ValidationException("Não é possível excluir essa atribuição esporádica, pois o(a) docente fez registros de aula neste período."); } if (Delete(entidade)) { // Limpar cache para a tela de atribuição de docentes. GestaoEscolarUtilBO.LimpaCache(ESC_UnidadeEscolaBO.RetornaChaveCache_SelectEscolas_VisaoIndividual(doc_id, ent_id, 1)); GestaoEscolarUtilBO.LimpaCache(ESC_UnidadeEscolaBO.RetornaChaveCache_SelectEscolas_VisaoIndividual(doc_id, ent_id, 0)); GestaoEscolarUtilBO.LimpaCache(ESC_UnidadeEscolaBO.RetornaChaveCache_SelectEscolas_VisaoIndividual(doc_id, ent_id, 2)); return(true); } return(false); }
/// <summary> /// Remove do cache a entidade. /// </summary> /// <param name="entity"></param> public static void LimpaCache(TUR_TurmaDocente entity, Guid ent_id, Int64 tur_id = 0) { if (HttpContext.Current != null) { // Chave padrão do cache - nome do método + parâmetros. HttpContext.Current.Cache.Remove(RetornaChaveCache_SelecionaPosicaoPorDocenteTurma(entity.doc_id, entity.tud_id)); HttpContext.Current.Cache.Remove(RetornaChaveCache_SelecionaPosicaoPorDocenteTurma_ComInativos(entity.doc_id, entity.tud_id)); GestaoEscolarUtilBO.LimpaCache(TUR_TurmaDisciplinaBO.Cache_SelecionaDisciplinaPorTurmaDocente, entity.doc_id.ToString()); GestaoEscolarUtilBO.LimpaCache(TUR_TurmaDisciplinaBO.Cache_SelecionaDisciplinaPorTurmaDocente); GestaoEscolarUtilBO.LimpaCache(TUR_TurmaDisciplinaBO.RetornaChaveCache_SelectRelacionadaVigenteBy_DisciplinaCompartilhada(entity.tud_id, entity.doc_id.ToString())); CacheManager.Factory.RemoveByPattern(ModelCache.TURMA_DISCIPLINA_SELECIONA_DISCIPLINA_POR_TURMADOCENTE_SEM_VIGENCIA_PATTERN_KEY); GestaoEscolarUtilBO.LimpaCache(TUR_TurmaBO.RetornaChaveCache_SelecionaPorDocenteControleTurma(ent_id.ToString(), entity.doc_id.ToString())); GestaoEscolarUtilBO.LimpaCache(TUR_TurmaDisciplinaBO.RetornaChaveCache_SelectRelacionadaVigenteBy_DisciplinaCompartilhada(entity.tud_id, entity.doc_id.ToString())); TUR_TurmaBO.RemoveCacheDocenteControleTurma(ent_id, entity.doc_id); if (tur_id > 0) { TUR_TurmaBO.RemoveCacheDocente_TurmaDisciplina(tur_id, entity.doc_id, ent_id); } else { GestaoEscolarUtilBO.LimpaCache(TUR_TurmaDisciplinaBO.Cache_GetSelectBy_TurmaDocente, entity.doc_id.ToString()); } GestaoEscolarUtilBO.LimpaCache(TUR_TurmaDisciplinaBO.RetornaChaveCache_SelectRelacionadaVigenteBy_DisciplinaCompartilhada(entity.tud_id, "")); GestaoEscolarUtilBO.LimpaCache(TUR_TurmaDisciplinaBO.RetornaChaveCache_SelectRelacionadaVigenteBy_DisciplinaCompartilhada(entity.tud_id, entity.doc_id.ToString())); GestaoEscolarUtilBO.LimpaCache(TUR_TurmaBO.RetornaChaveCache_DocenteControleTurmas(ent_id, entity.doc_id)); CacheManager.Factory.RemoveByPattern(string.Format("{0}_{1}_{2}", ModelCache.TURMA_DISCIPLINA_SELECIONA_DISCIPLINA_POR_TURMADOCENTE_SEM_VIGENCIA_PATTERN_KEY, tur_id, entity.doc_id)); if (ent_id != Guid.Empty) { GestaoEscolarUtilBO.LimpaCache(ESC_UnidadeEscolaBO.RetornaChaveCache_SelectEscolas_VisaoIndividual(entity.doc_id, ent_id, 1)); GestaoEscolarUtilBO.LimpaCache(ESC_UnidadeEscolaBO.RetornaChaveCache_SelectEscolas_VisaoIndividual(entity.doc_id, ent_id, 0)); } } }