function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = "Biblioteca - Detalhe"; $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet"); $this->cod_biblioteca = $_GET["cod_biblioteca"]; $tmp_obj = new clsPmieducarBiblioteca($this->cod_biblioteca); $registro = $tmp_obj->detalhe(); if (!$registro) { header("location: educar_biblioteca_lst.php"); die; } if (class_exists("clsPmieducarInstituicao")) { $obj_ref_cod_instituicao = new clsPmieducarInstituicao($registro["ref_cod_instituicao"]); $det_ref_cod_instituicao = $obj_ref_cod_instituicao->detalhe(); $registro["ref_cod_instituicao"] = $det_ref_cod_instituicao["nm_instituicao"]; } else { $registro["ref_cod_instituicao"] = "Erro na geracao"; echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->"; } if (class_exists("clsPmieducarEscola")) { $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_cod_escola"]); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $idpes = $det_ref_cod_escola["ref_idpes"]; if ($idpes) { $obj_escola = new clsPessoaJuridica($idpes); $obj_escola_det = $obj_escola->detalhe(); $registro["ref_cod_escola"] = $obj_escola_det["fantasia"]; } else { $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]); $obj_escola_det = $obj_escola->detalhe(); $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"]; } } else { $registro["ref_cod_escola"] = "Erro na geracao"; echo "<!--\nErro\nClasse nao existente: clsPmieducarEscola\n-->"; } $obj_permissoes = new clsPermissoes(); $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { if ($registro["ref_cod_instituicao"]) { $this->addDetalhe(array("Instituição", "{$registro["ref_cod_instituicao"]}")); } } if ($registro["ref_cod_escola"]) { $this->addDetalhe(array("Escola", "{$registro["ref_cod_escola"]}")); } if ($registro["nm_biblioteca"]) { $this->addDetalhe(array("Biblioteca", "{$registro["nm_biblioteca"]}")); } if ($registro["tombo_automatico"]) { $this->addDetalhe(array("Tombo Automático", dbBool($registro["tombo_automatico"]) ? "Sim" : "Não")); } $obj = new clsPmieducarBibliotecaUsuario(); $lst = $obj->lista($this->cod_biblioteca); if ($lst) { $tabela = "<TABLE>\n\t\t\t\t\t <TR align=center>\n\t\t\t\t\t <TD bgcolor=#A1B3BD><B>Nome</B></TD>\n\t\t\t\t\t </TR>"; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = " bgcolor=#E4E9ED "; } else { $color = " bgcolor=#FFFFFF "; } $obj_cod_usuario = new clsPessoa_($valor["ref_cod_usuario"]); $obj_usuario_det = $obj_cod_usuario->detalhe(); $nome_usuario = $obj_usuario_det['nome']; $tabela .= "<TR>\n\t\t\t\t\t\t\t <TD {$color} align=left>{$nome_usuario}</TD>\n\t\t\t\t\t\t\t</TR>"; $cont++; } $tabela .= "</TABLE>"; } if ($tabela) { $this->addDetalhe(array("Usuário", "{$tabela}")); } if ($obj_permissoes->permissao_cadastra(591, $this->pessoa_logada, 3)) { $this->url_novo = "educar_biblioteca_cad.php"; $this->url_editar = "educar_biblioteca_cad.php?cod_biblioteca={$registro["cod_biblioteca"]}"; } $this->url_cancelar = "educar_biblioteca_lst.php"; $this->largura = "100%"; }
/** * Retorna uma lista filtrados de acordo com os parametros * * @param integer int_ordem * @param bool bool_ativo * * @return array */ function lista($int_ref_cod_tipo_portaria = null, $int_cod_campo = null, $int_tipo = null, $int_ordem = null, $bool_ativo = null) { $sql = "SELECT {$this->_campos_lista} FROM {$this->_tabela}"; $filtros = ""; $whereAnd = " WHERE "; if (is_numeric($int_ref_cod_tipo_portaria)) { $filtros .= "{$whereAnd} ref_cod_tipo_portaria = '{$int_ref_cod_tipo_portaria}'"; $whereAnd = " AND "; } if (is_numeric($int_cod_campo)) { $filtros .= "{$whereAnd} cod_campo = '{$int_cod_campo}'"; $whereAnd = " AND "; } if (is_numeric($int_tipo)) { $filtros .= "{$whereAnd} tipo = '{$int_tipo}'"; $whereAnd = " AND "; } if (is_numeric($int_sequencial)) { $filtros .= "{$whereAnd} sequencial = '{$int_sequencial}'"; $whereAnd = " AND "; } if (is_numeric($int_ordem)) { $filtros .= "{$whereAnd} ordem = '{$int_ordem}'"; $whereAnd = " AND "; } if (!is_null($bool_ativo)) { if (dbBool($bool_ativo)) { $filtros .= "{$whereAnd} ativo = TRUE"; } else { $filtros .= "{$whereAnd} ativo = FALSE"; } $whereAnd = " AND "; } $db = new clsBanco(); $countCampos = count(explode(",", $this->_campos_lista)); $resultado = array(); $sql .= $filtros . $this->getOrderby() . $this->getLimite(); $this->_total = $db->CampoUnico("SELECT COUNT(0) FROM {$this->_tabela} {$filtros}"); $db->Consulta($sql); if ($countCampos > 1) { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $tupla["_total"] = $this->_total; $resultado[] = $tupla; } } else { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $resultado[] = $tupla[$this->_campos_lista]; } } if (count($resultado)) { return $resultado; } return false; }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = "Acesso - Detalhe"; $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet"); $this->cod_acesso = $_GET["cod_acesso"]; $tmp_obj = new clsPortalAcesso($this->cod_acesso); $registro = $tmp_obj->detalhe(); if (!$registro) { header("location: portal_acesso_lst.php"); die; } if ($registro["cod_acesso"]) { $this->addDetalhe(array("Acesso", "{$registro["cod_acesso"]}")); } if ($registro["data_hora"]) { $this->addDetalhe(array("Data Hora", dataFromPgToBr($registro["data_hora"], "d/m/Y H:i"))); } if ($registro["ip_externo"]) { $this->addDetalhe(array("Ip Externo", "{$registro["ip_externo"]}")); } if ($registro["ip_interno"]) { $this->addDetalhe(array("Ip Interno", "{$registro["ip_interno"]}")); } if ($registro["cod_pessoa"]) { $this->addDetalhe(array("Pessoa", "{$registro["cod_pessoa"]}")); } if ($registro["obs"]) { $this->addDetalhe(array("Obs", "{$registro["obs"]}")); } if (!is_null($registro["sucesso"])) { $this->addDetalhe(array("Sucesso", dbBool($registro["sucesso"]) ? "Sim" : "Não")); } $this->url_novo = "portal_acesso_cad.php"; $this->url_editar = "portal_acesso_cad.php?cod_acesso={$registro["cod_acesso"]}"; $this->url_cancelar = "portal_acesso_lst.php"; $this->largura = "100%"; }
/** * Edita os dados de um registro * * @return bool */ function edita() { if (is_numeric($this->cod_topo_portal) && is_numeric($this->ref_funcionario_exc)) { $db = new clsBanco(); $set = ""; if (is_numeric($this->ref_funcionario_cad)) { $set .= "{$gruda}ref_funcionario_cad = '{$this->ref_funcionario_cad}'"; $gruda = ", "; } if (is_numeric($this->ref_funcionario_exc)) { $set .= "{$gruda}ref_funcionario_exc = '{$this->ref_funcionario_exc}'"; $gruda = ", "; } if (is_numeric($this->ref_cod_menu_portal)) { $set .= "{$gruda}ref_cod_menu_portal = '{$this->ref_cod_menu_portal}'"; $gruda = ", "; } if (is_string($this->caminho1)) { $set .= "{$gruda}caminho1 = '{$this->caminho1}'"; $gruda = ", "; } if (is_string($this->caminho2)) { $set .= "{$gruda}caminho2 = '{$this->caminho2}'"; $gruda = ", "; } if (is_string($this->caminho3)) { $set .= "{$gruda}caminho3 = '{$this->caminho3}'"; $gruda = ", "; } if (is_string($this->data_cadastro)) { $set .= "{$gruda}data_cadastro = '{$this->data_cadastro}'"; $gruda = ", "; } $set .= "{$gruda}data_exclusao = NOW()"; $gruda = ", "; if (isset($this->ativo)) { if (dbBool($this->ativo)) { $this->ativo = "1"; } else { $this->ativo = "0"; } $set .= "{$gruda}ativo = {$this->ativo}"; $gruda = ", "; } if ($set) { $db->Consulta("UPDATE {$this->_tabela} SET {$set} WHERE cod_topo_portal = '{$this->cod_topo_portal}'"); return true; } } return false; }
* ctima@itajai.sc.gov.br * * * * Este programa é software livre, você pode redistribuí-lo e/ou * * modificá-lo sob os termos da Licença Pública Geral GNU, conforme * * publicada pela Free Software Foundation, tanto a versão 2 da * * Licença como (a seu critério) qualquer versão mais nova. * * * * Este programa é distribuído na expectativa de ser útil, mas SEM * * QUALQUER GARANTIA. Sem mesmo a garantia implícita de COMERCIALI- * * ZAÇÃO ou de ADEQUAÇÃO A QUALQUER PROPÓSITO EM PARTICULAR. Con- * * sulte a Licença Pública Geral GNU para obter mais detalhes. * * * * Você deve ter recebido uma cópia da Licença Pública Geral GNU * * junto com este programa. Se não, escreva para a Free Software * * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA * * 02111-1307, USA. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ require_once "include/clsBanco.inc.php"; require_once "include/funcoes.inc.php"; if (is_numeric($_GET['biblioteca'])) { $db = new clsBanco(); $tombo = $db->CampoUnico("SELECT tombo_automatico FROM pmieducar.biblioteca WHERE cod_biblioteca = {$_GET["biblioteca"]} AND ativo = 1"); if (dbBool($tombo)) { echo 1; } else { echo 0; } die; } echo 0;
/** * Edita os dados de um registro * * @return bool */ function edita() { if (is_numeric($this->cod_biblioteca)) { $db = new clsBanco(); $set = ""; if (is_numeric($this->ref_cod_instituicao)) { $set .= "{$gruda}ref_cod_instituicao = '{$this->ref_cod_instituicao}'"; $gruda = ", "; } if (is_numeric($this->ref_cod_escola)) { $set .= "{$gruda}ref_cod_escola = '{$this->ref_cod_escola}'"; $gruda = ", "; } if (is_string($this->nm_biblioteca)) { $set .= "{$gruda}nm_biblioteca = '{$this->nm_biblioteca}'"; $gruda = ", "; } if (is_numeric($this->valor_multa)) { $set .= "{$gruda}valor_multa = '{$this->valor_multa}'"; $gruda = ", "; } else { if ($this->valor_multa == "NULL") { $set .= "{$gruda}valor_multa = {$this->valor_multa}"; $gruda = ", "; } } if (is_numeric($this->max_emprestimo)) { $set .= "{$gruda}max_emprestimo = '{$this->max_emprestimo}'"; $gruda = ", "; } else { if ($this->max_emprestimo == "NULL") { $set .= "{$gruda}max_emprestimo = {$this->max_emprestimo}"; $gruda = ", "; } } if (is_numeric($this->valor_maximo_multa)) { $set .= "{$gruda}valor_maximo_multa = '{$this->valor_maximo_multa}'"; $gruda = ", "; } else { if ($this->valor_maximo_multa == "NULL") { $set .= "{$gruda}valor_maximo_multa = {$this->valor_maximo_multa}"; $gruda = ", "; } } if (is_string($this->data_cadastro)) { $set .= "{$gruda}data_cadastro = '{$this->data_cadastro}'"; $gruda = ", "; } $set .= "{$gruda}data_exclusao = NOW()"; $gruda = ", "; if (is_numeric($this->requisita_senha)) { $set .= "{$gruda}requisita_senha = '{$this->requisita_senha}'"; $gruda = ", "; } else { if ($this->requisita_senha == "NULL") { $set .= "{$gruda}requisita_senha = {$this->requisita_senha}"; $gruda = ", "; } } if (is_numeric($this->ativo)) { $set .= "{$gruda}ativo = '{$this->ativo}'"; $gruda = ", "; } if (is_numeric($this->dias_espera)) { $set .= "{$gruda}dias_espera = '{$this->dias_espera}'"; $gruda = ", "; } else { if ($this->dias_espera == "NULL") { $set .= "{$gruda}dias_espera = {$this->dias_espera}"; $gruda = ", "; } } if (!is_null($this->tombo_automatico)) { $aux = dbBool($this->tombo_automatico) ? "TRUE" : "FALSE"; $set .= "{$gruda}tombo_automatico = {$aux}"; $gruda = ", "; } if ($set) { $db->Consulta("UPDATE {$this->_tabela} SET {$set} WHERE cod_biblioteca = '{$this->cod_biblioteca}'"); return true; } } return false; }
/** * Edita os dados de um registro * * @return bool */ function edita() { if (is_numeric($this->cod_turma) && is_numeric($this->ref_usuario_exc)) { $db = new clsBanco(); $set = ""; if (is_numeric($this->ref_usuario_exc)) { $set .= "{$gruda}ref_usuario_exc = '{$this->ref_usuario_exc}'"; $gruda = ", "; } if (is_numeric($this->ref_usuario_cad)) { $set .= "{$gruda}ref_usuario_cad = '{$this->ref_usuario_cad}'"; $gruda = ", "; } if (is_numeric($this->ref_ref_cod_serie)) { $set .= "{$gruda}ref_ref_cod_serie = '{$this->ref_ref_cod_serie}'"; $gruda = ", "; } if (is_numeric($this->ref_ref_cod_escola)) { $set .= "{$gruda}ref_ref_cod_escola = '{$this->ref_ref_cod_escola}'"; $gruda = ", "; } if (is_numeric($this->ref_cod_infra_predio_comodo)) { $set .= "{$gruda}ref_cod_infra_predio_comodo = '{$this->ref_cod_infra_predio_comodo}'"; $gruda = ", "; } if (is_string($this->nm_turma)) { $set .= "{$gruda}nm_turma = '{$this->nm_turma}'"; $gruda = ", "; } if (is_string($this->sgl_turma)) { $set .= "{$gruda}sgl_turma = '{$this->sgl_turma}'"; $gruda = ", "; } if (is_numeric($this->max_aluno)) { $set .= "{$gruda}max_aluno = '{$this->max_aluno}'"; $gruda = ", "; } if (is_numeric($this->multiseriada)) { $set .= "{$gruda}multiseriada = '{$this->multiseriada}'"; $gruda = ", "; } else { $set .= "{$gruda}multiseriada = '0'"; $gruda = ", "; } if (is_string($this->data_cadastro)) { $set .= "{$gruda}data_cadastro = '{$this->data_cadastro}'"; $gruda = ", "; } if (is_numeric($this->ref_cod_regente)) { $set .= "{$gruda}ref_cod_regente = '{$this->ref_cod_regente}'"; $gruda = ", "; } if (is_numeric($this->ref_cod_instituicao_regente)) { $set .= "{$gruda}ref_cod_instituicao_regente = '{$this->ref_cod_instituicao_regente}'"; $gruda = ", "; } $set .= "{$gruda}data_exclusao = NOW()"; $gruda = ", "; if (is_numeric($this->ativo)) { $set .= "{$gruda}ativo = '{$this->ativo}'"; $gruda = ", "; } if (is_numeric($this->ref_cod_turma_tipo)) { $set .= "{$gruda}ref_cod_turma_tipo = '{$this->ref_cod_turma_tipo}'"; $gruda = ", "; } if ($this->hora_inicial) { $set .= "{$gruda}hora_inicial = '{$this->hora_inicial}'"; $gruda = ", "; } if ($this->hora_final) { $set .= "{$gruda}hora_final = '{$this->hora_final}'"; $gruda = ", "; } if ($this->hora_inicio_intervalo) { $set .= "{$gruda}hora_inicio_intervalo = '{$this->hora_inicio_intervalo}'"; $gruda = ", "; } if ($this->hora_fim_intervalo) { $set .= "{$gruda}hora_fim_intervalo = '{$this->hora_fim_intervalo}'"; $gruda = ", "; } if (is_numeric($this->ref_cod_instituicao)) { $set .= "{$gruda}ref_cod_instituicao = '{$this->ref_cod_instituicao}'"; $gruda = ", "; } if (is_numeric($this->ref_cod_curso)) { $set .= "{$gruda}ref_cod_curso = '{$this->ref_cod_curso}'"; $gruda = ", "; } if (is_numeric($this->ref_ref_cod_escola_mult)) { $set .= "{$gruda}ref_ref_cod_escola_mult = '{$this->ref_ref_cod_escola_mult}'"; $gruda = ", "; } else { $set .= "{$gruda}ref_ref_cod_escola_mult = NULL"; $gruda = ", "; } if (is_numeric($this->ref_ref_cod_serie_mult)) { $set .= "{$gruda}ref_ref_cod_serie_mult = '{$this->ref_ref_cod_serie_mult}'"; $gruda = ", "; } else { $set .= "{$gruda}ref_ref_cod_serie_mult = NULL"; $gruda = ", "; } if (dbBool($this->visivel)) { $set .= "{$gruda}visivel = TRUE"; $gruda = ", "; } else { $set .= "{$gruda}visivel = FALSE"; $gruda = ", "; } if (is_numeric($this->turma_turno_id)) { $set .= "{$gruda}turma_turno_id = '{$this->turma_turno_id}'"; $gruda = ", "; } else { $set .= "{$gruda}turma_turno_id = NULL"; $gruda = ", "; } if (is_numeric($this->tipo_boletim)) { $set .= "{$gruda}tipo_boletim = '{$this->tipo_boletim}'"; $gruda = ", "; } else { $set .= "{$gruda}tipo_boletim = NULL"; $gruda = ", "; } if (is_numeric($this->ano)) { $set .= "{$gruda}ano = '{$this->ano}'"; $gruda = ", "; } else { $set .= "{$gruda}ano = NULL"; $gruda = ", "; } if (is_string($this->data_fechamento) && $this->data_fechamento != '') { $set .= "{$gruda}data_fechamento = '{$this->data_fechamento}'"; $gruda = ", "; } else { $set .= "{$gruda}data_fechamento = NULL"; $gruda = ", "; } if ($set) { $db->Consulta("UPDATE {$this->_tabela} SET {$set} WHERE cod_turma = '{$this->cod_turma}'"); return true; } } return false; }
/** * Retorna uma lista de registros filtrados de acordo com os parâmetros. * @return array */ public function lista($int_cod_escola = NULL, $int_ref_usuario_cad = NULL, $int_ref_usuario_exc = NULL, $int_ref_cod_instituicao = NULL, $int_ref_cod_escola_localizacao = NULL, $int_ref_cod_escola_rede_ensino = NULL, $int_ref_idpes = NULL, $str_sigla = NULL, $date_data_cadastro = NULL, $date_data_exclusao = NULL, $int_ativo = NULL, $str_nome = NULL, $escola_sem_avaliacao = NULL) { $sql = "\n SELECT * FROM\n (\n SELECT j.fantasia AS nome, {$this->_campos_lista}, 1 AS tipo_cadastro\n FROM {$this->_tabela} e, cadastro.juridica j\n WHERE e.ref_idpes = j.idpes\n UNION\n SELECT c.nm_escola AS nome, {$this->_campos_lista}, 2 AS tipo_cadastro\n FROM {$this->_tabela} e, pmieducar.escola_complemento c\n WHERE e.cod_escola = c.ref_cod_escola\n ) AS sub"; $filtros = ""; $whereAnd = " WHERE "; if (is_numeric($int_cod_escola)) { $filtros .= "{$whereAnd} cod_escola = '{$int_cod_escola}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_usuario_cad)) { $filtros .= "{$whereAnd} ref_usuario_cad = '{$int_ref_usuario_cad}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_usuario_exc)) { $filtros .= "{$whereAnd} ref_usuario_exc = '{$int_ref_usuario_exc}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_instituicao)) { $filtros .= "{$whereAnd} ref_cod_instituicao = '{$int_ref_cod_instituicao}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_escola_localizacao)) { $filtros .= "{$whereAnd} ref_cod_escola_localizacao = '{$int_ref_cod_escola_localizacao}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_escola_rede_ensino)) { $filtros .= "{$whereAnd} ref_cod_escola_rede_ensino = '{$int_ref_cod_escola_rede_ensino}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_idpes)) { $filtros .= "{$whereAnd} ref_idpes = '{$int_ref_idpes}'"; $whereAnd = " AND "; } if (is_string($str_sigla)) { $filtros .= "{$whereAnd} sigla LIKE '%{$str_sigla}%'"; $whereAnd = " AND "; } if (is_string($date_data_cadastro_ini)) { $filtros .= "{$whereAnd} data_cadastro >= '{$date_data_cadastro_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_cadastro_fim)) { $filtros .= "{$whereAnd} data_cadastro <= '{$date_data_cadastro_fim}'"; $whereAnd = " AND "; } if (is_string($date_data_exclusao_ini)) { $filtros .= "{$whereAnd} data_exclusao >= '{$date_data_exclusao_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_exclusao_fim)) { $filtros .= "{$whereAnd} data_exclusao <= '{$date_data_exclusao_fim}'"; $whereAnd = " AND "; } if (is_numeric($int_ativo)) { $filtros .= "{$whereAnd} ativo = '{$int_ativo}'"; $whereAnd = " AND "; } if (is_string($str_nome)) { $filtros .= "{$whereAnd} nome LIKE '%{$str_nome}%'"; $whereAnd = " AND "; } if (is_bool($escola_sem_avaliacao)) { if (dbBool($escola_sem_avaliacao)) { $filtros .= "{$whereAnd} NOT EXISTS (SELECT 1 FROM pmieducar.escola_curso ec, pmieducar.curso c WHERE\n ec.ref_cod_escola = cod_escola\n AND ec.ref_cod_curso = c.cod_curso\n AND ec.ativo = 1 AND c.ativo = 1)"; } else { $filtros .= "{$whereAnd} EXISTS (SELECT 1 FROM pmieducar.escola_curso ec, pmieducar.curso c WHERE\n ec.ref_cod_escola = cod_escola\n AND ec.ref_cod_curso = c.cod_curso\n AND ec.ativo = 1 AND c.ativo = 1)"; } } $db = new clsBanco(); $countCampos = count(explode(',', $this->_campos_lista)); $resultado = array(); $sql .= $filtros . $this->getOrderby() . $this->getLimite(); $db->Consulta("\n SELECT COUNT(0) FROM\n (\n SELECT j.fantasia AS nome, {$this->_campos_lista}, 1 AS tipo_cadastro\n FROM {$this->_tabela} e, cadastro.juridica j\n WHERE e.ref_idpes = j.idpes\n UNION\n SELECT c.nm_escola AS nome, {$this->_campos_lista}, 2 AS tipo_cadastro\n FROM {$this->_tabela} e, pmieducar.escola_complemento c\n WHERE e.cod_escola = c.ref_cod_escola\n ) AS sub\n {$filtros}\n "); $db->ProximoRegistro(); list($this->_total) = $db->Tupla(); $db->Consulta($sql); if ($countCampos > 1) { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $resultado[] = $tupla; } } else { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $resultado[] = $tupla[$this->_campos_lista]; $this->_total = count($tupla); } } if (count($resultado)) { return $resultado; } return FALSE; }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = 'Turma - Detalhe'; $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet'); $this->cod_turma = $_GET['cod_turma']; $tmp_obj = new clsPmieducarTurma(); $lst_obj = $tmp_obj->lista($this->cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, array('true', 'false')); $registro = array_shift($lst_obj); foreach ($registro as $key => $value) { $this->{$key} = $value; } if (!$registro) { header('Location: educar_turma_lst.php'); die; } if (class_exists('clsPmieducarTurmaTipo')) { $obj_ref_cod_turma_tipo = new clsPmieducarTurmaTipo($registro['ref_cod_turma_tipo']); $det_ref_cod_turma_tipo = $obj_ref_cod_turma_tipo->detalhe(); $registro['ref_cod_turma_tipo'] = $det_ref_cod_turma_tipo['nm_tipo']; } else { $registro['ref_cod_turma_tipo'] = 'Erro na geração'; } if (class_exists('clsPmieducarInfraPredioComodo')) { $obj_ref_cod_infra_predio_comodo = new clsPmieducarInfraPredioComodo($registro['ref_cod_infra_predio_comodo']); $det_ref_cod_infra_predio_comodo = $obj_ref_cod_infra_predio_comodo->detalhe(); $registro['ref_cod_infra_predio_comodo'] = $det_ref_cod_infra_predio_comodo['nm_comodo']; } else { $registro['ref_cod_infra_predio_comodo'] = 'Erro na geração'; } if (class_exists('clsPmieducarInstituicao')) { $obj_cod_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']); $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe(); $registro['ref_cod_instituicao'] = $obj_cod_instituicao_det['nm_instituicao']; } else { $registro['ref_cod_instituicao'] = 'Erro na geração'; } if (class_exists('clsPmieducarEscola')) { $this->ref_ref_cod_escola = $registro['ref_ref_cod_escola']; $obj_ref_cod_escola = new clsPmieducarEscola($registro['ref_ref_cod_escola']); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $registro['ref_ref_cod_escola'] = $det_ref_cod_escola['nome']; } else { $registro['ref_cod_escola'] = 'Erro na geração'; } if (class_exists('clsPmieducarCurso')) { $obj_ref_cod_curso = new clsPmieducarCurso($registro['ref_cod_curso']); $det_ref_cod_curso = $obj_ref_cod_curso->detalhe(); $registro['ref_cod_curso'] = $det_ref_cod_curso['nm_curso']; $padrao_ano_escolar = $det_ref_cod_curso['padrao_ano_escolar']; } else { $registro['ref_cod_curso'] = 'Erro na geração'; } if (class_exists('clsPmieducarSerie')) { $this->ref_ref_cod_serie = $registro['ref_ref_cod_serie']; $obj_ser = new clsPmieducarSerie($registro['ref_ref_cod_serie']); $det_ser = $obj_ser->detalhe(); $registro['ref_ref_cod_serie'] = $det_ser['nm_serie']; } else { $registro['ref_ref_cod_serie'] = 'Erro na geração'; } $obj_permissoes = new clsPermissoes(); $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { if ($registro['ref_cod_instituicao']) { $this->addDetalhe(array('Instituição', $registro['ref_cod_instituicao'])); } } if ($nivel_usuario == 1 || $nivel_usuario == 2) { if ($registro['ref_ref_cod_escola']) { $this->addDetalhe(array('Escola', $registro['ref_ref_cod_escola'])); } } if ($registro['ref_cod_curso']) { $this->addDetalhe(array('Curso', $registro['ref_cod_curso'])); } if ($registro['ref_ref_cod_serie']) { $this->addDetalhe(array('Série', $registro['ref_ref_cod_serie'])); } if ($registro['ref_cod_regente']) { $obj_pessoa = new clsPessoa_($registro['ref_cod_regente']); $det = $obj_pessoa->detalhe(); $this->addDetalhe(array('Professor/Regente', $det['nome'])); } if ($registro['ref_cod_infra_predio_comodo']) { $this->addDetalhe(array('Sala', $registro['ref_cod_infra_predio_comodo'])); } if ($registro['ref_cod_turma_tipo']) { $this->addDetalhe(array('Tipo de Turma', $registro['ref_cod_turma_tipo'])); } if ($registro['nm_turma']) { $this->addDetalhe(array('Turma', $registro['nm_turma'])); } if ($registro['sgl_turma']) { $this->addDetalhe(array('Sigla', $registro['sgl_turma'])); } if ($registro['max_aluno']) { $this->addDetalhe(array('Máximo de Alunos', $registro['max_aluno'])); } $this->addDetalhe(array('Situação', dbBool($registro['visivel']) ? 'Ativo' : 'Desativo')); if ($registro['multiseriada'] == 1) { if ($registro['multiseriada'] == 1) { $registro['multiseriada'] = 'sim'; } else { $registro['multiseriada'] = 'não'; } $this->addDetalhe(array('Multi-Seriada', $registro['multiseriada'])); $obj_serie_mult = new clsPmieducarSerie($registro['ref_ref_cod_serie_mult']); $det_serie_mult = $obj_serie_mult->detalhe(); $this->addDetalhe(array('Série Multi-Seriada', $det_serie_mult['nm_serie'])); } if ($padrao_ano_escolar == 1) { if ($registro['hora_inicial']) { $registro['hora_inicial'] = date('H:i', strtotime($registro['hora_inicial'])); $this->addDetalhe(array('Hora Inicial', $registro['hora_inicial'])); } if ($registro['hora_final']) { $registro['hora_final'] = date('H:i', strtotime($registro['hora_final'])); $this->addDetalhe(array('Hora Final', $registro['hora_final'])); } if ($registro['hora_inicio_intervalo']) { $registro['hora_inicio_intervalo'] = date('H:i', strtotime($registro['hora_inicio_intervalo'])); $this->addDetalhe(array('Hora Início Intervalo', $registro['hora_inicio_intervalo'])); } if ($registro['hora_fim_intervalo']) { $registro['hora_fim_intervalo'] = date('H:i', strtotime($registro['hora_fim_intervalo'])); $this->addDetalhe(array('Hora Fim Intervalo', $registro['hora_fim_intervalo'])); } } elseif ($padrao_ano_escolar == 0) { $obj = new clsPmieducarTurmaModulo(); $obj->setOrderby('data_inicio ASC'); $lst = $obj->lista($this->cod_turma); if ($lst) { $tabela = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Data Início</b></td> <td bgcolor="#A1B3BD"><b>Data Fim</b></td> </tr>'; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = ' bgcolor="#E4E9ED" '; } else { $color = ' bgcolor="#FFFFFF" '; } $obj_modulo = new clsPmieducarModulo($valor['ref_cod_modulo']); $det_modulo = $obj_modulo->detalhe(); $nm_modulo = $det_modulo['nm_tipo']; $valor['data_inicio'] = dataFromPgToBr($valor['data_inicio']); $valor['data_fim'] = dataFromPgToBr($valor['data_fim']); $tabela .= sprintf(' <tr> <td %s align=left>%s</td> <td %s align=left>%s</td> <td %s align=left>%s</td> </tr>', $color, $nm_modulo, $color, $valor['data_inicio'], $color, $valor['data_fim']); $cont++; } $tabela .= '</table>'; } if ($tabela) { $this->addDetalhe(array('Módulo', $tabela)); } $dias_da_semana = array('' => 'Selecione', 1 => 'Domingo', 2 => 'Segunda', 3 => 'Terça', 4 => 'Quarta', 5 => 'Quinta', 6 => 'Sexta', 7 => 'Sábado'); $obj = new clsPmieducarTurmaDiaSemana(); $lst = $obj->lista(NULL, $this->cod_turma); if ($lst) { $tabela1 = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Hora Inicial</b></td> <td bgcolor="#A1B3BD"><b>Hora Final</b></td> </tr>'; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = ' bgcolor="#E4E9ED" '; } else { $color = ' bgcolor="#FFFFFF" '; } $valor['hora_inicial'] = date('H:i', strtotime($valor['hora_inicial'])); $valor['hora_final'] = date('H:i', strtotime($valor['hora_final'])); $tabela1 .= sprintf("\n <tr>\n <td %s align=left>%s</td>\n <td %s align=left>%s</td>\n <td %s align=left>%s</td>\n </tr>", $color, $dias_da_semana[$valor['dia_semana']], $color, $valor['hora_inicial'], $color, $valor['hora_final']); $cont++; } $tabela1 .= '</table>'; } if ($tabela1) { $this->addDetalhe(array('Dia da Semana', $tabela1)); } } // Recupera os componentes curriculares da turma $componentes = array(); try { $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->cod_turma); } catch (Exception $e) { } $tabela3 = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Carga horária</b></td> </tr>'; $cont = 0; foreach ($componentes as $componente) { $color = $cont++ % 2 == 0 ? ' bgcolor="#E4E9ED" ' : ' bgcolor="#FFFFFF" '; $tabela3 .= sprintf(' <tr> <td %s align="left">%s</td> <td %s align="center">%.0f h</td> </tr>', $color, $componente, $color, $componente->cargaHoraria); } $tabela3 .= '</table>'; $this->addDetalhe(array('Componentes curriculares', $tabela3)); if ($obj_permissoes->permissao_cadastra(586, $this->pessoa_logada, 7)) { $this->url_novo = 'educar_turma_cad.php'; $this->url_editar = 'educar_turma_cad.php?cod_turma=' . $registro['cod_turma']; } $this->url_cancelar = 'educar_turma_lst.php'; $this->largura = '100%'; }
/** * Retorna uma lista filtrados de acordo com os parametros * * @param integer int_ref_cod_status * @param string date_data_cadastro_ini * @param string date_data_cadastro_fim * @param string date_data_exclusao_ini * @param string date_data_exclusao_fim * @param integer int_ativo * @param integer int_ref_cod_setor * @param integer int_num_portaria * @param string str_portaria_texto * @param integer int_ref_pessoa_cad * @param integer int_ref_pessoa_exc * @param integer int_ref_cod_instituicao * * @return array */ function lista($int_ref_cod_status = null, $date_data_cadastro_ini = null, $date_data_cadastro_fim = null, $date_data_exclusao_ini = null, $date_data_exclusao_fim = null, $int_ativo = null, $int_ref_cod_setor = null, $int_num_portaria = null, $str_portaria_texto = null, $int_ref_pessoa_cad = null, $int_ref_pessoa_exc = null, $int_ref_cod_instituicao = null, $bool_aprovado = null) { $sql = "SELECT {$this->_campos_lista} FROM {$this->_tabela}"; $filtros = ""; $whereAnd = " WHERE "; if (is_numeric($int_cod_portaria)) { $filtros .= "{$whereAnd} cod_portaria = '{$int_cod_portaria}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_status)) { $filtros .= "{$whereAnd} ref_cod_status = '{$int_ref_cod_status}'"; $whereAnd = " AND "; } if (is_string($date_data_cadastro_ini)) { $filtros .= "{$whereAnd} data_cadastro >= '{$date_data_cadastro_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_cadastro_fim)) { $filtros .= "{$whereAnd} data_cadastro <= '{$date_data_cadastro_fim}'"; $whereAnd = " AND "; } if (is_string($date_data_exclusao_ini)) { $filtros .= "{$whereAnd} data_exclusao >= '{$date_data_exclusao_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_exclusao_fim)) { $filtros .= "{$whereAnd} data_exclusao <= '{$date_data_exclusao_fim}'"; $whereAnd = " AND "; } if (is_null($int_ativo) || $int_ativo) { $filtros .= "{$whereAnd} ativo = '1'"; $whereAnd = " AND "; } else { $filtros .= "{$whereAnd} ativo = '0'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_setor)) { $filtros .= "{$whereAnd} ref_cod_setor = '{$int_ref_cod_setor}'"; $whereAnd = " AND "; } if (is_numeric($int_num_portaria)) { $filtros .= "{$whereAnd} num_portaria = '{$int_num_portaria}'"; $whereAnd = " AND "; } if (is_string($str_portaria_texto)) { $filtros .= "{$whereAnd} portaria_texto LIKE '%{$str_portaria_texto}%'"; $whereAnd = " AND "; } if (is_numeric($int_ref_pessoa_cad)) { $filtros .= "{$whereAnd} ref_pessoa_cad = '{$int_ref_pessoa_cad}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_pessoa_exc)) { $filtros .= "{$whereAnd} ref_pessoa_exc = '{$int_ref_pessoa_exc}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_instituicao)) { $filtros .= "{$whereAnd} ref_cod_instituicao = '{$int_ref_cod_instituicao}'"; $whereAnd = " AND "; } if (!is_null($bool_aprovado)) { $aprovado = dbBool($bool_aprovado) ? "TRUE" : "FALSE"; $filtros .= "{$whereAnd} ref_cod_status IN (SELECT cod_status FROM pmidrh.status WHERE aprovado = '{$aprovado}')"; $whereAnd = " AND "; } $db = new clsBanco(); $countCampos = count(explode(",", $this->_campos_lista)); $resultado = array(); $sql .= $filtros . $this->getOrderby() . $this->getLimite(); $this->_total = $db->CampoUnico("SELECT COUNT(0) FROM {$this->_tabela} {$filtros}"); $db->Consulta($sql); if ($countCampos > 1) { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $tupla["_total"] = $this->_total; $resultado[] = $tupla; } } else { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $resultado[] = $tupla[$this->_campos_lista]; } } if (count($resultado)) { return $resultado; } return false; }
/** * Retorna uma lista filtrados de acordo com os parametros * * @param integer int_ref_funcionario_exc * @param integer int_ref_funcionario_cad * @param integer int_ref_cod_software * @param string str_motivo * @param string str_tipo * @param string str_descricao * @param string date_data_cadastro_ini * @param string date_data_cadastro_fim * @param string date_data_exclusao_ini * @param string date_data_exclusao_fim * @param bool bool_ativo * @param string str_script_banco * * @return array */ function lista($int_ref_funcionario_exc = null, $int_ref_funcionario_cad = null, $int_ref_cod_software = null, $str_motivo = null, $str_tipo = null, $str_descricao = null, $date_data_cadastro_ini = null, $date_data_cadastro_fim = null, $date_data_exclusao_ini = null, $date_data_exclusao_fim = null, $bool_ativo = null, $str_script_banco = null) { $sql = "SELECT {$this->_campos_lista} FROM {$this->_tabela}"; $filtros = ""; $whereAnd = " WHERE "; if (is_numeric($int_cod_software_alteracao)) { $filtros .= "{$whereAnd} cod_software_alteracao = '{$int_cod_software_alteracao}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_funcionario_exc)) { $filtros .= "{$whereAnd} ref_funcionario_exc = '{$int_ref_funcionario_exc}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_funcionario_cad)) { $filtros .= "{$whereAnd} ref_funcionario_cad = '{$int_ref_funcionario_cad}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_software)) { $filtros .= "{$whereAnd} ref_cod_software = '{$int_ref_cod_software}'"; $whereAnd = " AND "; } if (is_string($str_motivo)) { $filtros .= "{$whereAnd} motivo LIKE '%{$str_motivo}%'"; $whereAnd = " AND "; } if (is_string($str_tipo)) { $filtros .= "{$whereAnd} tipo LIKE '%{$str_tipo}%'"; $whereAnd = " AND "; } if (is_string($str_descricao)) { $filtros .= "{$whereAnd} descricao LIKE '%{$str_descricao}%'"; $whereAnd = " AND "; } if (is_string($date_data_cadastro_ini)) { $filtros .= "{$whereAnd} data_cadastro >= '{$date_data_cadastro_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_cadastro_fim)) { $filtros .= "{$whereAnd} data_cadastro <= '{$date_data_cadastro_fim}'"; $whereAnd = " AND "; } if (is_string($date_data_exclusao_ini)) { $filtros .= "{$whereAnd} data_exclusao >= '{$date_data_exclusao_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_exclusao_fim)) { $filtros .= "{$whereAnd} data_exclusao <= '{$date_data_exclusao_fim}'"; $whereAnd = " AND "; } if (!is_null($bool_ativo)) { if (dbBool($bool_ativo)) { $filtros .= "{$whereAnd} ativo = TRUE"; } else { $filtros .= "{$whereAnd} ativo = FALSE"; } $whereAnd = " AND "; } if (is_string($str_script_banco)) { $filtros .= "{$whereAnd} script_banco LIKE '%{$str_script_banco}%'"; $whereAnd = " AND "; } $db = new clsBanco(); $countCampos = count(explode(",", $this->_campos_lista)); $resultado = array(); $sql .= $filtros . $this->getOrderby() . $this->getLimite(); $this->_total = $db->CampoUnico("SELECT COUNT(0) FROM {$this->_tabela} {$filtros}"); $db->Consulta($sql); if ($countCampos > 1) { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $tupla["_total"] = $this->_total; $resultado[] = $tupla; } } else { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $resultado[] = $tupla[$this->_campos_lista]; } } if (count($resultado)) { return $resultado; } return false; }
/** * Retorna uma lista de registros filtrados de acordo com os parâmetros. * @return array */ function lista($int_cod_matricula = NULL, $int_ref_cod_reserva_vaga = NULL, $int_ref_ref_cod_escola = NULL, $int_ref_ref_cod_serie = NULL, $int_ref_usuario_exc = NULL, $int_ref_usuario_cad = NULL, $int_ref_cod_aluno = NULL, $int_aprovado = NULL, $date_data_cadastro_ini = NULL, $date_data_cadastro_fim = NULL, $date_data_exclusao_ini = NULL, $date_data_exclusao_fim = NULL, $int_ativo = NULL, $int_ano = NULL, $int_ref_cod_curso2 = NULL, $int_ref_cod_instituicao = NULL, $int_ultima_matricula = NULL, $int_modulo = NULL, $int_padrao_ano_escolar = NULL, $int_analfabeto = NULL, $int_formando = NULL, $str_descricao_reclassificacao = NULL, $int_matricula_reclassificacao = NULL, $boo_com_deficiencia = NULL, $int_ref_cod_curso = NULL, $bool_curso_sem_avaliacao = NULL, $arr_int_cod_matricula = NULL, $int_mes_defasado = NULL, $boo_data_nasc = NULL, $boo_matricula_transferencia = NULL, $int_semestre = NULL, $int_ref_cod_turma = NULL) { if ($boo_data_nasc) { $this->_campos_lista .= " ,(SELECT data_nasc\n FROM cadastro.fisica\n WHERE idpes = ref_idpes\n ) as data_nasc"; } $sql = "SELECT {$this->_campos_lista}, c.ref_cod_instituicao, p.nome, a.cod_aluno, a.ref_idpes, c.cod_curso FROM {$this->_tabela} m, {$this->_schema}curso c, {$this->_schema}aluno a, cadastro.pessoa p "; $whereAnd = " AND "; $filtros = " WHERE m.ref_cod_aluno = a.cod_aluno AND m.ref_cod_curso = c.cod_curso AND p.idpes = a.ref_idpes "; if (is_numeric($int_cod_matricula)) { $filtros .= "{$whereAnd} m.cod_matricula = '{$int_cod_matricula}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_reserva_vaga)) { $filtros .= "{$whereAnd} m.ref_cod_reserva_vaga = '{$int_ref_cod_reserva_vaga}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_ref_cod_escola)) { $filtros .= "{$whereAnd} m.ref_ref_cod_escola = '{$int_ref_ref_cod_escola}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_ref_cod_serie)) { $filtros .= "{$whereAnd} m.ref_ref_cod_serie = '{$int_ref_ref_cod_serie}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_usuario_exc)) { $filtros .= "{$whereAnd} m.ref_usuario_exc = '{$int_ref_usuario_exc}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_usuario_cad)) { $filtros .= "{$whereAnd} m.ref_usuario_cad = '{$int_ref_usuario_cad}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_aluno)) { $filtros .= "{$whereAnd} m.ref_cod_aluno = '{$int_ref_cod_aluno}'"; $whereAnd = " AND "; } if (is_numeric($int_aprovado)) { $filtros .= "{$whereAnd} m.aprovado = '{$int_aprovado}'"; $whereAnd = " AND "; } elseif (is_array($int_aprovado)) { $int_aprovado = implode(",", $int_aprovado); $filtros .= "{$whereAnd} m.aprovado in ({$int_aprovado})"; $whereAnd = " AND "; } if (is_string($date_data_cadastro_ini)) { $filtros .= "{$whereAnd} m.data_cadastro >= '{$date_data_cadastro_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_cadastro_fim)) { $filtros .= "{$whereAnd} m.data_cadastro <= '{$date_data_cadastro_fim}'"; $whereAnd = " AND "; } if (is_string($date_data_exclusao_ini)) { $filtros .= "{$whereAnd} m.data_exclusao >= '{$date_data_exclusao_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_exclusao_fim)) { $filtros .= "{$whereAnd} m.data_exclusao <= '{$date_data_exclusao_fim}'"; $whereAnd = " AND "; } if ($int_ativo) { $filtros .= "{$whereAnd} m.ativo = '1'"; $whereAnd = " AND "; } elseif (!is_null($int_ativo) && is_numeric($int_ativo)) { $filtros .= "{$whereAnd} m.ativo = '0'"; $whereAnd = " AND "; } if (is_numeric($int_ano)) { $filtros .= "{$whereAnd} m.ano = '{$int_ano}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_curso)) { $filtros .= "{$whereAnd} m.ref_cod_curso = '{$int_ref_cod_curso}'"; $whereAnd = " AND "; } if (is_numeric($int_padrao_ano_escolar)) { $filtros .= "{$whereAnd} c.padrao_ano_escolar = '{$int_padrao_ano_escolar}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_instituicao)) { $filtros .= "{$whereAnd} c.ref_cod_instituicao = '{$int_ref_cod_instituicao}'"; $whereAnd = " AND "; } if (is_numeric($int_ultima_matricula)) { $filtros .= "{$whereAnd} ultima_matricula = '{$int_ultima_matricula}'"; $whereAnd = " AND "; } if (is_numeric($int_modulo)) { $filtros .= "{$whereAnd} m.modulo = '{$int_modulo}'"; $whereAnd = " AND "; } if (is_numeric($int_analfabeto)) { $filtros .= "{$whereAnd} a.analfabeto = '{$int_analfabeto}'"; $whereAnd = " AND "; } if (is_numeric($int_formando)) { $filtros .= "{$whereAnd} a.formando = '{$int_formando}'"; $whereAnd = " AND "; } if (is_numeric($int_matricula_reclassificacao)) { $filtros .= "{$whereAnd} m.matricula_reclassificacao = '{$int_matricula_reclassificacao}'"; $whereAnd = " AND "; } if (dbBool($boo_matricula_transferencia)) { $boo_matricula_transferencia = dbBool($boo_matricula_transferencia) ? 't' : 'f'; $filtros .= "{$whereAnd} m.matricula_transferencia = '{$boo_matricula_transferencia}'"; $whereAnd = " AND "; } if (is_string($int_matricula_reclassificacao)) { $filtros .= "{$whereAnd} to_ascii(a.matricula_reclassificacao) like to_ascii('%{$int_matricula_reclassificacao}%')"; $whereAnd = " AND "; } if (is_bool($boo_com_deficiencia)) { $not = $boo_com_deficiencia === true ? "" : "NOT"; $filtros .= "{$whereAnd} {$not} EXISTS (SELECT 1 FROM cadastro.fisica_deficiencia fd, pmieducar.aluno a WHERE a.cod_aluno = m.ref_cod_aluno AND fd.ref_idpes = a.ref_idpes)"; $whereAnd = " AND "; } if (is_numeric($int_semestre)) { $filtros .= "{$whereAnd} m.semestre = '{$int_semestre}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_turma)) { $filtros .= "{$whereAnd} EXISTS (SELECT 1 FROM pmieducar.matricula_turma mt WHERE mt.ativo = 1 AND mt.ref_cod_turma = {$int_ref_cod_turma} AND mt.ref_cod_matricula = m.cod_matricula)"; $whereAnd = " AND "; } if (is_array($arr_int_cod_matricula) && count($arr_int_cod_matricula)) { $filtros .= "{$whereAnd} cod_matricula IN (" . implode(',', $arr_int_cod_matricula) . ")"; $whereAnd = " AND "; } if (is_numeric($int_mes_defasado)) { $primeiroDiaDoMes = mktime(0, 0, 0, $int_mes_defasado, 1, $int_ano); $NumeroDiasMes = date('t', $primeiroDiaDoMes); $ultimoDiaMes = date('d/m/Y', mktime(0, 0, 0, $int_mes_defasado, $NumeroDiasMes, $int_ano)); $ultimoDiaMes = dataToBanco($ultimoDiaMes, FALSE); $primeiroDiaDoMes = date('d/m/Y', $primeiroDiaDoMes); $primeiroDiaDoMes = dataToBanco($primeiroDiaDoMes, FALSE); $filtroAux = "{$whereAnd} ((aprovado IN (1,2,3) AND m.data_cadastro <= '{$ultimoDiaMes}')\n OR (aprovado IN (1,2,3,4) AND m.data_exclusao >= '{$primeiroDiaDoMes}' AND m.data_exclusao <= '{$ultimoDiaMes}')\n )"; $filtros .= $filtroAux; $whereAnd = ' AND '; } $db = new clsBanco(); $countCampos = count(explode(',', $this->_campos_lista)); $resultado = array(); $sql .= $filtros . $this->getOrderby() . $this->getLimite(); $this->_total = $db->CampoUnico("SELECT COUNT(0) FROM {$this->_tabela} m, {$this->_schema}curso c, {$this->_schema}aluno a, cadastro.pessoa p {$filtros}"); $db->Consulta($sql); if ($countCampos > 1) { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $tupla["_total"] = $this->_total; $resultado[] = $tupla; } } else { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $resultado[] = $tupla[$this->_campos_lista]; } } if (count($resultado)) { return $resultado; } return FALSE; }
function Novo() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; @session_write_close(); $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_cadastra(650, $this->pessoa_logada, 7, "educar_turma_mvto_det.php"); if ($this->passo == 1) { // selecionou o curso, nao cadastra nada return true; } else { if ($this->passo == 2) { // deu notas e faltas aos alunos $objCurso = new clsPmieducarCurso($this->ref_cod_curso); $detalhe_curso = $objCurso->detalhe(); $db = new clsBanco(); $qtd_disciplinas = $db->CampoUnico("SELECT COUNT(0) FROM pmieducar.escola_serie_disciplina WHERE ref_ref_cod_serie = '{$this->ref_cod_serie_disciplina}' AND ref_ref_cod_escola = '{$this->ref_ref_cod_escola}' AND ativo = 1"); foreach ($this->nota as $matricula => $sequencial) { // cadastra a nota if ($this->is_nota_exame) { $nota = str_replace(",", ".", $sequencial); $objNotaAluno = new clsPmieducarNotaAluno(null, null, null, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, $this->pessoa_logada, null, null, null, $this->num_modulo, null, $nota); } else { $objNotaAluno = new clsPmieducarNotaAluno(null, $sequencial, $detalhe_curso["ref_cod_tipo_avaliacao"], $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, $this->pessoa_logada, null, null, null, $this->num_modulo, null); } $existe_nota = $objNotaAluno->lista(null, null, $detalhe_curso["ref_cod_tipo_avaliacao"], $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, null, null, null, null, null, 1, $this->num_modulo, null, null); /** * somente cadastra * se nao tiver nenhuma nota * cadastrada para a disciplina */ if ($existe_nota) { $cadastrado = $objNotaAluno->edita(); } else { $cadastrado = $objNotaAluno->cadastra(); } $existe_nota = null; $ultima_nota = false; if ($cadastrado) { // nota cadastrada com sucesso // verifica se essa eh a ultima nota desse modulo. Se for passa o aluno pro proximo modulo $qtd_dispensas = (int) $db->CampoUnico("SELECT COUNT(0) AS dispensas FROM pmieducar.dispensa_disciplina WHERE ref_cod_matricula = '{$matricula}' AND ativo = 1"); $qtd_notas = (int) $db->CampoUnico("SELECT COUNT(0) AS notas FROM pmieducar.nota_aluno WHERE ref_cod_matricula = '{$matricula}' AND ativo = 1 AND modulo = '{$this->num_modulo}'"); if ($qtd_dispensas + $qtd_notas >= $qtd_disciplinas) { // eh a ultima nota do modulo, vamos passar o aluno adiante $ultima_nota = true; $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada); $det_matricula = $objMatricula->detalhe(); $max_modulo_nota = (int) $db->CampoUnico("SELECT max(modulo) FROM pmieducar.nota_aluno WHERE ref_cod_matricula = '{$matricula}' AND ativo = 1"); /** * so avança o modulo * caso ele seja igual ao da maior nota * e que seja a ultima disciplina */ if ($det_matricula['modulo'] <= $max_modulo_nota) { $objMatricula->avancaModulo(); } } // tratamento para faltas if (!$this->falta_ch_globalizada) { // se a falta nao for globalizada adiciona falta $this->falta[$matricula] = $this->falta[$matricula] ? $this->falta[$matricula] : 0; $objFaltaAluno = new clsPmieducarFaltaAluno(null, null, $this->pessoa_logada, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, $this->falta[$matricula], null, null, null, $this->num_modulo); $existe_falta = $objFaltaAluno->lista(null, null, null, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, null, null, null, null, 1, $this->num_modulo); /** * somente cadastra se * jah nao tiver sido cadastrado */ if ($existe_falta) { $objFaltaAluno->edita(); } else { $objFaltaAluno->cadastra(); } } else { // falta eh globalizada if ($this->ultima_nota[$matricula]) { // essa eh a ultima nota do aluno nesse modulo, vamos adicionar a falta globalizada dele $this->falta[$matricula] = $this->falta[$matricula] ? $this->falta[$matricula] : 0; $objFaltas = new clsPmieducarFaltas($matricula, $this->num_modulo, $this->pessoa_logada, $this->falta[$matricula]); if ($objFaltas->existe()) { $objFaltas->edita(); } else { $objFaltas->cadastra(); } } } // quando for o ultimo modulo o aluno deve ser aprovado, reprovado, marcado como excessao, ou colocado em exame if ($ultima_nota && $this->num_modulo == $this->max_modulos) { // esta na ultima nota do ultimo modulo $objEscolaSerieDisciplina = new clsPmieducarEscolaSerieDisciplina(); $listaEscolaSerieDisciplina = $objEscolaSerieDisciplina->lista($this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, null, 1); //$this->ref_cod_serie_disciplina $this->ref_ref_cod_serie $reprovado_por_nota = false; $existiu_excessao = false; $obj_serie = new clsPmieducarSerie($this->ref_cod_serie_disciplina); $det_serie = $obj_serie->detalhe(); $media_especial = dbBool($det_serie['media_especial']); if (is_array($listaEscolaSerieDisciplina)) { // percorre todas as disciplinas $reprovou_ultima_nota = false; $foi_aprovado = null; foreach ($listaEscolaSerieDisciplina as $value) { $excessao = false; $nota = false; // ve as faltas if (!$this->falta_ch_globalizada) { $objFaltaAluno = new clsPmieducarFaltaAluno(); $faltas = $objFaltaAluno->total_faltas_disciplina($matricula, $value["ref_cod_disciplina"], $value["ref_ref_cod_serie"]); if ($reprovou) { // se reprovou cria uma excessao $existiu_excessao = true; $excessao = true; } } /** * se a media for especial somente * verifica se nao esta reprovado por falta */ if ($media_especial) { continue; } if (!dbBool($det_serie["ultima_nota_define"])) { // ve a media /** * @author HY 15-12-2006 * @see quando for dar as notas e for calcular a ultima * ao fazer a media e essa nota estiver abaixo nao * pode ser feito o arredondamento, somente se estiver * acima da media deixando o aluno em exame */ $objNotaAluno = new clsPmieducarNotaAluno(); $media = $objNotaAluno->getMediaAluno($matricula, $value["ref_cod_disciplina"], $value["ref_ref_cod_serie"], $this->max_modulos, $detalhe_curso["media"]); if ($media < $detalhe_curso["media"]) { // se reprovar em alguma marca uma flag de reprovado por nota (nao edita o aluno porque ele ainda vai fazer exame) $reprovado_por_nota = true; $nota = true; } } else { // echo "<pre>"; print_r($detalhe_curso); die(); $objNotaAluno = new clsPmieducarNotaAluno(); $ultima_nota_modulo = $objNotaAluno->getUltimaNotaModulo($matricula, $value["ref_cod_disciplina"], $value["ref_ref_cod_serie"], $this->num_modulo); if ($ultima_nota_modulo < $detalhe_curso["media"]) { $foi_aprovado = 2; $reprovou_ultima_nota = true; } } if ($excessao) { // existiu uma excessao entao cria um registro de excessao no banco $objExcessao = new clsPmieducarMatriculaExcessao(null, $matricula, $this->ref_cod_turma, 1, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $value["ref_cod_disciplina"], true, $nota); $objExcessao->cadastra(); } } if (dbBool($det_serie["ultima_nota_define"])) { if ($reprovou_ultima_nota) { $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 2); $objMatricula->edita(); } else { $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 1); $objMatricula->edita(); $foi_aprovado = 1; } } /** * calcula outro modo de média se for especial */ if ($media_especial) { $objNotaAluno = new clsPmieducarNotaAluno(); $media = $objNotaAluno->getMediaEspecialAluno($matricula, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->max_modulos, $detalhe_curso["media"]); if ($media < $detalhe_curso["media"]) { // se reprovar marca uma flag de reprovado por nota ( $reprovado_por_nota = true; $nota = true; } } } if (!$reprovado_por_nota && !$existiu_excessao && !dbBool($det_serie["ultima_nota_define"])) { // nao foi reprovado em nenhuma disciplina e nao teve nenhuma excessao //marca como aprovado $foi_aprovado = 1; $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 1); $objMatricula->edita(); } /** * media especial e reprovado por falta.. marca aluno como reprovado se nao marca como aprovado */ if ($media_especial) { $aprovado = $reprovado_por_nota ? '2' : '1'; $foi_aprovado = $aprovado; $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, $aprovado); $objMatricula->edita(); } } else { if ($this->num_modulo - 1 == $this->max_modulos) { // se estiver recebendo nota do exame temos que ver se eh a ultima, se for temos que aprovar/reprovar o aluno // num_modulo == max_modulo = ultimo modulo // num_modulo - 1 == max_modulo = exame // esta no exame $objNotaAluno = new clsPmieducarNotaAluno(); $qtd_exames = $objNotaAluno->getQtdMateriasExame($matricula, $this->max_modulos, $detalhe_curso["media"], true); $qtd_notas_exame = $objNotaAluno->getQtdNotasExame($matricula, $this->max_modulos); //die("recebendo nota de exame!!!! [{$qtd_exames}] [{$qtd_notas_exame}]"); if ($qtd_exames == $qtd_notas_exame) { // eh a ultima disciplina do exame $reprovado = false; $disciplinas_exame = $objNotaAluno->getDisciplinasExameDoAluno($matricula, $this->max_modulos, $detalhe_curso["media"], true); if (is_array($disciplinas_exame)) { foreach ($disciplinas_exame as $disciplina) { $media_exame = $objNotaAluno->getMediaAlunoExame($matricula, $disciplina["cod_disciplina"], $disciplina["cod_serie"], $this->max_modulos); // se reprovou marca como reprovado e sai do loop (break) //abaixo original // $media_exame = $objNotaAluno->getMediaAluno($matricula,$disciplina["cod_disciplina"],$disciplina["cod_serie"],$this->max_modulos + 1, false, true); if ($media_exame < $detalhe_curso["media_exame"]) { // reprovou //remove possiveis excessoes $objExcessoes = new clsPmieducarMatriculaExcessao(); $objExcessoes->excluirPorMatricula($matricula); // marca como reprovado $foi_aprovado = 2; $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 2); $objMatricula->edita(); $reprovado = true; break; } } } if (!$reprovado) { // se chegar aqui sem ter sido reprovado, marca como aprovado //remove possiveis excessoes $objExcessoes = new clsPmieducarMatriculaExcessao(); $objExcessoes->excluirPorMatricula($matricula); // aprova $foi_aprovado = 1; $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 1); $objMatricula->edita(); } else { // se chegar aqui sem ter sido reprovado, marca como aprovado //remove possiveis excessoes $objExcessoes = new clsPmieducarMatriculaExcessao(); $objExcessoes->excluirPorMatricula($matricula); // reprova $foi_aprovado = 2; $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 2); $objMatricula->edita(); } } } } } /**************HISTORICO ESCOLAR****************************/ if ($foi_aprovado == 1 || $foi_aprovado == 2) { $obj_serie = new clsPmieducarSerie($this->ref_ref_cod_serie); $det_serie = $obj_serie->detalhe(); $carga_horaria_serie = $det_serie["carga_horaria"]; $obj_escola = new clsPmieducarEscola($this->ref_ref_cod_escola); $det_escola = $obj_escola->detalhe(); $ref_idpes = $det_escola["ref_idpes"]; $this->ref_cod_instituicao = $det_escola["ref_cod_instituicao"]; $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo(); $lst_ano_letivo = $obj_ano_letivo->lista($this->ref_ref_cod_escola, null, null, null, 1, null, null, null, null, 1); if (is_array($lst_ano_letivo)) { $det_ano_letivo = array_shift($lst_ano_letivo); $this->ano_letivo = $det_ano_letivo["ano"]; } // busca informacoes da escola if ($ref_idpes) { $obj_escola = new clsPessoaJuridica($ref_idpes); $det_escola = $obj_escola->detalhe(); $nm_escola = $det_escola["fantasia"]; if ($det_escola) { $cidade = $det_escola["cidade"]; $uf = $det_escola["sigla_uf"]; } } else { if (class_exists("clsPmieducarEscolaComplemento")) { $obj_escola = new clsPmieducarEscolaComplemento($this->ref_ref_cod_escola); $det_escola = $obj_escola->detalhe(); $nm_escola = $det_escola["nm_escola"]; $cidade = $det_escola["municipio"]; } } $this->padrao_ano_escolar = $detalhe_curso["padrao_ano_escolar"]; if ($this->padrao_ano_escolar) { $extra_curricular = 0; } else { $extra_curricular = 1; } $sql = "SELECT SUM(falta) FROM pmieducar.faltas WHERE ref_cod_matricula = {$matricula}"; $db5 = new clsBanco(); $total_faltas = $db5->CampoUnico($sql); $obj_tipo_avaliacao = new clsPmieducarTipoAvaliacao($detalhe_curso["ref_cod_tipo_avaliacao"]); $det_tipo_avaliacao = $obj_tipo_avaliacao->detalhe(); $this->conceitual = $det_tipo_avaliacao["conceitual"]; $obj_aluno = new clsPmieducarMatricula($matricula); $det_aluno = $obj_aluno->detalhe(); $this->ref_cod_aluno = $det_aluno["ref_cod_aluno"]; $obj = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, null, null, $this->pessoa_logada, $det_serie['nm_serie'], $this->ano_letivo, $carga_horaria_serie, null, $nm_escola, $cidade, $uf, null, $foi_aprovado, null, null, 1, $total_faltas, $this->ref_cod_instituicao, 0, $extra_curricular, $matricula); $cadastrou2 = $obj->cadastra(); if ($cadastrou2 && !$this->conceitual) { $obj_historico = new clsPmieducarHistoricoEscolar(); $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno); $historico_disciplina = array(); $obj_disciplina_hist = new clsPmieducarEscolaSerieDisciplina(); $lst_disciplina_hist = $obj_disciplina_hist->lista($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, 1); foreach ($lst_disciplina_hist as $disciplina_hist) { $objFaltaAluno = new clsPmieducarFaltaAluno(); $faltas = $objFaltaAluno->total_faltas_disciplina($matricula, $disciplina_hist["ref_cod_disciplina"], $this->ref_ref_cod_serie); $historico_disciplina[$disciplina_hist["ref_cod_disciplina"]] = $faltas; $obj_nota_aluno = new clsPmieducarNotaAluno(); $obj_nota_aluno->setOrderby("modulo ASC"); $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $disciplina_hist["ref_cod_disciplina"], $matricula, null, null, null, null, null, null, 1); $possui_nota_exame = false; foreach ($lst_nota_aluno as $nota_aluno) { if (dbBool($det_serie["ultima_nota_define"])) { $obj_tipo_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"], null, null, null, null, 1); $det_tipo_avaliacao_valores = $obj_tipo_avaliacao_valores->detalhe(); $soma_notas[$disciplina_hist["ref_cod_disciplina"]] = $det_tipo_avaliacao_valores["valor"]; } else { if ($nota_aluno["nota"]) { $soma_notas[$disciplina_hist["ref_cod_disciplina"]] += $nota_aluno["nota"] * 2; $possui_nota_exame = true; } else { $obj_tipo_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"], null, null, null, null, 1); $det_tipo_avaliacao_valores = $obj_tipo_avaliacao_valores->detalhe(); $soma_notas[$disciplina_hist["ref_cod_disciplina"]] += $det_tipo_avaliacao_valores["valor"]; } } } if (!dbBool($det_serie["ultima_nota_define"])) { if ($possui_nota_exame) { $soma_notas[$disciplina_hist["ref_cod_disciplina"]] /= $this->num_modulo + 1; } else { $soma_notas[$disciplina_hist["ref_cod_disciplina"]] /= $this->max_modulos; } } /*************FALTAS******************/ // $this->falta_ch_globalizada = $detalhe_curso["falta_ch_globalizada"]; $this->ref_cod_tipo_avaliacao = $detalhe_curso["ref_cod_tipo_avaliacao"]; if (!$detalhe_curso["falta_ch_globalizada"]) { $obj_falta_aluno = new clsPmieducarFaltaAluno(); $lst_falta_aluno = $obj_falta_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $disciplina_hist["ref_cod_disciplina"], $matricula, null, null, null, null, null, 1); if (is_array($lst_falta_aluno)) { foreach ($lst_falta_aluno as $key => $falta_aluno) { $soma_faltas[$disciplina_hist["ref_cod_disciplina"]][$key] = $falta_aluno["faltas"]; } } } } $faltas_media_aluno = array(); if (is_array($soma_faltas)) { foreach ($soma_faltas as $cod_disciplina => $faltas) { foreach ($array_faltas as $falta) { $faltas_media_aluno[$disciplina] += $falta; } } } $obj_historico = new clsPmieducarHistoricoEscolar(); $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno); $historico_disciplina = array(); foreach ($soma_notas as $key => $nota) { $historico_disciplina[$key] = array($nota, $faltas_media_aluno[$key]); } foreach ($historico_disciplina as $cod_disciplina => $campo) { $obj_disciplina_cad = new clsPmieducarDisciplina($cod_disciplina); $det_disciplina_cad = $obj_disciplina_cad->detalhe(); $nm_disciplina = $det_disciplina_cad["nm_disciplina"]; $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $campo[0], $campo[0]); if (is_array($lst_avaliacao_valores)) { $det_avaliacao_valores = array_shift($lst_avaliacao_valores); $nm_nota = $det_avaliacao_valores["nome"]; $obj = new clsPmieducarHistoricoDisciplinas(null, $this->ref_cod_aluno, $sequencial, $nm_disciplina, $nm_nota, $campo[1]); $cadastrou3 = $obj->cadastra(); if (!$cadastrou3) { die("nao cadastrou"); } } } } else { if (!$cadastrou2) { $this->mensagem = "Cadastro do Histórico Escolar não realizado.<br>"; return false; } } } /**************HISTORICO ESCOLAR****************************/ } $this->ref_cod_disciplina = null; $this->passo = 0; return true; } else { if ($this->passo == 3) { if ($this->pula_passo) { $this->pula_passo = false; if (is_array($this->nota) && is_array($this->resultado_final) && is_array($this->falta)) { foreach ($this->nota as $matricula => $value) { $objTpAvalValores = new clsPmieducarTipoAvaliacaoValores($this->ref_cod_tipo_avaliacao, $value, null, null, null, null, 1); $valorNota = $objTpAvalValores->detalhe(); $objNotaAluno = new clsPmieducarNotaAluno(null, $value, $this->ref_cod_tipo_avaliacao, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, $this->pessoa_logada, null, null, null, $this->num_modulo, $this->ref_cod_curso, $valorNota["valor"]); if (!$objNotaAluno->cadastra()) { die("não cadastrou (nota)"); } $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, $this->pessoa_logada, null, $this->resultado_final[$matricula]); if (!$objMatricula->edita()) { die("não cadastrou (resultado final)"); } $objFaltaAluno = new clsPmieducarFaltaAluno(); $existe_falta = $objFaltaAluno->lista(null, null, null, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, null, null, null, null, 1, $this->modulo, $this->ref_cod_disciplina); if ($existe_falta) { $objFaltaAluno = new clsPmieducarFaltaAluno($existe_falta[0]['cod_falta_aluno'], $this->pessoa_logada, $this->pessoa_logada, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, $this->falta[$matricula], null, null, null, $this->num_modulo); if (!$objFaltaAluno->edita()) { die("não editou (falta)"); } } else { $objFaltaAluno = new clsPmieducarFaltaAluno(null, null, $this->pessoa_logada, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, $this->falta[$matricula], null, null, null, $this->num_modulo); if (!$objFaltaAluno->cadastra()) { die("não cadastrou (falta)"); } } } } else { die("falto parâmetros"); } } // die("nao"); // o professor decidiu sobre as excessoes foreach ($this->excessao as $cod_excessao => $sentenca) { $objExcessao = new clsPmieducarMatriculaExcessao($cod_excessao); $detalhe_excessao = $objExcessao->detalhe(); // verifica se ela ainda existe porque se houve uma sentenca anterior para o mesmo aluno reprovando ele, todas as outras sentencas sao removidas if ($detalhe_excessao) { if ($sentenca == 0) { // aluno reprovado // reprova aluno $objMatricula = new clsPmieducarMatricula($detalhe_excessao["ref_cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 2); $objMatricula->edita(); // remove excessoes $objExcessao->excluirPorMatricula($detalhe_excessao["ref_cod_matricula"]); $this->passo = 0; return true; } else { if ($sentenca == 1) { // aluno podera fazer exame // remove excessao $objExcessao->excluir(); $this->passo = 0; return true; } else { if ($sentenca == 2) { // aluno aprovado // aprova aluno $objMatricula = new clsPmieducarMatricula($detalhe_excessao["ref_cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 1); $objMatricula->edita(); // remove excessao $objExcessao->excluir(); $this->passo = 0; return true; } } } } } } else { if ($this->passo == 4) { // echo "<pre>"; print_r($this->resultado_final); die(); // aprovou/reprovou alunos manualmente $objCurso = new clsPmieducarCurso($this->ref_cod_curso); foreach ($this->resultado_final as $key => $value) { if ($value) { // remove excessoes $objExcessao = new clsPmieducarMatriculaExcessao(); $objExcessao->excluirPorMatricula($key); // aprova/reprova $objMatricula = new clsPmieducarMatricula($key, null, null, null, $this->pessoa_logada, null, null, $value); $objMatricula->edita(); } } $this->passo = 0; return true; } } } } return false; }
/** * Retorna uma lista filtrados de acordo com os parametros * * @return array */ function lista($date_data_hora_ini = null, $date_data_hora_fim = null, $str_ip_externo = null, $str_ip_interno = null, $int_cod_pessoa = null, $str_obs = null, $bool_sucesso = null) { $sql = "SELECT {$this->_campos_lista} FROM {$this->_tabela}"; $filtros = ""; $whereAnd = " WHERE "; if (is_numeric($int_cod_acesso)) { $filtros .= "{$whereAnd} cod_acesso = '{$int_cod_acesso}'"; $whereAnd = " AND "; } if (is_string($date_data_hora_ini)) { $filtros .= "{$whereAnd} data_hora >= '{$date_data_hora_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_hora_fim)) { $filtros .= "{$whereAnd} data_hora <= '{$date_data_hora_fim}'"; $whereAnd = " AND "; } if (is_string($str_ip_externo)) { $filtros .= "{$whereAnd} ip_externo LIKE '%{$str_ip_externo}%'"; $whereAnd = " AND "; } if (is_string($str_ip_interno)) { $filtros .= "{$whereAnd} ip_interno LIKE '%{$str_ip_interno}%'"; $whereAnd = " AND "; } if (is_numeric($int_cod_pessoa)) { $filtros .= "{$whereAnd} cod_pessoa = '{$int_cod_pessoa}'"; $whereAnd = " AND "; } if (is_string($str_obs)) { $filtros .= "{$whereAnd} obs LIKE '%{$str_obs}%'"; $whereAnd = " AND "; } if (!is_null($bool_sucesso)) { if (dbBool($bool_sucesso)) { $filtros .= "{$whereAnd} sucesso = TRUE"; } else { $filtros .= "{$whereAnd} sucesso = FALSE"; } $whereAnd = " AND "; } $db = new clsBanco(); $countCampos = count(explode(",", $this->_campos_lista)); $resultado = array(); $sql .= $filtros . $this->getOrderby() . $this->getLimite(); $this->_total = $db->CampoUnico("SELECT COUNT(0) FROM {$this->_tabela} {$filtros}"); $db->Consulta($sql); if ($countCampos > 1) { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $tupla["_total"] = $this->_total; $resultado[] = $tupla; } } else { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $resultado[] = $tupla[$this->_campos_lista]; } } if (count($resultado)) { return $resultado; } return false; }
/** * Retorna uma lista filtrados de acordo com os parametros * * @param integer int_ref_cod_categoria_nivel * @param integer int_ref_usuario_exc * @param integer int_ref_usuario_cad * @param integer int_ref_cod_nivel_anterior * @param string str_nm_nivel * @param integer int_salario_base * @param string date_data_cadastro_ini * @param string date_data_cadastro_fim * @param string date_data_exclusao_ini * @param string date_data_exclusao_fim * @param bool bool_ativo * * @return array */ function lista($int_cod_nivel = null, $int_ref_cod_categoria_nivel = null, $int_ref_usuario_exc = null, $int_ref_usuario_cad = null, $int_ref_cod_nivel_anterior = null, $str_nm_nivel = null, $int_salario_base = null, $date_data_cadastro_ini = null, $date_data_cadastro_fim = null, $date_data_exclusao_ini = null, $date_data_exclusao_fim = null, $bool_ativo = null) { $sql = "SELECT {$this->_campos_lista} FROM {$this->_tabela}"; $filtros = ""; $whereAnd = " WHERE "; if (is_numeric($int_cod_nivel)) { $filtros .= "{$whereAnd} cod_nivel = '{$int_cod_nivel}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_categoria_nivel)) { $filtros .= "{$whereAnd} ref_cod_categoria_nivel = '{$int_ref_cod_categoria_nivel}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_usuario_exc)) { $filtros .= "{$whereAnd} ref_usuario_exc = '{$int_ref_usuario_exc}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_usuario_cad)) { $filtros .= "{$whereAnd} ref_usuario_cad = '{$int_ref_usuario_cad}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_nivel_anterior)) { $filtros .= "{$whereAnd} ref_cod_nivel_anterior = '{$int_ref_cod_nivel_anterior}'"; $whereAnd = " AND "; } if (is_string($str_nm_nivel)) { $filtros .= "{$whereAnd} nm_nivel LIKE '%{$str_nm_nivel}%'"; $whereAnd = " AND "; } if (is_numeric($int_salario_base)) { $filtros .= "{$whereAnd} salario_base = '{$int_salario_base}'"; $whereAnd = " AND "; } if (is_string($date_data_cadastro_ini)) { $filtros .= "{$whereAnd} data_cadastro >= '{$date_data_cadastro_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_cadastro_fim)) { $filtros .= "{$whereAnd} data_cadastro <= '{$date_data_cadastro_fim}'"; $whereAnd = " AND "; } if (is_string($date_data_exclusao_ini)) { $filtros .= "{$whereAnd} data_exclusao >= '{$date_data_exclusao_ini}'"; $whereAnd = " AND "; } if (is_string($date_data_exclusao_fim)) { $filtros .= "{$whereAnd} data_exclusao <= '{$date_data_exclusao_fim}'"; $whereAnd = " AND "; } if (!is_null($bool_ativo)) { if (dbBool($bool_ativo)) { $filtros .= "{$whereAnd} ativo = TRUE"; } else { $filtros .= "{$whereAnd} ativo = FALSE"; } $whereAnd = " AND "; } $db = new clsBanco(); $countCampos = count(explode(",", $this->_campos_lista)); $resultado = array(); $sql .= $filtros . $this->getOrderby() . $this->getLimite(); $this->_total = $db->CampoUnico("SELECT COUNT(0) FROM {$this->_tabela} {$filtros}"); $db->Consulta($sql); if ($countCampos > 1) { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $tupla["_total"] = $this->_total; $resultado[] = $tupla; } } else { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $resultado[] = $tupla[$this->_campos_lista]; } } if (count($resultado)) { return $resultado; } return false; }
function Gerar() { if ($_POST) { foreach ($_POST as $campo => $val) { $this->{$campo} = $this->{$campo} ? $this->{$campo} : $val; } } // primary keys $this->campoOculto("cod_serie", $this->cod_serie); if ($_GET['precisa_lista']) { $obrigatorio = true; $get_curso = true; include "include/pmieducar/educar_campo_lista.php"; } // text $this->campoTexto("nm_serie", "Série", $this->nm_serie, 30, 255, true); $opcoes = array("" => "Selecione"); if ($this->ref_cod_curso) { $objTemp = new clsPmieducarCurso(); $lista = $objTemp->lista($this->ref_cod_curso, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1); if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { $opcoes_["{$registro['cod_curso']}"] = "{$registro['qtd_etapas']}"; } } for ($i = 1; $i <= $opcoes_["{$registro['cod_curso']}"]; $i++) { $opcoes[$i] = "Etapa {$i}"; } } $this->campoLista("etapa_curso", "Etapa Curso", $opcoes, $this->etapa_curso); $opcoes = array("" => "Selecione", 1 => "não", 2 => "sim"); $this->campoLista("concluinte", "Concluinte", $opcoes, $this->concluinte); $this->campoMonetario("carga_horaria", "Carga Horária", $this->carga_horaria, 7, 7, true); $this->campoNumero("intervalo", "Intervalo", $this->intervalo, 2, 2, true); $this->media_especial = dbBool($this->media_especial) ? 'true' : ''; $this->campoCheck('media_especial', 'Média Especial', $this->media_especial); $this->campoNumero("idade_inicial", "Faixa etária", $this->idade_inicial, 2, 2, false, "", "", false, false, true); $this->campoNumero("idade_final", " até", $this->idade_final, 2, 2, false); //-----------------------INCLUI DISCIPLINA------------------------// $this->campoQuebra(); /* if ( $_POST["disciplina_serie"] ) $this->disciplina_serie = unserialize( urldecode( $_POST["disciplina_serie"] ) ); */ if (is_numeric($this->cod_serie)) { $obj = new clsPmieducarDisciplinaSerie(); $registros = $obj->lista(null, $this->cod_serie, 1); if ($registros) { foreach ($registros as $campo) { $this->disciplina_serie[$campo["ref_cod_disciplina"]] = $campo["ref_cod_disciplina"]; } } } $disciplinas = "Nenhum curso selecionado"; if ($this->ref_cod_curso) { $disciplinas = ""; $conteudo = ""; $objTemp = new clsPmieducarDisciplina(); $objTemp->setOrderby("nm_disciplina"); $lista = $objTemp->lista(null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $this->ref_cod_curso); if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { // $opcoes["{$registro['cod_disciplina']}"] = "{$registro['nm_disciplina']}"; $checked = ""; if ($this->disciplina_serie[$registro["cod_disciplina"]] == $registro["cod_disciplina"]) { $checked = "checked=\"checked\""; } $conteudo .= "<input type=\"checkbox\" {$checked} name=\"disciplinas[]\" id=\"disciplinas[]\" value=\"{$registro["cod_disciplina"]}\"><label for=\"disciplinas[]\">{$registro["nm_disciplina"]}</label> <br />"; } } $disciplinas = '<table cellspacing="0" cellpadding="0" border="0">'; $disciplinas .= "<tr align=\"left\"><td> {$conteudo} </td></tr>"; $disciplinas .= '</table>'; } $this->campoRotulo("disciplinas_", "Disciplinas", "<div id='disciplinas'>{$disciplinas}</div>"); $this->campoQuebra(); //-----------------------FIM INCLUI DISCIPLINA------------------------// }
function Editar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; @session_write_close(); $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_cadastra(642, $this->pessoa_logada, 7, "educar_falta_nota_aluno_lst.php"); //************************************* EDITA - MATRICULADO NUMA SERIE *************************************// if ($this->ref_ref_cod_serie) { // if (is_numeric($this->modulo)) // { // $this->mat_modulo = $this->modulo; // } if (!$this->reprova_falta) { $this->editaSNotasFaltas(); } /** * verifica se existem disciplinas sem notas * */ $obj_nota_aluno = new clsPmieducarNotaAluno(); $total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula, $this->ref_ref_cod_serie, $this->ref_cod_turma, $this->modulo, $this->ref_ref_cod_escola); /* verifica se o aluno está em exame * e se todas as matérias do exame estão com notas */ $aluno_esta_em_exame = $_POST["aluno_esta_em_exame"]; $qtd_disciplinas_aluno_exame = $_POST["qtd_disciplinas_aluno_exame"]; if ($aluno_esta_em_exame == 1) { $sql = "SELECT COUNT(0)\n\t\t\t\t\t\t\t\tFROM pmieducar.nota_aluno na\n\t\t\t\t\t\t\t\t, pmieducar.disciplina d\n\t\t\t\t\t\t\t\t, pmieducar.v_matricula_matricula_turma mmt\n\t\t\t\t\t\t\t\tWHERE na.ref_cod_matricula = '{$this->ref_cod_matricula}'\n\t\t\t\t\t\t\t\tAND na.ref_cod_matricula = mmt.cod_matricula\n\t\t\t\t\t\t\t\tAND mmt.ref_cod_turma = '{$this->ref_cod_turma}'\n\t\t\t\t\t\t\t\tAND na.ativo = 1\n\t\t\t\t\t\t\t\tAND mmt.ativo = 1\n\t\t\t\t\t\t\t\tAND na.ref_cod_disciplina = d.cod_disciplina\n\t\t\t\t\t\t\t\tAND na.ref_cod_serie = '{$this->ref_ref_cod_serie}'\n\t\t\t\t\t\t\t\tAND na.modulo = '{$this->modulo}'"; $db = new clsBanco(); $notas_exame_ja_recebidas = $db->CampoUnico($sql); if ($qtd_disciplinas_aluno_exame == $notas_exame_ja_recebidas) { $total = 0; } } /** * existem disciplinas sem notas * somente cadastra e o modulo do aluno * continua igual sem calcular nada */ if ($total > 0) { /** * caso NENHUMA materia tenha nota * (por motivo de exclusao) verificar se o modulo da matricula * é maior que o ultimo modulo com nota * entao decrementar o modulo da matricula */ $ultimo_modulo_matricula = $obj_nota_aluno->getMaxNotas($this->ref_cod_matricula); if ($ultimo_modulo_matricula < $this->mat_modulo) { if ($this->nota_foi_removida && $this->pessoa_logada == 184580) { $obj_hst_escolar = new clsPmieducarHistoricoEscolar(); $lst_hst_escolar = $obj_hst_escolar->lista($this->ref_cod_aluno, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, null, null, null, $this->ref_cod_matricula); if (is_array($lst_hst_escolar)) { $det_hst_escolar = array_shift($lst_hst_escolar); $obj_hd = new clsPmieducarHistoricoDisciplinas(); $excluiu_hd = $obj_hd->excluirTodos($this->ref_cod_aluno, $det_hst_escolar["sequencial"]); if (!$excluiu_hd) { $this->mensagem = "Exclusão do Histórico Disciplina não realizado.<br>"; return false; } $obj_hst_escolar = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $det_hst_escolar["sequencial"], $this->pessoa_logada, null, null, null, null, null, null, null, null, null, null, null, null, 0); $excluiu_he = $obj_hst_escolar->excluir(); if (!$excluiu_he) { $this->mensagem = "Exclusão do Histórico Escolar não realizado.<br>"; return false; } } } $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, 3, null, null, null, null, null, $ultimo_modulo_matricula); $editou = $obj->edita(); } $this->mensagem .= "Cadastro efetuado com sucesso.<br>"; header("Location: educar_falta_nota_aluno_det.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&sequencial={$this->ref_sequencial_matricula_turma}"); die; return true; } else { //$ultimo_modulo_matricula = $obj_nota_aluno->getMaxNotas($this->ref_cod_matricula); //die("$ultimo_modulo_matricula < $this->mat_modulo || $this->modulo"); if ($this->mat_modulo == $this->modulo) { $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, 3, null, null, null, null, null, $ultimo_modulo_matricula); $editou = $obj->avancaModulo(); } } $aprovado = 3; if ($this->qtd_modulos <= $this->mat_modulo) { $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_curso = $obj_curso->detalhe(); $frequencia_minima = $det_curso["frequencia_minima"]; $hora_falta = $det_curso["hora_falta"]; $carga_horaria_curso = $det_curso["carga_horaria"]; $obj_esd = new clsPmieducarEscolaSerieDisciplina(); $lst_esd = $obj_esd->lista($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, 1); if (is_array($lst_esd)) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $max_nota = $obj_nota_aluno->getMaxNotas($this->ref_cod_matricula); $obj_serie = new clsPmieducarSerie($this->ref_ref_cod_serie); $det_serie = $obj_serie->detalhe(); $media_especial = $det_serie['media_especial']; foreach ($lst_esd as $campo) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $obj_nota_aluno->setOrderby("modulo ASC"); $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $campo["ref_cod_disciplina"], $this->ref_cod_matricula, null, null, null, null, null, null, 1); // so busca as notas da disciplina se nao for media especial if (is_array($lst_nota_aluno) && !dbBool($media_especial)) { foreach ($lst_nota_aluno as $key => $nota_aluno) { if ($nota_aluno['nota']) { $soma_notas[$campo["ref_cod_disciplina"]][$key] = $nota_aluno['nota'] * 2; } else { $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"]); $det_avaliacao_valores = $obj_avaliacao_valores->detalhe(); $soma_notas[$campo["ref_cod_disciplina"]][$key] = $det_avaliacao_valores["valor"]; } } } if (!$this->falta_ch_globalizada) { $obj_falta_aluno = new clsPmieducarFaltaAluno(); $lst_falta_aluno = $obj_falta_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $campo["ref_cod_disciplina"], $this->ref_cod_matricula, null, null, null, null, null, 1); if (is_array($lst_falta_aluno)) { foreach ($lst_falta_aluno as $key => $falta_aluno) { $soma_faltas[$campo["ref_cod_disciplina"]][$key] = $falta_aluno["faltas"]; } } } } if (is_array($soma_faltas)) { foreach ($soma_faltas as $disciplina => $faltas) { foreach ($faltas as $falta) { $faltas_media_aluno[$disciplina] += $falta; } } } } if (is_array($faltas_media_aluno)) { foreach ($faltas_media_aluno as $disciplina => $faltas) { $obj_disciplina = new clsPmieducarDisciplina($disciplina); $det_disciplina = $obj_disciplina->detalhe(); $carga_horaria_disciplina = $det_disciplina["carga_horaria"]; // calcula o maximo de horas q o aluno pode faltar na disciplina $max_falta = $carga_horaria_disciplina * $frequencia_minima / 100; $max_falta = $carga_horaria_disciplina - $max_falta; // calcula a quantidade de faltas por hora do aluno na disciplina $faltas *= $hora_falta; if ($faltas > $max_falta && !$this->reprova_falta) { echo "<script>\n\t\t\t\t\t\t\t\t\tif( confirm('O aluno excedeu o valor máximo de faltas permitidas, \\n deseja reprová-lo? \\n Quantidade de faltas do aluno: {$faltas} \\n Valor máximo de faltas permitido: {$max_falta} \\n \\n Clique em OK para reprová-lo ou em CANCELAR para ignorar.') )\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=s';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=n';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</script>"; return true; } if ($this->reprova_falta == 's') { $aprovado = 2; // aluno reprovado por falta } } } else { $obj_serie = new clsPmieducarSerie($this->ref_ref_cod_serie); $det_serie = $obj_serie->detalhe(); $carga_horaria_serie = $det_serie["carga_horaria"]; // calcula o maximo de horas q o aluno pode faltar na serie $max_falta = $carga_horaria_serie * $frequencia_minima / 100; $max_falta = $carga_horaria_serie - $max_falta; // calcula a quantidade de faltas por hora do aluno na serie $obj_faltas = new clsPmieducarFaltas(); $lst_faltas = $obj_faltas->lista($this->ref_cod_matricula); if (is_array($lst_faltas)) { $total_faltas = 0; foreach ($lst_faltas as $key => $faltas) { $total_faltas += $faltas['falta']; } $total_faltas *= $hora_falta; if ($total_faltas > $max_falta && !$this->reprova_falta) { echo "<script>\n\t\t\t\t\t\t\t\t\tif( confirm('O aluno excedeu o valor máximo de faltas permitidas, \\n deseja reprová-lo? \\n Quantidade de faltas do aluno: {$total_faltas} \\n Valor máximo de faltas permitido: {$max_falta} \\n \\n Clique em OK para reprová-lo ou em CANCELAR para ignorar.') )\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=s';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=n';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</script>"; return true; } if ($this->reprova_falta == 's') { $aprovado = 2; // aluno reprovado por falta } } } /** * calculo de media especial */ if (dbBool($media_especial)) { $objNotaAluno = new clsPmieducarNotaAluno(); $media = $objNotaAluno->getMediaEspecialAluno($this->ref_cod_matricula, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->qtd_modulos, $this->media); if ($media < $this->media) { // reprovado direto sem exame $aprovado = 2; } } } $db2 = new clsBanco(); //retorna quantas matérias o aluno cursa não contabilizando as matérias com dispensa $sql = "SELECT COUNT(0) FROM pmieducar.escola_serie_disciplina WHERE ref_ref_cod_serie = {$this->ref_ref_cod_serie} \n\t\t\t\t\tAND ref_ref_cod_escola = {$this->ref_ref_cod_escola} AND escola_serie_disciplina.ativo = 1\n\t\t\t\t\tAND ref_cod_disciplina NOT IN (\n\t\t\t\t\t\tSELECT ref_cod_disciplina\n\t\t\t\t\t\tFROM pmieducar.dispensa_disciplina WHERE \n\t\t\t\t\t\tref_cod_matricula = {$this->ref_cod_matricula} AND ref_cod_serie = {$this->ref_ref_cod_serie}\n\t\t\t\t\t\tAND ref_cod_escola = {$this->ref_ref_cod_escola} AND ativo = 1\n\t\t\t\t\t)"; $qtd_materias = $db2->CampoUnico($sql); //retorna quantas notas notas o aluno possui não contabilizandoa das matérias dispensadas $sql = "SELECT COUNT(0) FROM pmieducar.nota_aluno \n\t\t\t\t\tWHERE ref_cod_matricula = {$this->ref_cod_matricula} AND ativo = 1\n\t\t\t\t\tAND ref_cod_disciplina NOT IN (\n\t\t\t\t\t\t\tSELECT ref_cod_disciplina FROM pmieducar.dispensa_disciplina WHERE \n\t\t\t\t\t\t\tref_cod_matricula = {$this->ref_cod_matricula} AND ref_cod_serie = {$this->ref_ref_cod_serie} \n\t\t\t\t\t\t\tAND ref_cod_escola = {$this->ref_ref_cod_escola} AND ativo = 1\n\t\t\t\t\t)"; //variável em uma edição para verificar se o aluno possui todas as notas //para mudar o estado de aprovado dele $qtd_notas_possui = $db2->CampoUnico($sql); $possui_todas_as_notas = $this->qtd_modulos * $qtd_materias >= $qtd_notas_possui || $aluno_esta_em_exame == 1 ? true : false; if ($this->qtd_modulos < $this->mat_modulo && $this->qtd_modulos == $max_nota && !dbBool($media_especial)) { if (is_array($soma_notas) && !dbBool($media_especial)) { foreach ($soma_notas as $disciplina => $notas) { foreach ($notas as $nota) { if (dbBool($det_serie["ultima_nota_define"])) { $nota_media_aluno[$disciplina] = $nota; } else { $nota_media_aluno[$disciplina] += $nota; } } if (!dbBool($det_serie["ultima_nota_define"])) { $nota_media_aluno[$disciplina] /= $this->mat_modulo - 1; } } foreach ($nota_media_aluno as $disciplina => $nota) { $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $nota, $nota); if (is_array($lst_avaliacao_valores)) { $det_avaliacao_valores = array_shift($lst_avaliacao_valores); $valor = $det_avaliacao_valores["valor"]; } /** * verifica se existem disciplinas sem notas * somente aprova caso seja zero */ //$obj_nota_aluno = new clsPmieducarNotaAluno(); // $total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula,$this->ref_ref_cod_serie,$this->ref_cod_turma,$this->modulo,$this->ref_ref_cod_escola); if ($nota < $this->media && $this->media_exame && !$this->conceitual && $possui_todas_as_notas) { $em_exame = true; // aluno em exame } else { if ($valor < $this->media && !$this->media_exame && !$this->conceitual && $possui_todas_as_notas) { $aprovado = 2; // aluno reprovado direto (n existe exame) } } } } } else { if ($this->qtd_modulos < $this->mat_modulo && $this->qtd_modulos < $max_nota && !dbBool($media_especial)) { // echo "<pre>"; print_r($soma_notas); foreach ($soma_notas as $disciplina => $notas) { $qtd_notas = 0; foreach ($notas as $nota) { $nota_media_aluno[$disciplina] += $nota; $qtd_notas++; } if ($qtd_notas == $this->modulo) { $nota_media_aluno[$disciplina] /= $this->modulo + 1; } else { $nota_media_aluno[$disciplina] /= $this->modulo - 1; } } foreach ($nota_media_aluno as $disciplina => $nota) { $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $nota, $nota); if (is_array($lst_avaliacao_valores)) { $det_avaliacao_valores = array_shift($lst_avaliacao_valores); $valor = $det_avaliacao_valores["valor"]; if ($valor < $this->media_exame) { $aprovado = 2; // aluno reprovado no exame } /*else if ( ($valor < $this->media) && ($this->qtd_modulos >= $this->modulo) ) $aprovado = 7; // aluno em exame*/ } } } } /** * verifica se existem disciplinas sem notas * somente aprova caso seja zero */ //$obj_nota_aluno = new clsPmieducarNotaAluno(); //$total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula,$this->ref_ref_cod_serie,$this->ref_cod_turma,$this->modulo,$this->ref_ref_cod_escola); if ($this->conceitual) { $aprovado = $this->aprovado; // situacao definida pelo professor } else { if (!$em_exame && $this->qtd_modulos <= $this->mat_modulo && $aprovado == 3 && !$this->conceitual && $possui_todas_as_notas) { $aprovado = 1; // aluno aprovado } } $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, $aprovado); $editou = $obj->edita(); //die($aprovado); if ($editou) { /** * aluno reprovado mantem historico * 01/03/2006 */ if ($aprovado == 2 || $aprovado == 3 || $aprovado == 1) { $obj_hst_escolar = new clsPmieducarHistoricoEscolar(); $lst_hst_escolar = $obj_hst_escolar->lista($this->ref_cod_aluno, null, null, null, $det_serie["nm_serie"], $this->ano_letivo, $carga_horaria_serie, null, null, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_instituicao, 0, null, $this->ref_cod_matricula); if (is_array($lst_hst_escolar)) { $det_hst_escolar = array_shift($lst_hst_escolar); $obj_hd = new clsPmieducarHistoricoDisciplinas(); $excluiu_hd = $obj_hd->excluirTodos($this->ref_cod_aluno, $det_hst_escolar["sequencial"]); if (!$excluiu_hd) { $this->mensagem = "Exclusão do Histórico Disciplina não realizado.<br>"; return false; } $obj_hst_escolar = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $det_hst_escolar["sequencial"], $this->pessoa_logada, null, null, null, null, null, null, null, null, null, null, null, null, 0); $excluiu_he = $obj_hst_escolar->excluir(); if (!$excluiu_he) { $this->mensagem = "Exclusão do Histórico Escolar não realizado.<br>"; return false; } } } /*else */ if ($aprovado == 1 || $aprovado == 2) { $obj_serie = new clsPmieducarSerie($this->ref_ref_cod_serie); $det_serie = $obj_serie->detalhe(); $carga_horaria_serie = $det_serie["carga_horaria"]; $obj_escola = new clsPmieducarEscola($this->ref_ref_cod_escola); $det_escola = $obj_escola->detalhe(); $ref_idpes = $det_escola["ref_idpes"]; // busca informacoes da escola if ($ref_idpes) { $obj_escola = new clsPessoaJuridica($ref_idpes); $det_escola = $obj_escola->detalhe(); $nm_escola = $det_escola["fantasia"]; if ($det_escola) { $cidade = $det_escola["cidade"]; $uf = $det_escola["sigla_uf"]; } } else { if (class_exists("clsPmieducarEscolaComplemento")) { $obj_escola = new clsPmieducarEscolaComplemento($this->ref_ref_cod_escola); $det_escola = $obj_escola->detalhe(); $nm_escola = $det_escola["nm_escola"]; $cidade = $det_escola["municipio"]; } } if ($this->padrao_ano_escolar) { $extra_curricular = 0; } else { $extra_curricular = 1; } $sql = "SELECT SUM(falta) FROM pmieducar.faltas WHERE ref_cod_matricula = {$this->ref_cod_matricula}"; $db5 = new clsBanco(); $total_faltas = $db5->CampoUnico($sql); $obj_hst_escolar = new clsPmieducarHistoricoEscolar(); $lst_hst_escolar = $obj_hst_escolar->lista($this->ref_cod_aluno, null, null, null, $det_serie["nm_serie"], $this->ano_letivo, $carga_horaria_serie, null, null, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_instituicao, 0, null, $this->ref_cod_matricula); if (is_array($lst_hst_escolar)) { $det_hst_escolar = array_shift($lst_hst_escolar); $obj = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $det_hst_escolar["sequencial"], $this->pessoa_logada, null, null, null, null, null, null, $cidade, $uf, null, $aprovado, null, null, 1, $total_faltas, null, null, $extra_curricular); $editou_he = $obj->edita(); } else { $obj = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, null, null, $this->pessoa_logada, $det_serie["nm_serie"], $this->ano_letivo, $carga_horaria_serie, null, $nm_escola, $cidade, $uf, null, $aprovado, null, null, 1, $total_faltas, $this->ref_cod_instituicao, 0, $extra_curricular, $this->ref_cod_matricula); $cadastrou_he = $obj->cadastra(); } if (($editou_he || $cadastrou_he) && !$this->conceitual) { if ($cadastrou_he) { $obj_historico = new clsPmieducarHistoricoEscolar(); $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno); } else { $sequencial = $det_hst_escolar["sequencial"]; } $historico_disciplina = array(); foreach ($nota_media_aluno as $key => $nota) { $historico_disciplina[$key] = array($nota, $faltas_media_aluno[$key]); } foreach ($historico_disciplina as $disciplina => $campo) { $obj_disciplina = new clsPmieducarDisciplina($disciplina); $det_disciplina = $obj_disciplina->detalhe(); $nm_disciplina = $det_disciplina["nm_disciplina"]; $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $campo[0], $campo[0]); if (is_array($lst_avaliacao_valores)) { $det_avaliacao_valores = array_shift($lst_avaliacao_valores); $nm_nota = $det_avaliacao_valores["nome"]; $obj_hd = new clsPmieducarHistoricoDisciplinas(); $lst_hd = $obj_hd->lista(null, $this->ref_cod_aluno, $sequencial, $nm_disciplina); if (is_array($lst_hd)) { $det_hd = array_shift($lst_hd); $obj_hd = new clsPmieducarHistoricoDisciplinas($det_hd["sequencial"], $this->ref_cod_aluno, $sequencial, $nm_disciplina, $nm_nota, $campo[1]); $hst_disciplina = $obj_hd->edita(); } else { $obj_hd = new clsPmieducarHistoricoDisciplinas(null, $this->ref_cod_aluno, $sequencial, $nm_disciplina, $nm_nota, $campo[1]); $hst_disciplina = $obj_hd->cadastra(); } if (!$hst_disciplina) { $this->mensagem = "Cadastro/Edição do Histórico Disciplinas não realizado.<br>"; return false; } } else { $this->mensagem = "Não foi possível encontrar os Valores do Tipo de Avaliação.<br>"; return false; } } } /* else if( (!$editou_he || !$cadastrou_he) && (!$this->conceitual) ) { $this->mensagem = "Cadastro/Edição do Histórico Escolar não realizado.<br>"; return false; } */ } $this->mensagem .= "Cadastro efetuado com sucesso.<br>"; header("Location: educar_falta_nota_aluno_det.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&sequencial={$this->ref_sequencial_matricula_turma}"); die; return true; } $this->mensagem = "Edição não realizada (Matrícula).<br>"; echo "<!--\nErro ao editar clsPmieducarMatricula\nvalores obrigatorios\nis_numeric( {$this->ref_cod_matricula} ) && is_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->modulo} )\n-->"; return false; } else { if (!$this->reprova_falta) { $this->editaCNotasFaltas(); } /** * verifica se existem disciplinas sem notas * */ $obj_nota_aluno = new clsPmieducarNotaAluno(); $total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula, $this->ref_ref_cod_serie, $this->ref_cod_turma, $this->modulo, $this->ref_ref_cod_escola); /** * existem disciplinas sem notas * somente cadastra e o modulo do aluno * continua igual sem calcular nada */ if ($total) { $this->mensagem .= "Cadastro efetuado com sucesso.<br>"; header("Location: educar_falta_nota_aluno_det.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&sequencial={$this->ref_sequencial_matricula_turma}"); die; return true; } $aprovado = 3; if ($this->qtd_modulos <= $this->mat_modulo) { $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); $det_curso = $obj_curso->detalhe(); $frequencia_minima = $det_curso["frequencia_minima"]; $hora_falta = $det_curso["hora_falta"]; $carga_horaria_curso = $det_curso["carga_horaria"]; $obj_disciplina = new clsPmieducarDisciplina(); $lst_disciplina = $obj_disciplina->lista(null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $this->ref_cod_curso); if (is_array($lst_disciplina)) { foreach ($lst_disciplina as $campo) { $obj_nota_aluno = new clsPmieducarNotaAluno(); $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, null, null, null, $this->ref_cod_matricula, null, null, null, null, null, null, 1, null, $campo["cod_disciplina"]); if (is_array($lst_nota_aluno)) { foreach ($lst_nota_aluno as $key => $nota_aluno) { if ($nota_aluno["nota"]) { $soma_notas[$campo["cod_disciplina"]][$key] = $nota_aluno["nota"] * 2; } else { $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"]); $det_avaliacao_valores = $obj_avaliacao_valores->detalhe(); $soma_notas[$campo["cod_disciplina"]][$key] = $det_avaliacao_valores["valor"]; } } } if (!$this->falta_ch_globalizada) { $obj_falta_aluno = new clsPmieducarFaltaAluno(); $lst_falta_aluno = $obj_falta_aluno->lista(null, null, null, null, null, null, $this->ref_cod_matricula, null, null, null, null, null, 1, null, $campo["cod_disciplina"]); if (is_array($lst_falta_aluno)) { foreach ($lst_falta_aluno as $key => $falta_aluno) { $soma_faltas[$campo["cod_disciplina"]][$key] = $falta_aluno["faltas"]; } } } } if (is_array($soma_faltas)) { foreach ($soma_faltas as $disciplina => $faltas) { foreach ($faltas as $falta) { $faltas_media_aluno[$disciplina] += $falta; } } } } if (is_array($faltas_media_aluno)) { foreach ($faltas_media_aluno as $disciplina => $faltas) { $obj_disciplina = new clsPmieducarDisciplina($disciplina); $det_disciplina = $obj_disciplina->detalhe(); $carga_horaria_disciplina = $det_disciplina["carga_horaria"]; // calcula o maximo de horas q o aluno pode faltar na disciplina $max_falta = $carga_horaria_disciplina * $frequencia_minima / 100; $max_falta = $carga_horaria_disciplina - $max_falta; // calcula a quantidade de faltas por hora do aluno na disciplina $faltas *= $hora_falta; if ($faltas > $max_falta && !$this->reprova_falta) { echo "<script>\n\t\t\t\t\t\t\t\t\tif( confirm('O aluno excedeu o valor máximo de faltas permitidas, \\n deseja reprová-lo? \\n Quantidade de faltas do aluno: {$faltas} \\n Valor máximo de faltas permitido: {$max_falta} \\n \\n Clique em OK para reprová-lo ou em CANCELAR para ignorar.') )\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=s';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=n';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</script>"; return true; } if ($this->reprova_falta == 's') { $aprovado = 2; // aluno reprovado por falta } } } else { // calcula o maximo de horas q o aluno pode faltar no curso $max_falta = $carga_horaria_curso * $frequencia_minima / 100; $max_falta = $carga_horaria_curso - $max_falta; // calcula a qtd de faltas por hora do aluno no curso $obj_faltas = new clsPmieducarFaltas(); $lst_faltas = $obj_faltas->lista($this->ref_cod_matricula); if (is_array($lst_faltas)) { $total_faltas = 0; foreach ($lst_faltas as $key => $faltas) { $total_faltas += $faltas['falta']; } $total_faltas *= $hora_falta; if ($total_faltas > $max_falta && !$this->reprova_falta) { echo "<script>\n\t\t\t\t\t\t\t\t\tif( confirm('O aluno excedeu o valor máximo de faltas permitidas, \\n deseja reprová-lo? \\n Quantidade de faltas do aluno: {$total_faltas} \\n Valor máximo de faltas permitido: {$max_falta} \\n \\n Clique em OK para reprová-lo ou em CANCELAR para ignorar.') )\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=s';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=n';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</script>"; return true; } if ($this->reprova_falta == 's') { $aprovado = 2; // aluno reprovado por falta } } } } if ($this->qtd_modulos < $this->mat_modulo && $this->qtd_modulos == $max_nota) { if (is_array($soma_notas)) { foreach ($soma_notas as $disciplina => $notas) { foreach ($notas as $nota) { $nota_media_aluno[$disciplina] += $nota; } $nota_media_aluno[$disciplina] /= $this->mat_modulo - 1; } foreach ($nota_media_aluno as $disciplina => $nota) { $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $nota, $nota); if (is_array($lst_avaliacao_valores)) { $det_avaliacao_valores = array_shift($lst_avaliacao_valores); $valor = $det_avaliacao_valores["valor"]; /* if ( ($valor < $this->media) && $this->media_exame && !$this->conceitual ) { $em_exame = true; } else if ( ($valor < $this->media) && !$this->media_exame && !$this->conceitual ) { $aprovado = 2; // aluno reprovado direto (n existe exame) } */ } /** * verifica se existem disciplinas sem notas * somente aprova caso seja zero */ $obj_nota_aluno = new clsPmieducarNotaAluno(); $total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula, $this->ref_ref_cod_serie, $this->ref_cod_turma, $this->modulo, $this->ref_ref_cod_escola); if ($nota < $this->media && $this->media_exame && !$this->conceitual) { $em_exame = true; // aluno em exame } else { if ($valor < $this->media && !$this->media_exame && !$this->conceitual) { $aprovado = 2; // aluno reprovado direto (n existe exame) } } } } } else { if ($this->qtd_modulos < $this->mat_modulo && $this->qtd_modulos < $max_nota) { foreach ($soma_notas as $disciplina => $notas) { $qtd_notas = 0; foreach ($notas as $nota) { $nota_media_aluno[$disciplina] += $nota; $qtd_notas++; } if ($qtd_notas == $this->mat_modulo) { $nota_media_aluno[$disciplina] /= $this->mat_modulo; } else { $nota_media_aluno[$disciplina] /= $this->mat_modulo - 1; } } foreach ($nota_media_aluno as $disciplina => $nota) { $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $nota, $nota); if (is_array($lst_avaliacao_valores)) { $det_avaliacao_valores = array_shift($lst_avaliacao_valores); $valor = $det_avaliacao_valores["valor"]; if ($valor < $this->media_exame) { $aprovado = 2; // aluno reprovado no exame } } } } } /** * verifica se existem disciplinas sem notas * somente aprova caso seja zero */ //$obj_nota_aluno = new clsPmieducarNotaAluno(); //$total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula,$this->ref_ref_cod_serie,$this->ref_cod_turma,$this->modulo,$this->ref_ref_cod_escola); if ($this->conceitual) { $aprovado = $this->aprovado; // situacao definida pelo professor } else { if (!$em_exame && $this->qtd_modulos <= $this->mat_modulo && $aprovado == 3 && !$this->conceitual) { $aprovado = 1; // aluno aprovado } } $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, $aprovado); $editou = $obj->edita(); if ($editou) { /** * aluno reprovado edita nao remove do historico */ if ($aprovado == 2 || $aprovado == 3) { $obj_hst_escolar = new clsPmieducarHistoricoEscolar(); $lst_hst_escolar = $obj_hst_escolar->lista($this->ref_cod_aluno, null, null, null, $det_curso['nm_curso'], $this->ano_letivo, $carga_horaria_curso, null, null, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_instituicao, 0, 1, $this->ref_cod_matricula); if (is_array($lst_hst_escolar)) { $det_hst_escolar = array_shift($lst_hst_escolar); $obj_hd = new clsPmieducarHistoricoDisciplinas(); $excluiu_hd = $obj_hd->excluirTodos($this->ref_cod_aluno, $det_hst_escolar["sequencial"]); if (!$excluiu_hd) { $this->mensagem = "Exclusão do Histórico Disciplina não realizado.<br>"; return false; } $obj_hst_escolar = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $det_hst_escolar["sequencial"], $this->pessoa_logada, null, null, null, null, null, null, null, null, null, null, null, null, 0); $excluiu_he = $obj_hst_escolar->excluir(); if (!$excluiu_he) { $this->mensagem = "Exclusão do Histórico Escolar não realizado.<br>"; return false; } } } /*else*/ if ($aprovado == 1 || $aprovado == 2) { // busca informacoes da instituicao $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao); $det_instituicao = $obj_instituicao->detalhe(); $nm_instituicao = $det_instituicao["nm_instituicao"]; $cidade = $det_instituicao["cidade"]; $uf = $det_instituicao["ref_sigla_uf"]; $obj_hst_escolar = new clsPmieducarHistoricoEscolar(); $lst_hst_escolar = $obj_hst_escolar->lista($this->ref_cod_aluno, null, null, null, $det_curso['nm_curso'], $this->ano_letivo, $carga_horaria_curso, null, null, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_instituicao, 0, 1, $this->ref_cod_matricula); $sql = "SELECT SUM(falta) FROM pmieducar.faltas WHERE ref_cod_matricula = {$this->ref_cod_matricula}"; $db5 = new clsBanco(); $total_faltas = $db5->CampoUnico($sql); if (is_array($lst_hst_escolar)) { $det_hst_escolar = array_shift($lst_hst_escolar); $obj_hst_escolar = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $det_hst_escolar["sequencial"], $this->pessoa_logada, null, $det_curso['nm_curso'], $this->ano_letivo, $carga_horaria_curso, null, $nm_instituicao, $cidade, $uf, null, $aprovado, null, null, 1, $total_faltas, $this->ref_cod_instituicao, 0, 1, $this->ref_cod_matricula); $editou_he = $obj_hst_escolar->edita(); } else { $obj_hst_escolar = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, null, null, $this->pessoa_logada, $det_curso['nm_curso'], $this->ano_letivo, $carga_horaria_curso, null, $nm_instituicao, $cidade, $uf, null, $aprovado, null, null, 1, $total_faltas, $this->ref_cod_instituicao, 0, 1, $this->ref_cod_matricula); $cadastrou_he = $obj_hst_escolar->cadastra(); } if (($editou_he || $cadastrou_he) && !$this->conceitual) { if ($cadastrou_he) { $obj_historico = new clsPmieducarHistoricoEscolar(); $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno); } else { $sequencial = $det_hst_escolar["sequencial"]; } $historico_disciplina = array(); foreach ($nota_media_aluno as $key => $nota) { $historico_disciplina[$key] = array($nota, $faltas_media_aluno[$key]); } foreach ($historico_disciplina as $disciplina => $campo) { $obj_disciplina = new clsPmieducarDisciplina($disciplina); $det_disciplina = $obj_disciplina->detalhe(); $nm_disciplina = $det_disciplina["nm_disciplina"]; $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores(); $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $campo[0], $campo[0]); if (is_array($lst_avaliacao_valores)) { $det_avaliacao_valores = array_shift($lst_avaliacao_valores); $nm_nota = $det_avaliacao_valores["nome"]; $obj_hd = new clsPmieducarHistoricoDisciplinas(); $lst_hd = $obj_hd->lista(null, $this->ref_cod_aluno, $sequencial, $nm_disciplina); if (is_array($lst_hd)) { $det_hd = array_shift($lst_hd); $obj_hd = new clsPmieducarHistoricoDisciplinas($det_hd["sequencial"], $this->ref_cod_aluno, $sequencial, $nm_disciplina, $nm_nota, $campo[1]); $hst_disciplina = $obj_hd->edita(); } else { $obj_hd = new clsPmieducarHistoricoDisciplinas(null, $this->ref_cod_aluno, $sequencial, $nm_disciplina, $nm_nota, $campo[1]); $hst_disciplina = $obj_hd->cadastra(); } if (!$hst_disciplina) { $this->mensagem = "Cadastro/Edição do Histórico Disciplinas não realizado.<br>"; return false; } } else { $this->mensagem = "Não foi possível encontrar os Valores do Tipo de Avaliação.<br>"; return false; } } } /* else if( !$editou_he || !$cadastrou_he ) { $this->mensagem = "Cadastro/Edição do Histórico Escolar não realizado.<br>"; return false; } */ } $this->mensagem .= "Cadastro efetuado com sucesso.<br>"; header("Location: educar_falta_nota_aluno_det.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&sequencial={$this->ref_sequencial_matricula_turma}"); die; return true; } $this->mensagem = "Edição não realizada (Matrícula).<br>"; echo "<!--\nErro ao editar clsPmieducarMatricula\nvalores obrigatorios\nis_numeric( {$this->ref_cod_matricula} ) && is_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->modulo} )\n-->"; return false; } }
/** * Retorna uma lista filtrados de acordo com os parametros * * @param integer int_ref_cod_matricula * @param integer int_ref_cod_turma * @param integer int_ref_sequencial * @param integer int_ref_cod_serie * @param integer int_ref_cod_escola * @param integer int_ref_cod_disciplina * @param bool bool_reprovado_faltas * @param bool bool_precisa_exame * @param bool bool_permite_exame * * @return array */ function lista($int_ref_cod_matricula = null, $int_ref_cod_turma = null, $int_ref_sequencial = null, $int_ref_cod_serie = null, $int_ref_cod_escola = null, $int_ref_cod_disciplina = null, $bool_reprovado_faltas = null, $bool_precisa_exame = null, $bool_permite_exame = null) { $sql = "SELECT {$this->_campos_lista} FROM {$this->_tabela}"; $filtros = ""; $whereAnd = " WHERE "; if (is_numeric($int_cod_aluno_excessao)) { $filtros .= "{$whereAnd} cod_aluno_excessao = '{$int_cod_aluno_excessao}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_matricula)) { $filtros .= "{$whereAnd} ref_cod_matricula = '{$int_ref_cod_matricula}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_turma)) { $filtros .= "{$whereAnd} ref_cod_turma = '{$int_ref_cod_turma}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_sequencial)) { $filtros .= "{$whereAnd} ref_sequencial = '{$int_ref_sequencial}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_serie)) { $filtros .= "{$whereAnd} ref_cod_serie = '{$int_ref_cod_serie}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_escola)) { $filtros .= "{$whereAnd} ref_cod_escola = '{$int_ref_cod_escola}'"; $whereAnd = " AND "; } if (is_numeric($int_ref_cod_disciplina)) { $filtros .= "{$whereAnd} ref_cod_disciplina = '{$int_ref_cod_disciplina}'"; $whereAnd = " AND "; } if (!is_null($bool_reprovado_faltas)) { if (dbBool($bool_reprovado_faltas)) { $filtros .= "{$whereAnd} reprovado_faltas = TRUE"; } else { $filtros .= "{$whereAnd} reprovado_faltas = FALSE"; } $whereAnd = " AND "; } if (!is_null($bool_precisa_exame)) { if (dbBool($bool_precisa_exame)) { $filtros .= "{$whereAnd} precisa_exame = TRUE"; } else { $filtros .= "{$whereAnd} precisa_exame = FALSE"; } $whereAnd = " AND "; } if (!is_null($bool_permite_exame)) { if ($bool_permite_exame == IS_NULL) { $filtros .= "{$whereAnd} permite_exame IS NULL"; } else { if ($bool_permite_exame == IS_NOT_NULL) { $filtros .= "{$whereAnd} permite_exame IS NOT NULL"; } else { if (dbBool($bool_permite_exame)) { $filtros .= "{$whereAnd} permite_exame = TRUE"; } else { $filtros .= "{$whereAnd} permite_exame = FALSE"; } } } $whereAnd = " AND "; } $db = new clsBanco(); $countCampos = count(explode(",", $this->_campos_lista)); $resultado = array(); $sql .= $filtros . $this->getOrderby() . $this->getLimite(); $this->_total = $db->CampoUnico("SELECT COUNT(0) FROM {$this->_tabela} {$filtros}"); $db->Consulta($sql); if ($countCampos > 1) { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $tupla["_total"] = $this->_total; $resultado[] = $tupla; } } else { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $resultado[] = $tupla[$this->_campos_lista]; } } if (count($resultado)) { return $resultado; } return false; }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = "Turma - Listagem"; foreach ($_GET as $var => $val) { // passa todos os valores obtidos no GET para atributos do objeto $this->{$var} = $val === "" ? null : $val; } $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet"); $lista_busca = array("Ano", "Turma", "Turno", "Série", "Curso"); $obj_permissao = new clsPermissoes(); $nivel_usuario = $obj_permissao->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { $lista_busca[] = "Escola"; //$lista_busca[] = "Instituição"; } else { if ($nivel_usuario == 2) { $lista_busca[] = "Escola"; } } $lista_busca[] = "Situação"; $this->addCabecalhos($lista_busca); $get_escola = true; // $get_escola_curso = true; $get_escola_curso_serie = true; $sem_padrao = true; $get_curso = true; include "include/pmieducar/educar_campo_lista.php"; if ($this->ref_cod_escola) { $this->ref_ref_cod_escola = $this->ref_cod_escola; } $helperOptions = array(); $this->inputsHelper()->dynamic('anoLetivo', array(), $helperOptions); $this->campoTexto("nm_turma", "Turma", $this->nm_turma, 30, 255, false); $this->campoLista("visivel", "Situação", array("" => "Selecione", "1" => "Ativo", "2" => "Inativo"), $this->visivel); // Paginador $this->limite = 20; $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0; $obj_turma = new clsPmieducarTurma(); $obj_turma->setOrderby("nm_turma ASC"); $obj_turma->setLimite($this->limite, $this->offset); if ($this->visivel == 1) { $visivel = true; } elseif ($this->visivel == 2) { $visivel = false; } else { $visivel = array("true", "false"); } $lista = $obj_turma->lista2(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, $this->nm_turma, null, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, null, $this->ref_cod_curso, $this->ref_cod_instituicao, null, null, null, null, null, $visivel, null, null, $this->ano); $total = $obj_turma->_total; // monta a lista if (is_array($lista) && count($lista)) { $ref_cod_escola = ""; $nm_escola = ""; foreach ($lista as $registro) { // pega detalhes de foreign_keys /* if( class_exists( "clsPmieducarEscolaSerie" ) ) { $obj_ref_ref_cod_serie = new clsPmieducarEscolaSerie( $registro["ref_ref_cod_escola"], $registro["ref_ref_cod_serie"] ); $det_ref_ref_cod_serie = $obj_ref_ref_cod_serie->detalhe(); $registro["ref_ref_cod_serie"] = $det_ref_ref_cod_serie["ref_cod_serie"]; } else { $registro["ref_ref_cod_serie"] = "Erro na geracao"; echo "<!--\nErro\nClasse nao existente: clsPmieducarEscolaSerie\n-->"; }*/ /*if( class_exists( "clsPmieducarCurso" ) ) { $obj_ref_cod_curso = new clsPmieducarCurso( $registro["ref_cod_curso"] ); $det_ref_cod_curso = $obj_ref_cod_curso->detalhe(); $registro["ref_cod_curso"] = $det_ref_cod_curso["nm_curso"]; } else { $registro["ref_cod_curso"] = "Erro na geracao"; echo "<!--\nErro\nClasse nao existente: clsPmieducarCurso\n-->"; } if( class_exists( "clsPmieducarInstituicao" ) ) { $obj_cod_instituicao = new clsPmieducarInstituicao( $registro["ref_cod_instituicao"] ); $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe(); $registro["ref_cod_instituicao"] = $obj_cod_instituicao_det["nm_instituicao"]; } else { $registro["ref_cod_instituicao"] = "Erro na geração"; echo "<!--\nErro\nClasse não existente: clsPmieducarInstituicao\n-->"; }*/ if (class_exists("clsPmieducarEscola") && $registro["ref_ref_cod_escola"] != $ref_cod_escola) { $ref_cod_escola = $registro["ref_ref_cod_escola"]; $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_ref_cod_escola"]); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $ref_cod_escola = $registro["ref_ref_cod_escola"]; $nm_escola = $det_ref_cod_escola["nome"]; } /*$obj_ser = new clsPmieducarSerie( $registro["ref_ref_cod_serie"], null, null, $this->ref_cod_curso ); $det_ser = $obj_ser->detalhe(); $obj_cur = new clsPmieducarCurso( $det_ser["ref_cod_curso"] ); $det_cur = $obj_cur->detalhe();*/ $lista_busca = array("<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">{$registro["ano"]}</a>", "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">{$registro["nm_turma"]}</a>"); if ($registro["turma_turno_id"]) { $options = array('params' => $registro["turma_turno_id"], 'return_only' => 'first-field'); $turno = Portabilis_Utils_Database::fetchPreparedQuery("select nome from pmieducar.turma_turno where id = \$1", $options); $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">{$turno}</a>"; } else { $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\"></a>"; } if ($registro["nm_serie"]) { $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">{$registro["nm_serie"]}</a>"; } else { $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">-</a>"; } $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">{$registro["nm_curso"]}</a>"; if ($nivel_usuario == 1) { if ($nm_escola) { $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">{$nm_escola}</a>"; } else { $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">-</a>"; } //$lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">{$registro["nm_instituicao"]}</a>"; } else { if ($nivel_usuario == 2) { if ($nm_escola) { $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">{$nm_escola}</a>"; } else { $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">-</a>"; } } } if (dbBool($registro["visivel"])) { $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">Ativo</a>"; } else { $lista_busca[] = "<a href=\"educar_turma_det.php?cod_turma={$registro["cod_turma"]}\">Inativo</a>"; } $this->addLinhas($lista_busca); } } $this->addPaginador2("educar_turma_lst.php", $total, $_GET, $this->nome, $this->limite); $obj_permissoes = new clsPermissoes(); if ($obj_permissoes->permissao_cadastra(586, $this->pessoa_logada, 7)) { $this->acao = "go(\"educar_turma_cad.php\")"; $this->nome_acao = "Novo"; } $this->largura = "100%"; $localizacao = new LocalizacaoSistema(); $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "i-Educar", "educar_index.php" => "Escola", "" => "Lista de Turmas")); $this->enviaLocalizacao($localizacao->montar()); }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = 'Turma - Detalhe'; $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet'); $this->cod_turma = $_GET['cod_turma']; $tmp_obj = new clsPmieducarTurma(); $lst_obj = $tmp_obj->lista($this->cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, array('true', 'false')); $registro = array_shift($lst_obj); foreach ($registro as $key => $value) { $this->{$key} = $value; } if (!$registro) { header('Location: educar_turma_lst.php'); die; } if (class_exists('clsPmieducarTurmaTipo')) { $obj_ref_cod_turma_tipo = new clsPmieducarTurmaTipo($registro['ref_cod_turma_tipo']); $det_ref_cod_turma_tipo = $obj_ref_cod_turma_tipo->detalhe(); $registro['ref_cod_turma_tipo'] = $det_ref_cod_turma_tipo['nm_tipo']; } else { $registro['ref_cod_turma_tipo'] = 'Erro na geração'; } if (class_exists('clsPmieducarInfraPredioComodo')) { $obj_ref_cod_infra_predio_comodo = new clsPmieducarInfraPredioComodo($registro['ref_cod_infra_predio_comodo']); $det_ref_cod_infra_predio_comodo = $obj_ref_cod_infra_predio_comodo->detalhe(); $registro['ref_cod_infra_predio_comodo'] = $det_ref_cod_infra_predio_comodo['nm_comodo']; } else { $registro['ref_cod_infra_predio_comodo'] = 'Erro na geração'; } if (class_exists('clsPmieducarInstituicao')) { $obj_cod_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']); $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe(); $registro['ref_cod_instituicao'] = $obj_cod_instituicao_det['nm_instituicao']; } else { $registro['ref_cod_instituicao'] = 'Erro na geração'; } if (class_exists('clsPmieducarEscola')) { $this->ref_ref_cod_escola = $registro['ref_ref_cod_escola']; $obj_ref_cod_escola = new clsPmieducarEscola($registro['ref_ref_cod_escola']); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $registro['ref_ref_cod_escola'] = $det_ref_cod_escola['nome']; } else { $registro['ref_cod_escola'] = 'Erro na geração'; } if (class_exists('clsPmieducarCurso')) { $obj_ref_cod_curso = new clsPmieducarCurso($registro['ref_cod_curso']); $det_ref_cod_curso = $obj_ref_cod_curso->detalhe(); $registro['ref_cod_curso'] = $det_ref_cod_curso['nm_curso']; $padrao_ano_escolar = $det_ref_cod_curso['padrao_ano_escolar']; } else { $registro['ref_cod_curso'] = 'Erro na geração'; } if (class_exists('clsPmieducarSerie')) { $this->ref_ref_cod_serie = $registro['ref_ref_cod_serie']; $obj_ser = new clsPmieducarSerie($registro['ref_ref_cod_serie']); $det_ser = $obj_ser->detalhe(); $registro['ref_ref_cod_serie'] = $det_ser['nm_serie']; } else { $registro['ref_ref_cod_serie'] = 'Erro na geração'; } $obj_permissoes = new clsPermissoes(); $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { if ($registro['ref_cod_instituicao']) { $this->addDetalhe(array('Instituição', $registro['ref_cod_instituicao'])); } } if ($nivel_usuario == 1 || $nivel_usuario == 2) { if ($registro['ref_ref_cod_escola']) { $this->addDetalhe(array('Escola', $registro['ref_ref_cod_escola'])); } } if ($registro['ref_cod_curso']) { $this->addDetalhe(array('Curso', $registro['ref_cod_curso'])); } if ($registro['ref_ref_cod_serie']) { $this->addDetalhe(array('Série', $registro['ref_ref_cod_serie'])); } if ($registro['ref_cod_regente']) { $obj_pessoa = new clsPessoa_($registro['ref_cod_regente']); $det = $obj_pessoa->detalhe(); $this->addDetalhe(array('Professor/Regente', $det['nome'])); } if ($registro['ref_cod_infra_predio_comodo']) { $this->addDetalhe(array('Sala', $registro['ref_cod_infra_predio_comodo'])); } if ($registro['ref_cod_turma_tipo']) { $this->addDetalhe(array('Tipo de Turma', $registro['ref_cod_turma_tipo'])); } if ($registro['nm_turma']) { $this->addDetalhe(array('Turma', $registro['nm_turma'])); } if ($registro['sgl_turma']) { $this->addDetalhe(array('Sigla', $registro['sgl_turma'])); } if ($registro['max_aluno']) { $this->addDetalhe(array('Máximo de Alunos', $registro['max_aluno'])); } $this->addDetalhe(array('Situação', dbBool($registro['visivel']) ? 'Ativo' : 'Desativo')); if ($registro['multiseriada'] == 1) { if ($registro['multiseriada'] == 1) { $registro['multiseriada'] = 'sim'; } else { $registro['multiseriada'] = 'não'; } $this->addDetalhe(array('Multi-Seriada', $registro['multiseriada'])); $obj_serie_mult = new clsPmieducarSerie($registro['ref_ref_cod_serie_mult']); $det_serie_mult = $obj_serie_mult->detalhe(); $this->addDetalhe(array('Série Multi-Seriada', $det_serie_mult['nm_serie'])); } if ($padrao_ano_escolar == 1) { if ($registro['hora_inicial']) { $registro['hora_inicial'] = date('H:i', strtotime($registro['hora_inicial'])); $this->addDetalhe(array('Hora Inicial', $registro['hora_inicial'])); } if ($registro['hora_final']) { $registro['hora_final'] = date('H:i', strtotime($registro['hora_final'])); $this->addDetalhe(array('Hora Final', $registro['hora_final'])); } if ($registro['hora_inicio_intervalo']) { $registro['hora_inicio_intervalo'] = date('H:i', strtotime($registro['hora_inicio_intervalo'])); $this->addDetalhe(array('Hora Início Intervalo', $registro['hora_inicio_intervalo'])); } if ($registro['hora_fim_intervalo']) { $registro['hora_fim_intervalo'] = date('H:i', strtotime($registro['hora_fim_intervalo'])); $this->addDetalhe(array('Hora Fim Intervalo', $registro['hora_fim_intervalo'])); } } elseif ($padrao_ano_escolar == 0) { $obj = new clsPmieducarTurmaModulo(); $obj->setOrderby('data_inicio ASC'); $lst = $obj->lista($this->cod_turma); if ($lst) { $tabela = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Data Início</b></td> <td bgcolor="#A1B3BD"><b>Data Fim</b></td> </tr>'; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = ' bgcolor="#E4E9ED" '; } else { $color = ' bgcolor="#FFFFFF" '; } $obj_modulo = new clsPmieducarModulo($valor['ref_cod_modulo']); $det_modulo = $obj_modulo->detalhe(); $nm_modulo = $det_modulo['nm_tipo']; $valor['data_inicio'] = dataFromPgToBr($valor['data_inicio']); $valor['data_fim'] = dataFromPgToBr($valor['data_fim']); $tabela .= sprintf(' <tr> <td %s align=left>%s</td> <td %s align=left>%s</td> <td %s align=left>%s</td> </tr>', $color, $nm_modulo, $color, $valor['data_inicio'], $color, $valor['data_fim']); $cont++; } $tabela .= '</table>'; } if ($tabela) { $this->addDetalhe(array('Módulo', $tabela)); } $dias_da_semana = array('' => 'Selecione', 1 => 'Domingo', 2 => 'Segunda', 3 => 'Terça', 4 => 'Quarta', 5 => 'Quinta', 6 => 'Sexta', 7 => 'Sábado'); $obj = new clsPmieducarTurmaDiaSemana(); $lst = $obj->lista(NULL, $this->cod_turma); if ($lst) { $tabela1 = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Hora Inicial</b></td> <td bgcolor="#A1B3BD"><b>Hora Final</b></td> </tr>'; $cont = 0; foreach ($lst as $valor) { if ($cont % 2 == 0) { $color = ' bgcolor="#E4E9ED" '; } else { $color = ' bgcolor="#FFFFFF" '; } $valor['hora_inicial'] = date('H:i', strtotime($valor['hora_inicial'])); $valor['hora_final'] = date('H:i', strtotime($valor['hora_final'])); $tabela1 .= sprintf("\n <tr>\n <td %s align=left>%s</td>\n <td %s align=left>%s</td>\n <td %s align=left>%s</td>\n </tr>", $color, $dias_da_semana[$valor['dia_semana']], $color, $valor['hora_inicial'], $color, $valor['hora_final']); $cont++; } $tabela1 .= '</table>'; } if ($tabela1) { $this->addDetalhe(array('Dia da Semana', $tabela1)); } } // Recupera os componentes curriculares da turma $componentes = array(); try { $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->cod_turma); } catch (Exception $e) { } $tabela3 = ' <table> <tr align="center"> <td bgcolor="#A1B3BD"><b>Nome</b></td> <td bgcolor="#A1B3BD"><b>Carga horária</b></td> </tr>'; $cont = 0; foreach ($componentes as $componente) { $color = $cont++ % 2 == 0 ? ' bgcolor="#E4E9ED" ' : ' bgcolor="#FFFFFF" '; $tabela3 .= sprintf(' <tr> <td %s align="left">%s</td> <td %s align="center">%.0f h</td> </tr>', $color, $componente, $color, $componente->cargaHoraria); } $tabela3 .= '</table>'; $this->addDetalhe(array('Componentes curriculares', $tabela3)); if ($obj_permissoes->permissao_cadastra(586, $this->pessoa_logada, 7)) { $this->url_novo = 'educar_turma_cad.php'; $this->url_editar = 'educar_turma_cad.php?cod_turma=' . $registro['cod_turma']; } $this->url_cancelar = 'educar_turma_lst.php'; $this->largura = '100%'; $localizacao = new LocalizacaoSistema(); $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "Início", "educar_index.php" => "i-Educar - Escola", "" => "Detalhe da turma")); $this->enviaLocalizacao($localizacao->montar()); $this->array_botao[] = 'Reclassificar alunos alfabeticamente'; $this->array_botao_url_script[] = "if(confirm(\"Deseja realmente reclassificar os alunos alfabeticamente?\\nAo utilizar esta opção para esta turma, a ordenação dos alunos no diário e em relatórios que é controlada por ordem de chegada após a data de fechamento da turma (campo Data de fechamento), passará a ter o controle novamente alfabético, desconsiderando a data de fechamento.\"))reclassifica_matriculas({$registro['cod_turma']})"; Portabilis_View_Helper_Application::loadJQueryLib($this); $scripts = array('/modules/Portabilis/Assets/Javascripts/Utils.js', '/modules/Portabilis/Assets/Javascripts/ClientApi.js', '/modules/Cadastro/Assets/Javascripts/TurmaDet.js'); Portabilis_View_Helper_Application::loadJavascript($this, $scripts); }
function Gerar() { if ($_POST) { foreach ($_POST as $campo => $val) { $this->{$campo} = $this->{$campo} ? $this->{$campo} : $val; } } $this->campoOculto('cod_turma', $this->cod_turma); // foreign keys $obrigatorio = FALSE; $instituicao_obrigatorio = TRUE; $escola_curso_obrigatorio = TRUE; $curso_obrigatorio = TRUE; $get_escola = TRUE; $get_escola_curso_serie = FALSE; $sem_padrao = TRUE; $get_curso = TRUE; $bloqueia = false; $anoVisivel = false; if (isset($this->ano) || !is_numeric($this->cod_turma)) { $anoVisivel = true; } if (!isset($this->cod_turma)) { $bloqueia = false; } else { if (is_numeric($this->cod_turma)) { $obj_matriculas_turma = new clsPmieducarMatriculaTurma(); $obj_matriculas_turma->setOrderby('nome_aluno'); $lst_matriculas_turma = $obj_matriculas_turma->lista(NULL, $this->cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, array(1, 2, 3), NULL, NULL, NULL, NULL, TRUE, NULL, 1, TRUE); if (is_array($lst_matriculas_turma) && count($lst_matriculas_turma) > 0) { $bloqueia = true; } } } $desabilitado = $bloqueia; include 'include/pmieducar/educar_campo_lista.php'; if ($this->ref_cod_escola) { $this->ref_ref_cod_escola = $this->ref_cod_escola; } $opcoes_serie = array('' => 'Selecione'); // Editar if ($this->ref_cod_curso) { $obj_serie = new clsPmieducarSerie(); $obj_serie->setOrderby('nm_serie ASC'); $lst_serie = $obj_serie->lista(NULL, NULL, NULL, $this->ref_cod_curso, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); if (is_array($lst_serie) && count($lst_serie)) { foreach ($lst_serie as $serie) { $opcoes_serie[$serie['cod_serie']] = $serie['nm_serie']; } } } if ($bloqueia) { $this->campoOculto('serie_param', $this->serie_param = $this->ref_ref_cod_serie); $this->campoOculto('escola_param', $this->escola_param = $this->ref_cod_escola); } $this->campoLista('ref_ref_cod_serie', 'Série', $opcoes_serie, $this->ref_ref_cod_serie, '', FALSE, '', NULL, $bloqueia); // o campo ano somente é exibido para turmas novas ou cadastradas após inclusão deste campo. if ($anoVisivel) { $this->inputsHelper()->dynamic('anoLetivo', array('disabled' => $bloqueia)); if ($bloqueia) { $this->inputsHelper()->hidden('ano_hidden', array('value' => $this->ano)); } } // Infra prédio cômodo $opcoes = array('' => 'Selecione'); // Editar if ($this->ref_ref_cod_escola) { $obj_infra_predio = new clsPmieducarInfraPredio(); $obj_infra_predio->setOrderby('nm_predio ASC'); $lst_infra_predio = $obj_infra_predio->lista(NULL, NULL, NULL, $this->ref_ref_cod_escola, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); if (is_array($lst_infra_predio) && count($lst_infra_predio)) { foreach ($lst_infra_predio as $predio) { $obj_infra_predio_comodo = new clsPmieducarInfraPredioComodo(); $lst_infra_predio_comodo = $obj_infra_predio_comodo->lista(NULL, NULL, NULL, NULL, $predio['cod_infra_predio'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); if (is_array($lst_infra_predio_comodo) && count($lst_infra_predio_comodo)) { foreach ($lst_infra_predio_comodo as $comodo) { $opcoes[$comodo['cod_infra_predio_comodo']] = $comodo['nm_comodo']; } } } } } $this->campoLista('ref_cod_infra_predio_comodo', 'Sala', $opcoes, $this->ref_cod_infra_predio_comodo, NULL, NULL, NULL, NULL, NULL, FALSE); $array_servidor = array('' => 'Selecione um servidor'); if ($this->ref_cod_regente) { $obj_pessoa = new clsPessoa_($this->ref_cod_regente); $det = $obj_pessoa->detalhe(); $array_servidor[$this->ref_cod_regente] = $det['nome']; } $this->campoListaPesq('ref_cod_regente', 'Professor/Regente', $array_servidor, $this->ref_cod_regente, '', '', FALSE, '', '', NULL, NULL, '', TRUE, FALSE, FALSE); // Turma tipo $opcoes = array('' => 'Selecione'); // Editar if ($this->ref_cod_instituicao) { $objTemp = new clsPmieducarTurmaTipo(); $objTemp->setOrderby('nm_tipo ASC'); $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao); if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { $opcoes[$registro['cod_turma_tipo']] = $registro['nm_tipo']; } } } $this->campoLista('ref_cod_turma_tipo', 'Tipo de Turma', $opcoes, $this->ref_cod_turma_tipo, '', FALSE, '', NULL); $this->campoTexto('nm_turma', 'Turma', $this->nm_turma, 30, 255, TRUE); $this->campoTexto('sgl_turma', 'Sigla', $this->sgl_turma, 15, 15, FALSE); $this->campoNumero('max_aluno', 'Máximo de Alunos', $this->max_aluno, 3, 3, TRUE); $this->inputsHelper()->date('data_fechamento', array('required' => false, 'label' => 'Data de fechamento', 'value' => Portabilis_Date_Utils::pgSQLToBr($this->data_fechamento))); $ativo = isset($this->cod_turma) ? dbBool($this->visivel) : true; $this->campoCheck('visivel', 'Ativo', $ativo); $this->campoCheck('multiseriada', 'Multi-Seriada', $this->multiseriada, '', FALSE, FALSE); $this->campoLista('ref_ref_cod_serie_mult', 'Série', array('' => 'Selecione'), '', '', FALSE, '', '', '', FALSE); $this->campoOculto('ref_ref_cod_serie_mult_', $this->ref_ref_cod_serie_mult); $this->campoQuebra2(); // hora $this->campoHora('hora_inicial', 'Hora Inicial', $this->hora_inicial, FALSE); $this->campoHora('hora_final', 'Hora Final', $this->hora_final, FALSE); $this->campoHora('hora_inicio_intervalo', Portabilis_String_Utils::toLatin1('Hora Início Intervalo'), $this->hora_inicio_intervalo, FALSE); $this->campoHora('hora_fim_intervalo', 'Hora Fim Intervalo', $this->hora_fim_intervalo, FALSE); $this->inputsHelper()->turmaTurno(); // modelos boletim require_once 'Portabilis/Model/Report/TipoBoletim.php'; require_once 'Portabilis/Array/Utils.php'; $tiposBoletim = Portabilis_Model_Report_TipoBoletim::getInstance()->getEnums(); $tiposBoletim = Portabilis_Array_Utils::insertIn(null, "Selecione um modelo", $tiposBoletim); $this->campoLista('tipo_boletim', Portabilis_String_Utils::toLatin1('Modelo relatório boletim'), $tiposBoletim, $this->tipo_boletim); $this->campoQuebra2(); if ($this->ref_ref_cod_serie) { require_once 'ComponenteCurricular/Model/ComponenteDataMapper.php'; require_once 'ComponenteCurricular/Model/AnoEscolarDataMapper.php'; require_once 'ComponenteCurricular/Model/TurmaDataMapper.php'; $disciplinas = ''; $conteudo = ''; // Instancia o mapper de componente curricular $mapper = new ComponenteCurricular_Model_ComponenteDataMapper(); // Instancia o mapper de ano escolar $anoEscolar = new ComponenteCurricular_Model_AnoEscolarDataMapper(); $lista = $anoEscolar->findComponentePorSerie($this->ref_ref_cod_serie); // Instancia o mapper de turma $componenteTurmaMapper = new ComponenteCurricular_Model_TurmaDataMapper(); $componentesTurma = array(); if (isset($this->cod_turma) && is_numeric($this->cod_turma)) { $componentesTurma = $componenteTurmaMapper->findAll(array(), array('turma' => $this->cod_turma)); } $componentes = array(); foreach ($componentesTurma as $componenteTurma) { $componentes[$componenteTurma->get('componenteCurricular')] = $componenteTurma; } unset($componentesTurma); $this->escola_serie_disciplina = array(); if (is_array($lista) && count($lista)) { $conteudo .= '<div style="margin-bottom: 10px;">'; $conteudo .= ' <span style="display: block; float: left; width: 250px;">Nome</span>'; $conteudo .= ' <span style="display: block; float: left; width: 100px;">' . Portabilis_String_Utils::toLatin1('Carga horária') . '</span>'; $conteudo .= ' <span style="display: block; float: left">' . Portabilis_String_Utils::toLatin1('Usar padrão do componente?') . '</span>'; $conteudo .= '</div>'; $conteudo .= '<br style="clear: left" />'; foreach ($lista as $registro) { $checked = ''; $usarComponente = FALSE; if (isset($componentes[$registro->id])) { $checked = 'checked="checked"'; } if (is_null($componentes[$registro->id]->cargaHoraria) || 0 == $componentes[$registro->id]->cargaHoraria) { $usarComponente = TRUE; } else { $cargaHoraria = $componentes[$registro->id]->cargaHoraria; } $cargaComponente = $registro->cargaHoraria; $conteudo .= '<div style="margin-bottom: 10px; float: left">'; $conteudo .= " <label style='display: block; float: left; width: 250px'><input type=\"checkbox\" {$checked} name=\"disciplinas[{$registro->id}]\" id=\"disciplinas[]\" value=\"{$registro->id}\">{$registro}</label>"; $conteudo .= " <label style='display: block; float: left; width: 100px;'><input type='text' name='carga_horaria[{$registro->id}]' value='{$cargaHoraria}' size='5' maxlength='7'></label>"; $conteudo .= " <label style='display: block; float: left'><input type='checkbox' name='usar_componente[{$registro->id}]' value='1' " . ($usarComponente == TRUE ? $checked : '') . ">({$cargaComponente} h)</label>"; $conteudo .= '</div>'; $conteudo .= '<br style="clear: left" />'; $cargaHoraria = ''; } $disciplinas = '<table cellspacing="0" cellpadding="0" border="0">'; $disciplinas .= sprintf('<tr align="left"><td>%s</td></tr>', $conteudo); $disciplinas .= '</table>'; } else { $disciplinas = Portabilis_String_Utils::toLatin1('A série/ano escolar não possui componentes curriculares cadastrados.'); } } $componentes = $help = array(); try { $componentes = App_Model_IedFinder::getEscolaSerieDisciplina($this->ref_ref_cod_serie, $this->ref_cod_escola); } catch (Exception $e) { } foreach ($componentes as $componente) { $help[] = sprintf('%s (%.0f h)', $componente->nome, $componente->cargaHoraria); } if (count($componentes)) { $help = '<ul><li>' . implode('</li><li>', $help) . '</li></ul>'; } else { $help = ''; } $label = 'Componentes curriculares:<br />' . '<strong>Observação:</strong> caso não defina os componentes<br />' . 'curriculares para a turma, esta usará a definição<br />' . 'da série/ano escolar da escola:' . '<span id="_escola_serie_componentes">%s</span>'; $label = sprintf($label, $help); $this->campoRotulo('disciplinas_', $label, "<div id='disciplinas'>{$disciplinas}</div>"); $this->campoQuebra2(); if ($_POST['turma_modulo']) { $this->turma_modulo = unserialize(urldecode($_POST['turma_modulo'])); } $qtd_modulo = count($this->turma_modulo) == 0 ? 1 : count($this->turma_modulo) + 1; if (is_numeric($this->cod_turma) && !$_POST) { $obj = new clsPmieducarTurmaModulo(); $registros = $obj->lista($this->cod_turma); if ($registros) { foreach ($registros as $campo) { $this->turma_modulo[$campo[$qtd_modulo]]['sequencial_'] = $campo['sequencial']; $this->turma_modulo[$campo[$qtd_modulo]]['ref_cod_modulo_'] = $campo['ref_cod_modulo']; $this->turma_modulo[$campo[$qtd_modulo]]['data_inicio_'] = dataFromPgToBr($campo['data_inicio']); $this->turma_modulo[$campo[$qtd_modulo]]['data_fim_'] = dataFromPgToBr($campo['data_fim']); $qtd_modulo++; } } } if ($_POST["ref_cod_modulo"] && $_POST["data_inicio"] && $_POST["data_fim"]) { $this->turma_modulo[$qtd_modulo]["sequencial_"] = $qtd_modulo; $this->turma_modulo[$qtd_modulo]["ref_cod_modulo_"] = $_POST["ref_cod_modulo"]; $this->turma_modulo[$qtd_modulo]["data_inicio_"] = $_POST["data_inicio"]; $this->turma_modulo[$qtd_modulo]["data_fim_"] = $_POST["data_fim"]; $qtd_modulo++; unset($this->ref_cod_modulo); unset($this->data_inicio); unset($this->data_fim); } $this->campoOculto("excluir_modulo", ""); $qtd_modulo = 1; unset($aux); if ($this->turma_modulo) { foreach ($this->turma_modulo as $campo) { if ($this->excluir_modulo == $campo['sequencial_']) { $this->turma_modulo[$campo['sequencial']] = NULL; $this->excluir_modulo = NULL; } else { $obj_modulo = new clsPmieducarModulo($campo['ref_cod_modulo_']); $det_modulo = $obj_modulo->detalhe(); $nm_tipo_modulo = $det_modulo['nm_tipo']; $this->campoTextoInv('ref_cod_modulo_' . $campo['sequencial_'], '', $nm_tipo_modulo, 30, 255, FALSE, FALSE, TRUE, '', '', '', '', 'ref_cod_modulo'); $this->campoTextoInv('data_inicio_' . $campo['sequencial_'], '', $campo['data_inicio_'], 10, 10, FALSE, FALSE, TRUE, '', '', '', '', ''); $this->campoTextoInv('data_fim_' . $campo['sequencial_'], '', $campo['data_fim_'], 10, 10, FALSE, FALSE, FALSE, '', "<a href='#' onclick=\"document.getElementById('excluir_modulo').value = '{$campo["sequencial_"]}'; document.getElementById('tipoacao').value = ''; {$this->__nome}.submit();\"><img src='imagens/nvp_bola_xis.gif' title='Excluir' border=0></a>", '', '', ''); $aux[$qtd_modulo]['sequencial_'] = $qtd_modulo; $aux[$qtd_modulo]['ref_cod_modulo_'] = $campo['ref_cod_modulo_']; $aux[$qtd_modulo]['data_inicio_'] = $campo['data_inicio_']; $aux[$qtd_modulo]['data_fim_'] = $campo['data_fim_']; $qtd_modulo++; } } unset($this->turma_modulo); $this->turma_modulo = $aux; } $this->campoOculto('turma_modulo', serialize($this->turma_modulo)); // Módulo // foreign keys $opcoes = array('' => 'Selecione'); // Editar if ($this->ref_cod_instituicao) { $objTemp = new clsPmieducarModulo(); $objTemp->setOrderby('nm_tipo ASC'); $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao); if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { $opcoes[$registro['cod_modulo']] = $registro['nm_tipo']; } } } $this->campoLista('ref_cod_modulo', Portabilis_String_utils::toLatin1('Módulo'), $opcoes, $this->ref_cod_modulo, NULL, NULL, NULL, NULL, NULL, FALSE); $this->campoData('data_inicio', Portabilis_String_utils::toLatin1('Data Início'), $this->data_inicio, FALSE); $this->campoData('data_fim', 'Data Fim', $this->data_fim, FALSE); $this->campoOculto('incluir_modulo', ''); $this->campoRotulo('bt_incluir_modulo', Portabilis_String_utils::toLatin1('Módulo'), "<a href='#' onclick=\"document.getElementById('incluir_modulo').value = 'S'; document.getElementById('tipoacao').value = ''; acao();\"><img src='imagens/nvp_bot_adiciona.gif' alt='adicionar' title='Incluir' border=0></a>"); $this->campoQuebra2(); if ($_POST['turma_dia_semana']) { $this->turma_dia_semana = unserialize(urldecode($_POST['turma_dia_semana'])); } if (is_numeric($this->cod_turma) && !$_POST) { $obj = new clsPmieducarTurmaDiaSemana(); $registros = $obj->lista(NULL, $this->cod_turma); if ($registros) { foreach ($registros as $campo) { $aux['dia_semana_'] = $campo['dia_semana']; $aux['hora_inicial_'] = $campo['hora_inicial']; $aux['hora_final_'] = $campo['hora_final']; $this->turma_dia_semana[] = $aux; } } } unset($aux); if ($_POST['dia_semana'] && $_POST['ds_hora_inicial'] && $_POST['ds_hora_final']) { $aux['dia_semana_'] = $_POST['dia_semana']; $aux['hora_inicial_'] = $_POST['ds_hora_inicial']; $aux['hora_final_'] = $_POST['ds_hora_final']; $this->turma_dia_semana[] = $aux; unset($this->dia_semana); unset($this->ds_hora_inicial); unset($this->ds_hora_final); } $this->campoOculto('excluir_dia_semana', ''); unset($aux); if ($this->turma_dia_semana) { foreach ($this->turma_dia_semana as $key => $dias_semana) { if ($this->excluir_dia_semana == $dias_semana['dia_semana_']) { unset($this->turma_dia_semana[$key]); unset($this->excluir_dia_semana); } else { $nm_dia_semana = $this->dias_da_semana[$dias_semana['dia_semana_']]; $this->campoTextoInv('dia_semana_' . $dias_semana['dia_semana_'], '', $nm_dia_semana, 8, 8, FALSE, FALSE, TRUE, '', '', '', '', 'dia_semana'); $this->campoTextoInv('hora_inicial_' . $dias_semana['dia_semana_'], '', $dias_semana['hora_inicial_'], 5, 5, FALSE, FALSE, TRUE, '', '', '', '', 'ds_hora_inicial_'); $this->campoTextoInv('hora_final_' . $dias_semana['dia_semana_'], '', $dias_semana['hora_final_'], 5, 5, FALSE, FALSE, FALSE, '', "<a href='#' onclick=\"document.getElementById('excluir_dia_semana').value = '{$dias_semana["dia_semana_"]}'; document.getElementById('tipoacao').value = ''; {$this->__nome}.submit();\"><img src='imagens/nvp_bola_xis.gif' title='Excluir' border=0></a>", '', '', 'ds_hora_final_'); $aux['dia_semana_'] = $dias_semana['dia_semana_']; $aux['hora_inicial_'] = $dias_semana['hora_inicial_']; $aux['hora_final_'] = $dias_semana['hora_final_']; } } } $this->campoOculto('turma_dia_semana', serialize($this->turma_dia_semana)); if (class_exists('clsPmieducarTurmaDiaSemana')) { $opcoes = $this->dias_da_semana; } else { echo '<!--\\nErro\\nClasse clsPmieducarTurmaDiaSemana não encontrada\\n-->'; $opcoes = array('' => Portabilis_String_utils::toLatin1('Erro na geração')); } $this->campoLista('dia_semana', 'Dia Semana', $opcoes, $this->dia_semana, NULL, false, '', '', false, false); $this->campoHora('ds_hora_inicial', 'Hora Inicial', $this->ds_hora_inicial, FALSE); $this->campoHora('ds_hora_final', 'Hora Final', $this->ds_hora_final, FALSE); $this->campoOculto('incluir_dia_semana', ''); $this->campoRotulo('bt_incluir_dia_semana', 'Dia Semana', "<a href='#' onclick=\"document.getElementById('incluir_dia_semana').value = 'S'; document.getElementById('tipoacao').value = ''; acao();\"><img src='imagens/nvp_bot_adiciona.gif' alt='adicionar' title='Incluir' border=0></a>"); $this->campoOculto('padrao_ano_escolar', $this->padrao_ano_escolar); $this->acao_enviar = 'valida()'; }
/** * Retorna uma lista filtrados de acordo com os parametros * * @return array */ function lista($int_ref_cod_tipo_avaliacao = null, $int_sequencial = null, $str_nome = null, $int_valor = null, $int_valor_min = null, $int_valor_max = null, $bool_ativo = null) { $sql = "SELECT {$this->_campos_lista} FROM {$this->_tabela}"; $filtros = ""; $whereAnd = " WHERE "; if (is_numeric($int_ref_cod_tipo_avaliacao)) { $filtros .= "{$whereAnd} ref_cod_tipo_avaliacao = '{$int_ref_cod_tipo_avaliacao}'"; $whereAnd = " AND "; } if (is_numeric($int_sequencial)) { $filtros .= "{$whereAnd} sequencial = '{$int_sequencial}'"; $whereAnd = " AND "; } if (is_string($str_nome)) { $filtros .= "{$whereAnd} nome LIKE '%{$str_nome}%'"; $whereAnd = " AND "; } if (is_numeric($int_valor)) { $filtros .= "{$whereAnd} valor = '{$int_valor}'"; $whereAnd = " AND "; } if (is_numeric($int_valor_min)) { $filtros .= "{$whereAnd} valor_min <= '{$int_valor_min}'"; $whereAnd = " AND "; } if (is_numeric($int_valor_max)) { $filtros .= "{$whereAnd} valor_max >= '{$int_valor_max}'"; $whereAnd = " AND "; } if (dbBool($bool_ativo)) { $bool_ativo = dbBool($bool_ativo) ? "true" : "false"; $filtros .= "{$whereAnd} ativo = {$bool_ativo}"; $whereAnd = " AND "; } else { $filtros .= "{$whereAnd} ativo = true"; $whereAnd = " AND "; } $db = new clsBanco(); $countCampos = count(explode(",", $this->_campos_lista)); $resultado = array(); $sql .= $filtros . $this->getOrderby() . $this->getLimite(); $this->_total = $db->CampoUnico("SELECT COUNT(0) FROM {$this->_tabela} {$filtros}"); $db->Consulta($sql); if ($countCampos > 1) { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $tupla["_total"] = $this->_total; $resultado[] = $tupla; } } else { while ($db->ProximoRegistro()) { $tupla = $db->Tupla(); $resultado[] = $tupla[$this->_campos_lista]; } } if (count($resultado)) { return $resultado; } return false; }