示例#1
0
        /// <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);
        }
示例#2
0
        /// <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));
                }
            }
        }