コード例 #1
0
ファイル: ACA_TipoDisciplinaBO.cs プロジェクト: Mualumene/SGP
        public static List <sTipoDisciplina> SelecionaTipoDisciplinaTipo(Guid ent_id, byte tds_tipo, int AppMinutosCacheLongo = 0)
        {
            List <sTipoDisciplina> lista = null;

            if (AppMinutosCacheLongo > 0 && HttpContext.Current != null)
            {
                string chave = String.Format("Cache_SelecionaTipoDisciplinaTipo_{0}", ent_id);
                object cache = HttpContext.Current.Cache[chave];

                if (cache == null)
                {
                    bool controlarOrdem = ACA_ParametroAcademicoBO.ParametroValorBooleanoPorEntidade(eChaveAcademico.CONTROLAR_ORDEM_DISCIPLINAS, ent_id);

                    lista = (from dr in new ACA_TipoDisciplinaDAO().SelectBy_Pesquisa(0, 0, 0, (tds_tipo != (byte)ACA_TipoDisciplinaBO.TipoDisciplina.RecuperacaoParalela), controlarOrdem, false, 1, 1, out totalRecords).AsEnumerable()
                             select(sTipoDisciplina) GestaoEscolarUtilBO.DataRowToEntity(dr, new sTipoDisciplina())).ToList();

                    HttpContext.Current.Cache.Insert(chave, lista, null, DateTime.Now.AddMinutes(AppMinutosCacheLongo), System.Web.Caching.Cache.NoSlidingExpiration);
                }
                else
                {
                    lista = (List <sTipoDisciplina>)cache;
                }
            }
            else
            {
                bool controlarOrdem = ACA_ParametroAcademicoBO.ParametroValorBooleanoPorEntidade(eChaveAcademico.CONTROLAR_ORDEM_DISCIPLINAS, ent_id);

                lista = (from dr in new ACA_TipoDisciplinaDAO().SelectBy_Pesquisa(0, 0, 0, true, controlarOrdem, false, 1, 1, out totalRecords).AsEnumerable()
                         select(sTipoDisciplina) GestaoEscolarUtilBO.DataRowToEntity(dr, new sTipoDisciplina())).ToList();
            }

            return(lista.Where(t => t.tds_tipo == tds_tipo).ToList());
        }
コード例 #2
0
        /// <summary>
        /// Salva os dados em lote
        /// </summary>
        /// <param name="list">Lista de dados.</param>
        /// <param name="banco">Transação.</param>
        /// <returns>True em caso de sucesso.</returns>
        public static bool SalvarEmLote(List <CLS_FrequenciaReuniaoResponsaveis> list, TalkDBTransaction banco = null)
        {
            if (list.Any())
            {
                List <CLS_FrequenciaReuniaoResponsaveis_SalvarEmLote> listFrequenciaReuniaoResponsaveis =
                    list.Select(p => new CLS_FrequenciaReuniaoResponsaveis_SalvarEmLote
                {
                    alu_id         = p.alu_id,
                    cal_id         = p.cal_id,
                    cap_id         = p.cap_id,
                    frp_id         = p.frp_id,
                    frp_frequencia = p.frp_frequencia
                }).ToList();

                DataTable dtFrequenciaReuniaoResponsaveis =
                    GestaoEscolarUtilBO.EntityToDataTable <CLS_FrequenciaReuniaoResponsaveis_SalvarEmLote>(listFrequenciaReuniaoResponsaveis);

                return(banco == null ?
                       new CLS_FrequenciaReuniaoResponsaveisDAO().SalvarEmLote(dtFrequenciaReuniaoResponsaveis) :
                       new CLS_FrequenciaReuniaoResponsaveisDAO {
                    _Banco = banco
                }.SalvarEmLote(dtFrequenciaReuniaoResponsaveis));
            }

            return(true);
        }
コード例 #3
0
        /// <summary>
        /// Override do GetEntity que guarda em Cache a entidade retornada.
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public new static ACA_EscalaAvaliacaoParecer GetEntity(ACA_EscalaAvaliacaoParecer entity, TalkDBTransaction banco = null)
        {
            // Chave padrão do cache - nome do método + parâmetros.
            string chave = RetornaChaveCache_GetEntity(entity);

            ACA_EscalaAvaliacaoParecerDAO dao = new ACA_EscalaAvaliacaoParecerDAO();

            if (banco != null)
            {
                dao._Banco = banco;
            }

            GestaoEscolarUtilBO.CopiarEntity
            (
                CacheManager.Factory.Get
                (
                    chave,
                    () =>
            {
                dao.Carregar(entity);
                return(entity);
            },
                    GestaoEscolarUtilBO.MinutosCacheMedio
                ),
                entity
            );

            return(entity);
        }
コード例 #4
0
        /// <summary>
        /// O método gera o relatório de alunos abaixo da frequência
        /// </summary>
        private void GerarRelatorio()
        {
            string report, parametros;

            report     = ((int)ReportNameGestaoAcademicaDocumentosDocente.DocDctAlunosPendenciaEfetivacao).ToString();
            parametros = "uad_idSuperiorGestao=" + UCBuscaDocenteTurma.ComboEscola.Uad_ID +
                         "&esc_id=" + UCBuscaDocenteTurma.ComboEscola.Esc_ID +
                         "&uni_id=" + UCBuscaDocenteTurma.ComboEscola.Uni_ID +
                         "&cal_id=" + UCBuscaDocenteTurma.ComboCalendario.Valor +
                         "&cal_ano=" + UCBuscaDocenteTurma.ComboCalendario.Cal_ano.ToString() +
                         "&cur_id=" + UCBuscaDocenteTurma.ComboCursoCurriculo.Valor[0] +
                         "&crr_id=" + UCBuscaDocenteTurma.ComboCursoCurriculo.Valor[1] +
                         "&crp_id=" + UCBuscaDocenteTurma.ComboCurriculoPeriodo.Valor[2] +
                         "&tur_id=" + UCBuscaDocenteTurma.ComboTurma.Valor[0] +
                         "&ent_id=" + __SessionWEB.__UsuarioWEB.Usuario.ent_id +
                         "&doc_id=" + __SessionWEB.__UsuarioWEB.Docente.doc_id +
                         "&tud_ids=" + "" +
                         "&tev_EfetivacaoNotas=" + ACA_ParametroAcademicoBO.ParametroValorInt32PorEntidade(eChaveAcademico.TIPO_EVENTO_EFETIVACAO_NOTAS, __SessionWEB.__UsuarioWEB.Usuario.ent_id) +
                         "&tev_EfetivacaoFinal=" + ACA_ParametroAcademicoBO.ParametroValorInt32PorEntidade(eChaveAcademico.TIPO_EVENTO_EFETIVACAO_FINAL, __SessionWEB.__UsuarioWEB.Usuario.ent_id) +
                         "&nomeParecerConclusivo=" + GetGlobalResourceObject("Mensagens", "MSG_RESULTADOEFETIVACAO") +
                         "&nomePeriodoCalendario=" + GestaoEscolarUtilBO.nomePadraoPeriodo_Calendario(__SessionWEB.__UsuarioWEB.Usuario.ent_id) +
                         "&nomeComponenteCurricular=" + GetGlobalResourceObject("Mensagens", "MSG_DISCIPLINA") +
                         "&mostraCodigoEscola=" + ACA_ParametroAcademicoBO.ParametroValorBooleanoPorEntidade(eChaveAcademico.ORDENAR_ESCOLAS_POR_CODIGO, __SessionWEB.__UsuarioWEB.Usuario.ent_id) +
                         "&nomeMunicipio=" + GetGlobalResourceObject("Reporting", "Reporting.DocDctSubCabecalhoRetrato.Municipio") +
                         "&nomeSecretaria=" + GetGlobalResourceObject("Reporting", "Reporting.DocDctSubCabecalhoRetrato.Secretaria") +
                         "&logo=" + String.Concat(MSTech.GestaoEscolar.BLL.CFG_ServidorRelatorioBO.CarregarServidorRelatorioPorEntidade(__SessionWEB.__UsuarioWEB.Usuario.ent_id, ApplicationWEB.AppMinutosCacheLongo).srr_pastaRelatorios.ToString()
                                                  , ApplicationWEB.LogoRelatorioSSRS);

            CFG_RelatorioBO.CallReport("Relatorios", report, parametros, HttpContext.Current);
        }
コード例 #5
0
        /// <summary>
        /// Override do GetEntity que guarda em Cache a entidade retornada.
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public new static MTR_TipoMovimentacao GetEntity(MTR_TipoMovimentacao entity, TalkDBTransaction banco = null)
        {
            MTR_TipoMovimentacaoDAO dao = banco == null ? new MTR_TipoMovimentacaoDAO() : new MTR_TipoMovimentacaoDAO {
                _Banco = banco
            };

            if (HttpContext.Current != null)
            {
                // Chave padrão do cache - nome do método + parâmetros.
                string chave = RetornaChaveCache_GetEntity(entity);
                object cache = HttpContext.Current.Cache[chave];

                if (cache == null)
                {
                    dao.Carregar(entity);
                    // Adiciona cache com validade de 6h.
                    HttpContext.Current.Cache.Insert(chave, entity, null, DateTime.Now.AddMinutes(GestaoEscolarUtilBO.MinutosCacheMedio)
                                                     , System.Web.Caching.Cache.NoSlidingExpiration);
                }
                else
                {
                    GestaoEscolarUtilBO.CopiarEntity(cache, entity);
                }

                return(entity);
            }

            dao.Carregar(entity);

            return(entity);
        }
コード例 #6
0
ファイル: Busca.aspx.cs プロジェクト: Mualumene/SGP
 protected void Page_init(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         grvNivelAprendizado.Columns[INDEX_COLUNA_CURSO].HeaderText = GestaoEscolarUtilBO.nomePadraoPeriodo(__SessionWEB.__UsuarioWEB.Usuario.ent_id);
     }
 }
コード例 #7
0
        public new static bool Delete
        (
            SYS_Servicos entity
        )
        {
            SYS_ServicosDAO dao = new SYS_ServicosDAO();

            dao._Banco.Open(IsolationLevel.ReadCommitted);

            try
            {
                //Verifica se o serviço pode ser deletado
                if (GestaoEscolarUtilBO.VerificarIntegridade("ser_id", entity.ser_id.ToString(), "SYS_Servicos", dao._Banco))
                {
                    throw new ValidationException("Não é possível excluir o serviço pois possui outros registros ligados a ele.");
                }

                //Deleta logicamente o serviço
                dao.Delete(entity);

                return(true);
            }
            catch (Exception err)
            {
                dao._Banco.Close(err);
                throw;
            }
            finally
            {
                dao._Banco.Close();
            }
        }
コード例 #8
0
        /// <summary>
        /// Seleciona o formato de avaliação de acordo com a turma.
        /// </summary>
        /// <param name="tur_id">Id da turma.</param>
        /// <returns>Formato de avaliação.</returns>
        public new static ACA_FormatoAvaliacao CarregarPorTur(long tur_id, TalkDBTransaction banco = null)
        {
            ACA_FormatoAvaliacao entity = new ACA_FormatoAvaliacao();
            string chave = string.Format(ModelCache.FORMATO_AVALIACAO_POR_TURMA_MODEL_KEY, tur_id);

            ACA_FormatoAvaliacaoDAO dao = new ACA_FormatoAvaliacaoDAO();

            if (banco != null)
            {
                dao._Banco = banco;
            }

            GestaoEscolarUtilBO.CopiarEntity
            (
                CacheManager.Factory.Get
                (
                    chave,
                    () =>
            {
                entity = dao.SelecionarPorTur(tur_id);
                return(entity);
            },
                    GestaoEscolarUtilBO.MinutosCacheMedio
                ),
                entity
            );

            return(entity);
        }
コード例 #9
0
        /// <summary>
        /// Override do GetEntity que guarda em Cache a entidade retornada.
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public new static ESC_Escola GetEntity(ESC_Escola entity)
        {
            if (HttpContext.Current != null)
            {
                // Chave padrão do cache - nome do método + parâmetros.
                string chave = RetornaChaveCache_GetEntity(entity);
                object cache = HttpContext.Current.Cache[chave];

                if (cache == null)
                {
                    new ESC_EscolaDAO().Carregar(entity);
                    // Adiciona cache com validade de 6h.
                    HttpContext.Current.Cache.Insert(chave, entity, null, DateTime.Now.AddMinutes(GestaoEscolarUtilBO.MinutosCacheMedio)
                                                     , System.Web.Caching.Cache.NoSlidingExpiration);
                }
                else
                {
                    GestaoEscolarUtilBO.CopiarEntity(cache, entity);
                }

                return(entity);
            }

            new ESC_EscolaDAO().Carregar(entity);

            return(entity);
        }
コード例 #10
0
        /// <summary>
        /// Salva todas as entidades dentro da estrutura, para salvar um objetivo dos componentes curriculares.
        /// </summary>
        /// <param name="cadastro">Estrutura a ser salva.</param>
        /// <returns></returns>
        public static bool Save(ORC_Objetivo_Cadastro cadastro)
        {
            TalkDBTransaction banco = new ORC_ObjetivoDAO()._Banco.CopyThisInstance();

            banco.Open(IsolationLevel.ReadCommitted);

            try
            {
                ORC_Objetivo entity = cadastro.entObjetivo;

                if (!entity.Validate())
                {
                    throw new ValidationException(GestaoEscolarUtilBO.ErrosValidacao(entity));
                }

                Save(entity, banco);

                // Salvar conteúdos.
                ORC_ConteudoBO.SalvarConteudos(cadastro.listConteudos, entity, banco);

                return(true);
            }
            catch (Exception ex)
            {
                banco.Close(ex);
                throw;
            }
            finally
            {
                banco.Close();
            }
        }
コード例 #11
0
ファイル: Cadastro.aspx.cs プロジェクト: Mualumene/SGP
        /// <summary>
        /// Carrega as quantidades de aulas.
        /// </summary>
        public void CarregaQuantidadeAula()
        {
            try
            {
                btnGerar.Visible = false;

                if (UCCCalendario1.Valor > 0 && !rbtPeriodo.SelectedValue.Equals(""))
                {
                    int       tpc_id = Convert.ToInt32(rbtPeriodo.SelectedValue);
                    DataTable dtAula = CLS_TurmaAulaGeradaBO.GerarAula(VsIdDoc, UCCCalendario1.Valor, tpc_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id);

                    gdvAulas.Columns[indiceColunaCurso].HeaderText = GestaoEscolarUtilBO.nomePadraoCurso(__SessionWEB.__UsuarioWEB.Usuario.ent_id);
                    gdvAulas.Columns[indiceColunaSab].Visible      = ACA_ParametroAcademicoBO.ParametroValorBooleanoPorEntidade(eChaveAcademico.EXIBIR_SABADO_GERAR_AULAS, __SessionWEB.__UsuarioWEB.Usuario.ent_id);

                    periodosEfetivados  = "";
                    gdvAulas.DataSource = dtAula;
                    gdvAulas.DataBind();

                    if (!string.IsNullOrEmpty(periodosEfetivados))
                    {
                        lblPeriodoEfetivado.Visible = true;
                        lblPeriodoEfetivado.Text    = UtilBO.GetErroMessage(GetGlobalResourceObject("Classe", "PlanejamentoDiario.MensagemEfetivado").ToString(),
                                                                            UtilBO.TipoMensagem.Informacao);
                    }
                }
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                lblMessage.Text = UtilBO.GetErroMessage("Erro ao carregar gerar aulas.", UtilBO.TipoMensagem.Erro);
            }
        }
コード例 #12
0
ファイル: ACA_TipoDisciplinaBO.cs プロジェクト: Mualumene/SGP
        public static List <sTipoDisciplina> SelecionaTipoDisciplinaPorEscola(int esc_id)
        {
            List <sTipoDisciplina> lista = (from dr in new ACA_TipoDisciplinaDAO().SelectByEscola(esc_id).AsEnumerable()
                                            select(sTipoDisciplina) GestaoEscolarUtilBO.DataRowToEntity(dr, new sTipoDisciplina())).ToList();

            return(lista);
        }
コード例 #13
0
ファイル: ACA_TipoDisciplinaBO.cs プロジェクト: Mualumene/SGP
        /// <summary>
        /// Carrega os tipos de disciplinas por curso e ciclo
        /// </summary>
        /// <param name="cur_id">Campo Id da tabela ACA_Curso</param>
        /// <param name="tci_id">Id do tipo de ciclo</param>
        /// <returns>Lista com os tipos de disciplina</returns>
        public static List <ACA_TipoDisciplina> SelecionaTipoDisciplinaPorCursoTipoCiclo(int cur_id, int tci_id, int esc_id, int AppMinutosCacheLongo = 0)
        {
            List <ACA_TipoDisciplina> lista = null;

            if (AppMinutosCacheLongo > 0 && HttpContext.Current != null)
            {
                string chave = String.Format("Cache_SelecionaTipoDisciplinaPorCursoTipoCiclo_{0}_{1}_{2}"
                                             , cur_id
                                             , tci_id
                                             , esc_id);
                object cache = HttpContext.Current.Cache[chave];

                if (cache == null)
                {
                    lista = (from dr in new ACA_CurriculoDisciplinaDAO().SelectBy_CursoTipoCiclo(cur_id, tci_id, esc_id).AsEnumerable()
                             select(ACA_TipoDisciplina) GestaoEscolarUtilBO.DataRowToEntity(dr, new ACA_TipoDisciplina())).ToList();

                    HttpContext.Current.Cache.Insert(chave, lista, null, DateTime.Now.AddMinutes(AppMinutosCacheLongo), System.Web.Caching.Cache.NoSlidingExpiration);
                }
                else
                {
                    lista = (List <ACA_TipoDisciplina>)cache;
                }
            }
            else
            {
                lista = (from dr in new ACA_CurriculoDisciplinaDAO().SelectBy_CursoTipoCiclo(cur_id, tci_id, esc_id).AsEnumerable()
                         select(ACA_TipoDisciplina) GestaoEscolarUtilBO.DataRowToEntity(dr, new ACA_TipoDisciplina())).ToList();
            }

            return(lista);
        }
コード例 #14
0
ファイル: ACA_TipoDisciplinaBO.cs プロジェクト: Mualumene/SGP
        public static List <sTipoDisciplina> SelecionaTipoDisciplinaObjetosAprendizagem(Guid ent_id, int cal_ano, int esc_id, Guid uad_idSuperior, int AppMinutosCacheLongo = 0)
        {
            List <sTipoDisciplina> lista = null;

            if (AppMinutosCacheLongo > 0 && HttpContext.Current != null)
            {
                string chave = String.Format("Cache_SelecionaTipoDisciplinaObjetosAprendizagem_{0}_{1}_{2}_{3}", ent_id, cal_ano, esc_id, uad_idSuperior);
                object cache = HttpContext.Current.Cache[chave];

                if (cache == null)
                {
                    bool controlarOrdem = ACA_ParametroAcademicoBO.ParametroValorBooleanoPorEntidade(eChaveAcademico.CONTROLAR_ORDEM_DISCIPLINAS, ent_id);

                    lista = (from dr in new ACA_TipoDisciplinaDAO().SelectBy_ObjetosAprendizagem(cal_ano, true, controlarOrdem, esc_id, uad_idSuperior, out totalRecords).AsEnumerable()
                             select(sTipoDisciplina) GestaoEscolarUtilBO.DataRowToEntity(dr, new sTipoDisciplina())).ToList();

                    HttpContext.Current.Cache.Insert(chave, lista, null, DateTime.Now.AddMinutes(AppMinutosCacheLongo), System.Web.Caching.Cache.NoSlidingExpiration);
                }
                else
                {
                    lista = (List <sTipoDisciplina>)cache;
                }
            }
            else
            {
                bool controlarOrdem = ACA_ParametroAcademicoBO.ParametroValorBooleanoPorEntidade(eChaveAcademico.CONTROLAR_ORDEM_DISCIPLINAS, ent_id);

                lista = (from dr in new ACA_TipoDisciplinaDAO().SelectBy_ObjetosAprendizagem(cal_ano, true, controlarOrdem, esc_id, uad_idSuperior, out totalRecords).AsEnumerable()
                         select(sTipoDisciplina) GestaoEscolarUtilBO.DataRowToEntity(dr, new sTipoDisciplina())).ToList();
            }

            return(lista);
        }
コード例 #15
0
ファイル: AlunosTurma.aspx.cs プロジェクト: Mualumene/SGP
    /// <summary>
    /// Carrega os dados na tela.
    /// </summary>
    public void carregaTela()
    {
        try
        {
            DataTable dtTurma = TUR_TurmaBO.SelectBY_tur_id(_VS_tur_id, __SessionWEB.__UsuarioWEB.Usuario.ent_id);

            int qtVagas, qtMatriculados;
            TUR_TurmaBO.RetornaVagasMatriculadosPor_Turma(_VS_tur_id, out qtVagas, out qtMatriculados);

            _lblTurma.Text           = String.Format("Turma: <b>{0} </b><br/>", dtTurma.Rows[0]["tur_codigo"]);
            _lblEscola.Text          = String.Format("Escola: <b>{0} </b><br/>", dtTurma.Rows[0]["tur_escolaUnidade"]);
            _lblCalendario.Text      = String.Format("Calendário: <b>{0} </b><br/>", dtTurma.Rows[0]["tur_calendario"]);
            _lblCurso.Text           = String.Format(GestaoEscolarUtilBO.nomePadraoCurso(__SessionWEB.__UsuarioWEB.Usuario.ent_id) + ": <b>{0} </b><br/>", dtTurma.Rows[0]["tur_curso"]);
            _lblTurno.Text           = String.Format("Turno: <b>{0} </b><br/>", dtTurma.Rows[0]["tur_turno"]);
            _lblSituacao.Text        = String.Format("Situação da turma: <b>{0} </b><br/>", dtTurma.Rows[0]["tur_situacao"]);
            _lblCapacidade.Text      = String.Format("Capacidade da turma: <b>{0} </b><br/>", qtVagas);
            _lblQtdMatriculados.Text = String.Format("Quantidade de matriculados na turma: <b>{0} </b><br/>", qtMatriculados);

            PesquisaAlunos();
            divLegenda.Visible = _dgvAlunos.Rows.Count > 0;

            // verifica se o grupo tem permissão para alteracoes
            _dgvAlunos.Columns[_dgvAlunos_ColunaNumeroChamada].Visible = false;

            _dgvAlunos.AllowSorting = true;
        }
        catch (Exception ex)
        {
            ApplicationWEB._GravaErro(ex);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar alunos da turma.", UtilBO.TipoMensagem.Erro);
        }
    }
コード例 #16
0
        /// <summary>
        /// Override do GetEntity que guarda em Cache a entidade retornada.
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public new static ACA_EscalaAvaliacaoNumerica GetEntity(ACA_EscalaAvaliacaoNumerica entity, TalkDBTransaction banco = null)
        {
            string chave = RetornaChaveCache_GetEntity(entity);

            ACA_EscalaAvaliacaoNumericaDAO dao = new ACA_EscalaAvaliacaoNumericaDAO();

            if (banco != null)
            {
                dao._Banco = banco;
            }

            GestaoEscolarUtilBO.CopiarEntity
            (
                CacheManager.Factory.Get
                (
                    chave,
                    () =>
            {
                dao.Carregar(entity);
                return(entity);
            },
                    GestaoEscolarUtilBO.MinutosCacheMedio
                ),
                entity
            );

            return(entity);
        }
コード例 #17
0
        /// <summary>
        /// Salva a entidade validando ela, e setando a situação de acordo com a vigência.
        /// </summary>
        /// <param name="entity">Entidade a ser salva</param>
        /// <param name="banco">Transação com banco</param>
        /// <returns></returns>
        public static new bool Save(TUR_TurmaDocente entity, TalkDBTransaction banco)
        {
            // Validar entidade.
            if (!entity.Validate())
            {
                throw new ValidationException(GestaoEscolarUtilBO.ErrosValidacao(entity));
            }

            if (entity.tdt_situacao != (byte)TUR_TurmaDocenteSituacao.Excluido)
            {
                // Colocar situação ativa ou inativa pro docente, de acordo com a vigência.
                if (entity.tdt_vigenciaInicio.Date <= DateTime.Now.Date &&
                    (entity.tdt_vigenciaFim == new DateTime() || entity.tdt_vigenciaFim.Date >= DateTime.Now.Date)
                    )
                {
                    entity.tdt_situacao = (byte)TUR_TurmaDocenteSituacao.Ativo;
                }
                else
                {
                    entity.tdt_situacao = (byte)TUR_TurmaDocenteSituacao.Inativo;
                }
            }

            LimpaCache(entity, Guid.Empty);

            TUR_TurmaDocenteDAO dao = new TUR_TurmaDocenteDAO {
                _Banco = banco
            };

            return(dao.Salvar(entity));
        }
コード例 #18
0
        /// <summary>
        /// Sobrescrição do método salvar.
        /// </summary>
        /// <param name="entityCursoReunioes">Entidade de CursoReunioes.</param>
        /// <param name="ent_id">Id da entidade do usuário logado.</param>
        /// <returns>Verdadeiro se salvou com sucesso.</returns>
        public static bool Salvar(ACA_CursoReunioes entityCursoReunioes, Guid ent_id)
        {
            TalkDBTransaction _bancoGestao = new ACA_EventoDAO()._Banco.CopyThisInstance();

            _bancoGestao.Open(IsolationLevel.ReadCommitted);

            try
            {
                // Verifica a validade dos atributos obrigatórios da tabela ACA_CursoReunioes
                if (entityCursoReunioes.Validate())
                {
                    bool cadastroReunioesPorPeriodo = ACA_ParametroAcademicoBO.ParametroValorBooleanoPorEntidade(eChaveAcademico.CADASTRAR_REUNIOES_POR_PERIODO_CALENDARIO, ent_id);

                    // Verifica se existem registros de frequência ligados ao calendário.
                    if (CLS_FrequenciaReuniaoResponsaveisBO.VerificaFrequenciaPorCalendario(entityCursoReunioes.cal_id, entityCursoReunioes.cap_id, entityCursoReunioes.cur_id, entityCursoReunioes.crr_id, cadastroReunioesPorPeriodo))
                    {
                        throw new ValidationException("Não é possível alterar a quantidade de reuniões por período do calendário pois possui outros registros ligados a ele.");
                    }

                    return(Save(entityCursoReunioes, _bancoGestao));
                }

                throw new ValidationException(GestaoEscolarUtilBO.ErrosValidacao(entityCursoReunioes));
            }
            catch (Exception ex)
            {
                _bancoGestao.Close(ex);

                throw;
            }
            finally
            {
                _bancoGestao.Close();
            }
        }
コード例 #19
0
 /// <summary>
 /// Remove do cache a entidade.
 /// </summary>
 /// <param name="entity"></param>
 public static void LimpaCache_PeloCurso(ACA_Curso entity)
 {
     if (HttpContext.Current != null)
     {
         GestaoEscolarUtilBO.LimpaCache(string.Format("ACA_Curriculo_GetEntity_{0}_", entity.cur_id));
     }
 }
コード例 #20
0
    /// <summary>
    /// Carrega todos os cursos/currículos não excluídos logicamente no combo
    /// Filtrando por escola do curso, unidade da escola e situação do curso
    /// </summary>
    /// <param name="esc_id">Escola do curso</param>
    /// <param name="uni_id">Unidade da escola </param>
    /// <param name="dis_id">Disciplina</param>
    /// <param name="cur_situacao">Situação do curso</param>
    /// <param name="cal_id">Calendario</param>
    public void CarregarCursoCurriculoPorEscolaCalendarioDisciplina
    (
        int esc_id
        , int uni_id
        , int dis_id
        , byte cur_situacao
        , int cal_id
    )
    {
        odsDados.SelectParameters.Clear();
        ddlCombo.Items.Clear();

        odsDados.DataObjectTypeName = "MSTech.GestaoEscolar.Entities.ACA_Curso";
        odsDados.TypeName           = "MSTech.GestaoEscolar.BLL.ACA_CursoBO";
        odsDados.SelectMethod       = "SelecionaCursoCurriculoCalendarioEscolaDisciplina";
        odsDados.SelectParameters.Add("esc_id", esc_id.ToString());
        odsDados.SelectParameters.Add("uni_id", uni_id.ToString());
        odsDados.SelectParameters.Add("dis_id", dis_id.ToString());
        odsDados.SelectParameters.Add("cur_situacao", cur_situacao.ToString());
        odsDados.SelectParameters.Add("ent_id", __SessionWEB.__UsuarioWEB.Usuario.ent_id.ToString());
        odsDados.SelectParameters.Add("cal_id", cal_id.ToString());
        odsDados.SelectParameters.Add("appMinutosCacheLongo", ApplicationWEB.AppMinutosCacheLongo.ToString());

        ddlCombo.Items.Insert(0, new ListItem("-- Selecione um(a) " + GestaoEscolarUtilBO.nomePadraoCurso(__SessionWEB.__UsuarioWEB.Usuario.ent_id).ToLower() + " --", "-1;-1", true));
        ddlCombo.DataBind();
    }
コード例 #21
0
 /// <summary>
 /// Seleciona os dados para lançamento de frequencia externa do aluno
 /// </summary>
 /// <param name="alu_id">ID do aluno</param>
 /// <param name="mtu_id">ID da matrícula turma do aluno</param>
 /// <returns></returns>
 public static List <DadosLancamentoFreqExterna> SelecionaDadosAlunoLancamentoFrequenciaExterna(long alu_id, int mtu_id)
 {
     return(new CLS_AlunoFrequenciaExternaDAO().SelecionaDadosAlunoLancamentoFrequenciaExterna(alu_id, mtu_id)
            .Select()
            .Select(p => (DadosLancamentoFreqExterna)GestaoEscolarUtilBO.DataRowToEntity(p, new DadosLancamentoFreqExterna()))
            .ToList());
 }
コード例 #22
0
        public static bool DeletarPorEletivasAlunos
        (
            ACA_CurriculoDisciplina entity
            , TalkDBTransaction banco
            , Guid ent_id
        )
        {
            if (VerificaCurriculoDisciplina(entity.cur_id, entity.crr_id, entity.crp_id, entity.dis_id, banco))
            {
                ACA_CurriculoPeriodo crp = new ACA_CurriculoPeriodo {
                    cur_id = entity.cur_id, crr_id = entity.crr_id, crp_id = entity.crp_id
                };
                ACA_CurriculoPeriodoBO.GetEntity(crp, banco);

                ACA_Disciplina dis = new ACA_Disciplina {
                    dis_id = entity.dis_id
                };
                ACA_DisciplinaBO.GetEntity(dis, banco);

                throw new ValidationException("Não é possível excluir o(a) " + GestaoEscolarUtilBO.nomePadraoPeriodo(ent_id).ToLower() + " " + crp.crp_descricao + " do(a) " +
                                              CustomResource.GetGlobalResourceObject("Mensagens", "MSG_DISCIPLINA") + " eletiva " + dis.dis_nome + ", pois possui outros registros ligados a ele(a).");
            }

            ACA_CurriculoDisciplinaDAO dao = new ACA_CurriculoDisciplinaDAO {
                _Banco = banco
            };

            return(dao.Update_Situacao_By_EletivasAlunos(entity.cur_id, entity.crr_id, entity.crp_id, entity.dis_id));
        }
コード例 #23
0
        /// <summary>
        /// Salva os dados do planejamento da disciplina. Considera a data de alteração do tablet.
        /// </summary>
        /// <param name="entity">Entidade CLS_TurmaDisciplinaPlanejamento</param>
        /// <param name="banco">Transação</param>
        public static bool SaveSincronizacaoDiarioClasse(CLS_TurmaDisciplinaPlanejamento entity, TalkDBTransaction banco)
        {
            if (entity.Validate())
            {
                // Se for uma inclusão de planejamento.
                if (entity.IsNew)
                {
                    // Verifica se já existe um planejamento cadastrado para a mesma disciplina e período do calendário.
                    int tdp_id = VerificaPlanejamentoExistente(entity.tud_id, entity.tpc_id, entity.tdt_posicao, banco);

                    // Se existir apenas atualiza o registro já existente.
                    if (tdp_id > 0)
                    {
                        entity.tdp_id = tdp_id;
                        entity.IsNew  = false;
                    }
                }

                CLS_TurmaDisciplinaPlanejamentoDAO dao = new CLS_TurmaDisciplinaPlanejamentoDAO {
                    _Banco = banco
                };
                return(dao.SalvarSincronizacaoDiarioClasse(entity));
            }

            throw new ValidationException(GestaoEscolarUtilBO.ErrosValidacao(entity));
        }
コード例 #24
0
ファイル: MTR_MomentoAnoBO.cs プロジェクト: Mualumene/SGP
        public static new bool Delete(MTR_MomentoAno entity)
        {
            TalkDBTransaction banco = new MTR_MomentoAnoDAO()._Banco;

            banco.Open(IsolationLevel.ReadCommitted);

            try
            {
                // Verifica se o registro está sendo usado em outras tabelas.
                if (GestaoEscolarUtilBO.VerificaIntegridadaChaveDupla
                    (
                        "mom_ano"
                        , "mom_id"
                        , entity.mom_ano.ToString()
                        , entity.mom_id.ToString()
                        , "MTR_MomentoCalendarioPeriodo,MTR_MomentoCongelamentoEscola,MTR_TipoMomentoAno,MTR_MomentoAno,MTR_TipoMomentoAnoCurriculo"
                        , banco
                    ))
                {
                    throw new ValidationException("Não é possível excluir a configuração dos momentos de movimentação pois possui outros registros ligados a ela.");
                }

                return(Delete(entity, banco));
            }
            catch (Exception ex)
            {
                banco.Close(ex);
                throw;
            }
            finally
            {
                banco.Close();
            }
        }
コード例 #25
0
        /// <summary>
        /// O método salva as observações por disciplina.
        /// </summary>
        /// <param name="tud_id">ID da turma disciplina.</param>
        /// <param name="alu_id">ID do aluno.</param>
        /// <param name="mtu_id">ID da matrícula turma do aluno.</param>
        /// <param name="mtd_id">ID da matrícula turma disciplina do aluno.</param>
        /// <param name="fav_id">ID do formato de avaliação.</param>
        /// <param name="ava_id">ID da avaliação.</param>
        /// <param name="ltObservacao">Lista de observações.</param>
        /// <param name="banco"></param>
        /// <returns></returns>
        public static bool SalvarObservacao(long tud_id, long alu_id, int mtu_id, int mtd_id, int fav_id, int ava_id, CLS_AlunoAvaliacaoTurDis_Observacao observacao)
        {
            TalkDBTransaction banco = new CLS_AlunoAvaliacaoTurmaDisciplinaObservacaoDAO()._Banco.CopyThisInstance();

            banco.Open(IsolationLevel.ReadCommitted);

            try
            {
                if (observacao.entityObservacao != null && observacao.entityObservacao != new CLS_AlunoAvaliacaoTurmaDisciplinaObservacao())
                {
                    Save(observacao.entityObservacao, banco);
                }
                // Limpa cache do fechamento, para atualizar o check.
                GestaoEscolarUtilBO.LimpaCache(MTR_MatriculaTurmaDisciplinaBO.RetornaChaveCache_GetSelectBy_TurmaDisciplinaPeriodo(tud_id, fav_id, ava_id, string.Empty));
                GestaoEscolarUtilBO.LimpaCache(MTR_MatriculaTurmaDisciplinaBO.RetornaChaveCache_GetSelectBy_TurmaDisciplinaPeriodoFiltroDeficiencia(tud_id, fav_id, ava_id, string.Empty));
                return(true);
            }
            catch (ValidationException ex)
            {
                banco.Close(ex);
                throw;
            }
            catch (Exception ex)
            {
                banco.Close(ex);
                throw;
            }
            finally
            {
                if (banco.ConnectionIsOpen)
                {
                    banco.Close();
                }
            }
        }
コード例 #26
0
        public new static bool Save
        (
            CLS_TurmaNota entity,
            TalkDBTransaction banco
        )
        {
            if (entity.Validate())
            {
                CLS_TurmaNota entityAtividadeAuxiliar = new CLS_TurmaNota
                {
                    tud_id = entity.tud_id,
                    tnt_id = entity.tnt_id
                };
                GetEntity(entityAtividadeAuxiliar, banco);

                if (!entityAtividadeAuxiliar.IsNew)
                {
                    entity.tdt_posicao = entityAtividadeAuxiliar.tdt_posicao;
                    entity.usu_id      = entityAtividadeAuxiliar.usu_id;
                    //entity.usu_idDocenteAlteracao = entityAtividadeAuxiliar.usu_idDocenteAlteracao;
                }

                return(new CLS_TurmaNotaDAO {
                    _Banco = banco
                }.Salvar(entity));
            }

            throw new ValidationException(GestaoEscolarUtilBO.ErrosValidacao(entity));
        }
コード例 #27
0
ファイル: ORC_ConteudoBO.cs プロジェクト: Mualumene/SGP
        public new static bool Delete
        (
            ORC_Conteudo entity
        )
        {
            ORC_ConteudoDAO dao = new ORC_ConteudoDAO();

            // Verifica se o conteúdo do objetivo da orientação curricular pode ser deletado
            if (GestaoEscolarUtilBO.VerificaIntegridadaChaveDupla
                (
                    "obj_id"
                    , "ctd_id"
                    , entity.obj_id.ToString()
                    , entity.ctd_id.ToString()
                    , "ORC_Objetivo,ORC_Conteudo,ORC_ConteudoItem,ORC_Habilidades,ORC_ConteudoTipoPeriodoCalendario"
                    , dao._Banco
                ))
            {
                throw new ValidationException("Não é possível excluir o conteúdo do objetivo da orientação curricular, pois possui outros registros ligados a ele.");
            }

            if (dao.VerificaConteudosBy_obj_id(entity.obj_id, entity.ctd_id) > 0)
            {
                // Deleta logicamente o conteúdo do objetivo da orientação curricular
                dao.Delete(entity);
            }
            else
            {
                throw new ValidationException("Não é possível excluir o conteúdo do objetivo da orientação curricular, pois é necessário no mínimo um conteúdo para o objetivo.");
            }

            return(true);
        }
コード例 #28
0
        /// <summary>
        /// Salva os dados em lote
        /// </summary>
        /// <param name="list">Lista de dados.</param>
        /// <param name="banco">Transação.</param>
        /// <returns>True em caso de sucesso.</returns>
        public static bool SalvarEmLote(List <CLS_FrequenciaReuniao> list, TalkDBTransaction banco = null)
        {
            if (list.Any())
            {
                List <CLS_FrequenciaReuniao_SalvarEmLote> listFrequenciaReuniao =
                    list.Select(p => new CLS_FrequenciaReuniao_SalvarEmLote
                {
                    tur_id        = p.tur_id,
                    cal_id        = p.cal_id,
                    cap_id        = p.cap_id,
                    frp_id        = p.frp_id,
                    frr_efetivado = p.frr_efetivado
                }).ToList();

                DataTable dtFrequenciaReuniao = GestaoEscolarUtilBO.EntityToDataTable <CLS_FrequenciaReuniao_SalvarEmLote>(listFrequenciaReuniao);

                return(banco == null ?
                       new CLS_FrequenciaReuniaoDAO().SalvarEmLote(dtFrequenciaReuniao) :
                       new CLS_FrequenciaReuniaoDAO {
                    _Banco = banco
                }.SalvarEmLote(dtFrequenciaReuniao));
            }

            return(true);
        }
コード例 #29
0
        /// <summary>
        /// Gera o relatorio com base nos filtros selecionados.
        /// </summary>
        private void GerarRel()
        {
            SalvarBusca();

            string parameter = string.Empty;

            // mostra a quantidade de dias letivos no ano
            int numeroDiasUteis = GestaoEscolarUtilBO.NumeroDeDiasUteis(UCComboCalendario1.Valor, UCComboUAEscola.Esc_ID, UCComboUAEscola.Uni_ID, __SessionWEB.__UsuarioWEB.Usuario.ent_id);

            string parametroAtivDiversificada = ACA_ParametroAcademicoBO.ParametroValorPorEntidade(eChaveAcademico.TIPO_EVENTO_ATIVIDADE_DIVERSIFICADA, __SessionWEB.__UsuarioWEB.Usuario.ent_id);
            string report = ((int)MSTech.GestaoEscolar.BLL.ReportNameGestaoAcademica.AtaEnriquecimentoCurricular).ToString();

            parameter = "cal_id=" + UCComboCalendario1.Valor.ToString()
                        + "&esc_id=" + UCComboUAEscola.Esc_ID.ToString()
                        + "&mostraCodigoEscola=" + ACA_ParametroAcademicoBO.ParametroValorBooleanoPorEntidade(eChaveAcademico.ORDENAR_ESCOLAS_POR_CODIGO, __SessionWEB.__UsuarioWEB.Usuario.ent_id)
                        + "&tur_id=" + UCComboTurma1.Valor[0].ToString()
                        + "&tev_id=" + (string.IsNullOrEmpty(parametroAtivDiversificada) ? "0" : parametroAtivDiversificada)
                        + "&numeroDiasUteis=" + numeroDiasUteis
                        + "&logo=" + String.Concat(MSTech.GestaoEscolar.BLL.CFG_ServidorRelatorioBO.CarregarServidorRelatorioPorEntidade(__SessionWEB.__UsuarioWEB.Usuario.ent_id, ApplicationWEB.AppMinutosCacheLongo).srr_pastaRelatorios.ToString()
                                                   , ApplicationWEB.LogoRelatorioSSRS)
                        + "&corAlunoInativo=" + ApplicationWEB.AlunoInativo
                        + "&corAlunoFrequenciaLimite=" + ApplicationWEB.AlunoFrequenciaLimite
                        + "&Bimestre=" + GestaoEscolarUtilBO.nomePadraoPeriodo_Calendario(__SessionWEB.__UsuarioWEB.Usuario.ent_id)
                        + "&nomeDisciplina=" + GetGlobalResourceObject("Mensagens", "MSG_DISCIPLINA")
                        + "&visaoGestor=" + (__SessionWEB.__UsuarioWEB.Grupo.vis_id != SysVisaoID.Individual)
                        + "&nomeMunicipio=" + GetGlobalResourceObject("Reporting", "Reporting.DocDctSubCabecalhoRetrato.Municipio")
                        + "&nomeSecretaria=" + GetGlobalResourceObject("Reporting", "Reporting.DocDctSubCabecalhoRetrato.Secretaria")
                        + "&cal_ano=" + UCComboCalendario1.Cal_ano.ToString()
                        + "&documentoOficial=true"
                        + "&mensagemFrequenciaExterna=" + ACA_ParametroAcademicoBO.ParametroValorPorEntidade(eChaveAcademico.MENSAGEM_FREQUENCIA_EXTERNA, __SessionWEB.__UsuarioWEB.Usuario.ent_id);

            MSTech.GestaoEscolar.BLL.CFG_RelatorioBO.CallReport("Relatorios", report, parameter, HttpContext.Current);
        }
コード例 #30
0
        public new static bool Save
        (
            ACA_AlunoEscolaOrigem entity
            , TalkDBTransaction banco
        )
        {
            // Verifica se os dados da pessoa serão sempre salvos em maiúsculo.
            string sSalvarMaiusculo        = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.SALVAR_SEMPRE_MAIUSCULO);
            bool   Salvar_Sempre_Maiusculo = !string.IsNullOrEmpty(sSalvarMaiusculo) && Convert.ToBoolean(sSalvarMaiusculo);

            if (Salvar_Sempre_Maiusculo)
            {
                if (!string.IsNullOrEmpty(entity.eco_nome))
                {
                    entity.eco_nome = entity.eco_nome.ToUpper();
                }
            }

            if (entity.Validate())
            {
                ACA_AlunoEscolaOrigemDAO dao = new ACA_AlunoEscolaOrigemDAO {
                    _Banco = banco
                };
                return(dao.Salvar(entity));
            }

            throw new ValidationException(GestaoEscolarUtilBO.ErrosValidacao(entity));
        }