protected function getMatriculas() { if ($this->canGetMatriculas()) { $matriculas = new clsPmieducarMatricula(); $matriculas->setOrderby("sequencial_fechamento , translate(nome,'" . Portabilis_String_Utils::toLatin1(åáàãâäéèêëíìîïóòõôöúùüûçÿýñÅÁÀÃÂÄÉÈÊËÍÌÎÏÓÒÕÔÖÚÙÛÜÇÝÑ) . "', '" . Portabilis_String_Utils::toLatin1(aaaaaaeeeeiiiiooooouuuucyynAAAAAAEEEEIIIIOOOOOUUUUCYN) . "') "); $matriculas = $matriculas->lista(NULL, NULL, $this->getRequest()->escola_id, $this->getRequest()->serie_id, NULL, NULL, $this->getRequest()->aluno_id, NULL, NULL, NULL, NULL, NULL, $ativo = 1, $this->getRequest()->ano, NULL, $this->getRequest()->instituicao_id, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $this->getRequest()->curso_id, NULL, $this->getRequest()->matricula_id, NULL, NULL, NULL, NULL, $this->getRequest()->turma_id); $options = array(); foreach ($matriculas as $matricula) { $options['__' . $matricula['cod_matricula']] = $this->toUtf8($matricula['nome']); } return array('options' => $options); } }
protected function getMatriculas() { if ($this->canGetMatriculas()) { $matriculas = new clsPmieducarMatricula(); $matriculas->setOrderby('ano DESC, ref_ref_cod_serie DESC, cod_matricula DESC, aprovado'); $matriculas = $matriculas->lista(null, null, null, null, null, null, $this->getRequest()->aluno_id, null, null, null, null, null, 1); $attrs = array('cod_matricula' => 'id', 'ref_cod_instituicao' => 'instituicao_id', 'ref_ref_cod_escola' => 'escola_id', 'ref_cod_curso' => 'curso_id', 'ref_ref_cod_serie' => 'serie_id', 'ref_cod_aluno' => 'aluno_id', 'nome' => 'aluno_nome', 'aprovado' => 'situacao', 'ano'); $matriculas = Portabilis_Array_Utils::filterSet($matriculas, $attrs); foreach ($matriculas as $index => $matricula) { $turma = $this->loadTurmaByMatriculaId($matricula['id']); $matriculas[$index]['aluno_nome'] = $this->toUtf8($matricula['aluno_nome'], array('transform' => true)); $matriculas[$index]['turma_id'] = $turma['id']; $matriculas[$index]['turma_nome'] = $turma['nome']; $matriculas[$index]['escola_nome'] = $this->loadEscolaNome($matricula['escola_id']); $matriculas[$index]['curso_nome'] = $this->loadCursoNome($matricula['curso_id']); $matriculas[$index]['serie_nome'] = $this->loadSerieNome($matricula['serie_id']); $matriculas[$index]['ultima_enturmacao'] = $this->loadNomeTurmaOrigem($matricula['id']); $matriculas[$index]['data_entrada'] = $this->loadTransferenciaDataEntrada($matricula['id']); $matriculas[$index]['data_saida'] = $this->loadTransferenciaDataSaida($matricula['id']); $matriculas[$index]['situacao'] = App_Model_MatriculaSituacao::getInstance()->getValue($matricula['situacao']); $matriculas[$index]['user_can_access'] = Portabilis_Utils_User::canAccessEscola($matricula['escola_id']); $matriculas[$index]['transferencia_em_aberto'] = $this->possuiTransferenciaEmAberto($matricula['id']); } return array('matriculas' => $matriculas); } }
function verificaHistorico() { if (is_numeric($this->ref_cod_aluno)) { @session_start(); $pessoa_logada = $_SESSION['id_pessoa']; @session_write_close(); $sql_existe_historico = "select sequencial from pmieducar.historico_escolar where ref_cod_aluno={$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tand ativo=1 and ano=2007"; $sql = "SELECT ref_ref_cod_serie from pmieducar.matricula where cod_matricula in (\n\t\t\t\t\t\t\tSELECT MAX(cod_matricula) as max_matricula\n\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2))"; $db = new clsBanco(); $serie = $db->CampoUnico($sql); if ($serie != 15) { $db = new clsBanco(); $existe_historico = $db->CampoUnico($sql_existe_historico); $liberar_historico = false; $existe_historico_sequencial = false; if (!is_numeric($existe_historico)) { $liberar_historico = true; } else { $sql_existe_disciplina = "select 1 from pmieducar.historico_disciplinas where\n\t\t\t\t\t\t\t\t\t\t\tref_ref_cod_aluno={$this->ref_cod_aluno} and ref_sequencial={$existe_historico}"; $existe_disciplinas = $db->CampoUnico($sql_existe_disciplina); if (!is_numeric($existe_disciplinas)) { $liberar_historico = true; $existe_historico_sequencial = true; } } $sql_aprovado = "SELECT aprovado from pmieducar.matricula where cod_matricula in (\n\t\t\t\t\t\t\tSELECT MAX(cod_matricula) as max_matricula\n\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2))"; $aprovado_aux = $db->CampoUnico($sql_aprovado); if (is_numeric($existe_historico) && !$existe_historico_sequencial) { $sql_historico_aprovado = "SELECT aprovado from pmieducar.historico_escolar\n\t\t\t\t\t\t\t\t\t\t\twhere ref_cod_aluno={$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\t\tand sequencial={$existe_historico} and ano=2007 and ativo=1"; $aprovado_historico = $db->CampoUnico($sql_historico_aprovado); /*if ($aprovado_aux != $aprovado_historico) { $liberar_historico = true; $sql_desativa_he = "update pmieducar.historico_escolar set ativo=0 where ref_cod_aluno={$this->ref_cod_aluno} and sequencial={$existe_historico} and ano=2007"; $db->Consulta($sql_desativa_he); $existe_historico_sequencial=false; }*/ } $sql_aprovado = "SELECT aprovado from pmieducar.matricula where cod_matricula in (\n\t\t\t\t\t\t\tSELECT MAX(cod_matricula) as max_matricula\n\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2))"; $aprovado_aux = $db->CampoUnico($sql_aprovado); if (is_numeric($existe_historico) && !$existe_historico_sequencial) { $sql_historico_aprovado = "SELECT aprovado from pmieducar.historico_escolar\n\t\t\t\t\t\t\t\t\t\t\twhere ref_cod_aluno={$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\t\tand sequencial={$existe_historico} and ano=2007 and ativo=1"; $aprovado_historico = $db->CampoUnico($sql_historico_aprovado); /*if ($aprovado_aux != $aprovado_historico) { $liberar_historico = true; $sql_desativa_he = "update pmieducar.historico_escolar set ativo=0 where ref_cod_aluno={$this->ref_cod_aluno} and sequencial={$existe_historico} and ano=2007"; $db->Consulta($sql_desativa_he); $existe_historico_sequencial=false; }*/ } if ($liberar_historico) { $sql = "SELECT cod_matricula,aprovado,ref_ref_cod_escola,ref_ref_cod_serie,ref_cod_curso,matricula_reclassificacao from pmieducar.matricula where cod_matricula in (\n\t\t\t\t\t\t\tSELECT MAX(cod_matricula) as max_matricula\n\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2))"; $db->Consulta($sql); while ($db->ProximoRegistro()) { list($cod_matricula, $aprovado, $ref_cod_escola, $ref_cod_serie, $ref_cod_curso, $matricula_reclassificacao) = $db->Tupla(); } $obj_ano_letivo_modulo = new clsPmieducarAnoLetivoModulo(); $lst_ano_letivo_modulo = $obj_ano_letivo_modulo->lista(2007, $ref_cod_escola); $qtd_modulos = count($lst_ano_letivo_modulo); $obj_curso = new clsPmieducarCurso($ref_cod_curso); $det_curso = $obj_curso->detalhe(); $falta_ch_globalizada = $det_curso["falta_ch_globalizada"]; $objTipoAvaliacao = new clsPmieducarTipoAvaliacao($det_curso["ref_cod_tipo_avaliacao"]); $detalhe_tipo_avaliacao = $objTipoAvaliacao->detalhe(); $conceitual = $detalhe_tipo_avaliacao["conceitual"]; // if () { if ($ref_cod_curso != 49 && $ref_cod_curso != 20 && $ref_cod_curso != 19 && $qtd_modulos == 4 && !$conceitual && is_array($det_curso) && is_numeric($ref_cod_serie) && is_numeric($cod_matricula) && is_numeric($aprovado) && is_numeric($ref_cod_escola) && $det_curso["padrao_ano_escolar"] == 1) { if ($ref_cod_serie != 15) { if ($det_curso["padrao_ano_escolar"] == 1) { if ($existe_historico_sequencial) { // $obj_historico = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $existe_historico_sequencial, $pessoa_logada); // if (!$obj_historico->excluir()) { // die("não exclui"); // } } $obj_escola2 = new clsPmieducarEscola($ref_cod_escola); $det_escola2 = $obj_escola2->detalhe(); $ref_cod_instituicao = $det_escola2["ref_cod_instituicao"]; $notas_faltas_disciplina = array(); $obj_escola_serie_disciplina = new clsPmieducarEscolaSerieDisciplina(); $lst_escola_serie_disciplina = $obj_escola_serie_disciplina->lista($ref_cod_serie, $ref_cod_escola, null, 1); foreach ($lst_escola_serie_disciplina as $escola_serie_disciplina) { $obj_dispensa = new clsPmieducarDispensaDisciplina($cod_matricula, $ref_cod_serie, $ref_cod_escola, $escola_serie_disciplina["ref_cod_disciplina"], null, null, null, null, null, 1); $det_disciplina = $obj_dispensa->detalhe(); if (!is_array($det_disciplina)) { $obj_nota = new clsPmieducarNotaAluno(); $obj_nota->setOrderby("modulo"); $lst_nota = $obj_nota->lista(null, null, null, $ref_cod_serie, $ref_cod_escola, $escola_serie_disciplina["ref_cod_disciplina"], $cod_matricula, null, null, null, null, null, null, 1); if (is_array($lst_nota)) { $soma_notas = 0; $possui_exame = false; foreach ($lst_nota as $key => $nota) { $obj_tipo_av_val = new clsPmieducarTipoAvaliacaoValores($nota["ref_ref_cod_tipo_avaliacao"], $nota["ref_sequencial"], null, null, null, null); $det_tipo_av_val = $obj_tipo_av_val->detalhe(); if ($ref_cod_serie == 5) { $soma_notas = $det_tipo_av_val["valor"]; } else { if ($key < $qtd_modulos) { $soma_notas += $det_tipo_av_val["valor"]; } else { $possui_exame = true; $soma_notas += $nota["nota"] * 2; } } } if ($ref_cod_serie == 5) { $media = $soma_notas; } else { if ($possui_exame) { $media = $soma_notas / 6; } else { $media = $soma_notas / 4; } } $obj_media = new clsPmieducarTipoAvaliacaoValores(); $det_media = $obj_media->lista($det_curso["ref_cod_tipo_avaliacao"], $det_curso["ref_sequencial"], null, null, $media, $media); if (is_array($det_media)) { $det_media = array_shift($det_media); $media = $det_media["valor"]; $media = sprintf("%01.1f", $media); $media = str_replace(".", ",", $media); } $obj_disciplina = new clsPmieducarDisciplina($escola_serie_disciplina["ref_cod_disciplina"]); $det_disciplina = $obj_disciplina->detalhe(); if ($falta_ch_globalizada) { $notas_faltas_disciplina[$escola_serie_disciplina["ref_cod_disciplina"]] = array("media" => $media, "falta" => null, "nm_disciplina" => $det_disciplina["nm_disciplina"]); } else { //pegar as faltas $sql = "select sum(faltas) from pmieducar.falta_aluno where\n\t\t\t\t\t\t\t\t\t\t\t\t\tref_cod_matricula={$cod_matricula} and ref_cod_disciplina={$escola_serie_disciplina["ref_cod_disciplina"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\tand ativo=1"; $total_faltas = $db->CampoUnico($sql); $notas_faltas_disciplina[$escola_serie_disciplina["ref_cod_disciplina"]] = array("media" => $media, "falta" => $total_faltas, "nm_disciplina" => $det_disciplina["nm_disciplina"]); } } } } if (is_array($notas_faltas_disciplina)) { $extra_curricular = 0; if ($falta_ch_globalizada) { $sql = "SELECT SUM(falta) FROM pmieducar.faltas WHERE ref_cod_matricula = {$cod_matricula}"; $db5 = new clsBanco(); $total_faltas = $db5->CampoUnico($sql); } else { $total_faltas = null; } $obj_serie = new clsPmieducarSerie($ref_cod_serie); $det_serie = $obj_serie->detalhe(); $carga_horaria_serie = $det_serie["carga_horaria"]; $obj_escola = new clsPmieducarEscola($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($ref_cod_escola); $det_escola = $obj_escola->detalhe(); $nm_escola = $det_escola["nm_escola"]; $cidade = $det_escola["municipio"]; } } //falta_ch_globalizada if ($det_curso["falta_ch_globalizada"] == 1) { $dias_letivos = $this->buscaDiasLetivos($ref_cod_escola); } else { $dias_letivos = null; } if ($matricula_reclassificacao == 1) { $descricao_reclassificacao = $this->verificaReclassificacao(); } else { $descricao_reclassificacao = null; } $obj_historico = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, null, null, $pessoa_logada, $det_serie["nm_serie"], 2007, $carga_horaria_serie, $dias_letivos, $nm_escola, $cidade, $uf, $descricao_reclassificacao, $aprovado, null, null, 1, $total_faltas, $ref_cod_instituicao, 0, $extra_curricular, $cod_matricula); $cadastrou2 = $obj_historico->cadastra(); if ($cadastrou2) { $obj_historico = new clsPmieducarHistoricoEscolar(); $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno); foreach ($notas_faltas_disciplina as $nota_falta) { $obj_historico_disciplina = new clsPmieducarHistoricoDisciplinas(null, $this->ref_cod_aluno, $sequencial, $nota_falta["nm_disciplina"], $nota_falta["media"], $nota_falta["falta"]); $cadastrou3 = $obj_historico_disciplina->cadastra(); if (!$cadastrou3) { die("<br><br><br><br>nao cadastrou disciplina"); } } } else { die("<br><br><br><br>nao cadastrou historico"); } } } } } elseif ($ref_cod_curso != 49 && $ref_cod_curso != 20 && $ref_cod_curso != 19) { //fazer historico ejaaaa //pegar matriculas do eja do aluno $obj_matriculas = new clsPmieducarMatricula(); $obj_matriculas->setOrderby("cod_matricula"); $lst_matriculas = $obj_matriculas->lista(null, null, null, null, null, null, $this->ref_cod_aluno, array(1, 2), null, null, null, null, 1, 2007); if (is_array($lst_matriculas) && count($lst_matriculas)) { foreach ($lst_matriculas as $matricula) { $liberar_historico = false; $db = new clsBanco(); //fazer algo para ver se o he nao esta atualizado $sql = "SELECT sequencial FROM pmieducar.historico_escolar WHERE ref_cod_aluno = {$matricula["ref_cod_aluno"]}\n\t\t\t\t\t\t\t\t\tAND ref_cod_matricula = {$matricula["cod_matricula"]} AND ano = 2007 AND ativo = 1\n\t\t\t\t\t\t\t\t\tAND (to_char(data_cadastro,'DD/MM/YYYY') < '20/02/2008'\n\t\t\t\t\t\t\t\t\t\tOR to_char(data_cadastro,'YYYY')::int = 2007) AND data_exclusao is null"; $existe_he_antigo = $db->CampoUnico($sql); if (is_numeric($existe_he_antigo)) { $liberar_historico = true; } else { //verificar se possui historico $sql = "SELECT 1 FROM pmieducar.historico_escolar WHERE ref_cod_aluno = {$matricula["ref_cod_aluno"]}\n\t\t\t\t\t\t\t\t\t\tAND ref_cod_matricula = {$matricula["cod_matricula"]} AND ano = 2007 AND ativo = 1"; $existe_he = $db->CampoUnico($sql); if (!is_numeric($existe_he)) { $liberar_historico = true; } } if ($liberar_historico) { if (is_numeric($existe_he_antigo)) { $obj_historico = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $existe_he_antigo, $pessoa_logada); // if (!$obj_historico->excluir()) { // die("nao exclui"); // } } //fazer novo he //destruir he antigo $obj_curso = new clsPmieducarCurso($matricula["ref_cod_curso"]); $det_curso = $obj_curso->detalhe(); $falta_ch_globalizada = $det_curso["falta_ch_globalizada"]; $objTipoAvaliacao = new clsPmieducarTipoAvaliacao($det_curso["ref_cod_tipo_avaliacao"]); $detalhe_tipo_avaliacao = $objTipoAvaliacao->detalhe(); $conceitual = $detalhe_tipo_avaliacao["conceitual"]; $notas_faltas_disciplina = array(); $obj_escola_serie_disciplina = new clsPmieducarEscolaSerieDisciplina(); $lst_escola_serie_disciplina = $obj_escola_serie_disciplina->lista($matricula["ref_ref_cod_serie"], $matricula["ref_ref_cod_escola"], null, 1); foreach ($lst_escola_serie_disciplina as $escola_serie_disciplina) { $obj_dispensa = new clsPmieducarDispensaDisciplina($matricula["cod_matricula"], $matricula["ref_ref_cod_serie"], $matricula["ref_cod_escola"], $escola_serie_disciplina["ref_cod_disciplina"], null, null, null, null, null, 1); $det_disciplina = $obj_dispensa->detalhe(); if (!is_array($det_disciplina)) { $obj_nota = new clsPmieducarNotaAluno(); $obj_nota->setOrderby("modulo"); $lst_nota = $obj_nota->lista(null, null, null, $matricula["ref_ref_cod_serie"], $matricula["ref_cod_escola"], $escola_serie_disciplina["ref_cod_disciplina"], $matricula["cod_matricula"], null, null, null, null, null, null, 1); if (is_array($lst_nota) && count($lst_nota)) { $nota_matricula = array_shift($lst_nota); $obj_tipo_av_val = new clsPmieducarTipoAvaliacaoValores($nota_matricula["ref_ref_cod_tipo_avaliacao"], $nota_matricula["ref_sequencial"]); $det_tipo_av_val = $obj_tipo_av_val->detalhe(); if ($falta_ch_globalizada) { $faltas = null; } else { $sql = "select sum(faltas) from pmieducar.falta_aluno where\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref_cod_matricula={$matricula["cod_matricula"]} and ref_cod_disciplina={$escola_serie_disciplina["ref_cod_disciplina"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tand ativo=1"; $faltas = $db->CampoUnico($sql); } $obj_disciplina = new clsPmieducarDisciplina($escola_serie_disciplina["ref_cod_disciplina"]); $det_disciplina = $obj_disciplina->detalhe(); $notas_faltas_disciplina[$escola_serie_disciplina["ref_cod_disciplina"]] = array("media" => $det_tipo_av_val["nome"], "falta" => $faltas, "nm_disciplina" => $det_disciplina["nm_disciplina"]); } } } if (is_array($notas_faltas_disciplina)) { $obj_escola2 = new clsPmieducarEscola($matricula["ref_ref_cod_escola"]); $det_escola2 = $obj_escola2->detalhe(); $ref_cod_instituicao = $det_escola2["ref_cod_instituicao"]; $extra_curricular = 1; if ($falta_ch_globalizada) { $sql = "SELECT SUM(falta) FROM pmieducar.faltas WHERE ref_cod_matricula = {$matricula["cod_matricula"]}"; $db5 = new clsBanco(); $total_faltas = $db5->CampoUnico($sql); } else { $total_faltas = null; } $obj_serie = new clsPmieducarSerie($matricula["ref_ref_cod_serie"]); $det_serie = $obj_serie->detalhe(); $carga_horaria_serie = $det_serie["carga_horaria"]; $obj_escola = new clsPmieducarEscola($matricula["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($matricula["ref_ref_cod_escola"]); $det_escola = $obj_escola->detalhe(); $nm_escola = $det_escola["nm_escola"]; $cidade = $det_escola["municipio"]; } } //falta_ch_globalizada if ($det_curso["falta_ch_globalizada"] == 1) { // $dias_letivos = $this->buscaDiasLetivos($matricula["ref_ref_cod_escola"]); $dias_letivos = null; } else { $dias_letivos = null; } if ($matricula["matricula_reclassificacao"] == 1) { $descricao_reclassificacao = $this->verificaReclassificacao($matricula["cod_matricula"]); } else { $descricao_reclassificacao = null; } $obj_historico = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, null, null, $pessoa_logada, $det_serie["nm_serie"], 2007, $carga_horaria_serie, $dias_letivos, $nm_escola, $cidade, $uf, $descricao_reclassificacao, $matricula["aprovado"], null, null, 1, $total_faltas, $ref_cod_instituicao, 0, $extra_curricular, $matricula["cod_matricula"]); $cadastrou2 = $obj_historico->cadastra(); if ($cadastrou2) { $obj_historico = new clsPmieducarHistoricoEscolar(); $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno); foreach ($notas_faltas_disciplina as $nota_falta) { $obj_historico_disciplina = new clsPmieducarHistoricoDisciplinas(null, $this->ref_cod_aluno, $sequencial, $nota_falta["nm_disciplina"], $nota_falta["media"], $nota_falta["falta"]); $cadastrou3 = $obj_historico_disciplina->cadastra(); if (!$cadastrou3) { die("<br><br><br><br>nao cadastrou disciplina"); } } } else { die("<br><br><br><br>nao cadastrou historico"); } } } } } } } elseif ($ref_cod_curso != 49 && $ref_cod_curso != 20 && $ref_cod_curso != 19) { $sql = "SELECT ref_ref_cod_escola,ref_cod_curso from pmieducar.matricula where cod_matricula in (\n\t\t\t\t\t\t\tSELECT MAX(cod_matricula) as max_matricula\n\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2))"; $db = new clsBanco(); $db->Consulta($sql); while ($db->ProximoRegistro()) { list($ref_cod_escola, $ref_cod_curso) = $db->Tupla(); } $obj_ano_letivo_modulo = new clsPmieducarAnoLetivoModulo(); $lst_ano_letivo_modulo = $obj_ano_letivo_modulo->lista(2007, $ref_cod_escola); $qtd_modulos = count($lst_ano_letivo_modulo); $obj_curso = new clsPmieducarCurso($ref_cod_curso); $det_curso = $obj_curso->detalhe(); $falta_ch_globalizada = $det_curso["falta_ch_globalizada"]; $objTipoAvaliacao = new clsPmieducarTipoAvaliacao($det_curso["ref_cod_tipo_avaliacao"]); $detalhe_tipo_avaliacao = $objTipoAvaliacao->detalhe(); $conceitual = $detalhe_tipo_avaliacao["conceitual"]; if ($qtd_modulos == 4 && !$conceitual) { $sql_eh_falta_globalizada = "SELECT 1 FROM pmieducar.historico_escolar WHERE ref_cod_aluno = {$this->ref_cod_aluno} AND sequencial = {$existe_historico}\n\t\t\t\t\t\t\t\t\t\t\t AND faltas_globalizadas IS NOT NULL AND dias_letivos IS NULL"; $db = new clsBanco(); $busca_dias_letivos = $db->CampoUnico($sql_eh_falta_globalizada); if (is_numeric($busca_dias_letivos)) { $dias_letivos = $this->buscaDiasLetivos($ref_cod_escola); if ($dias_letivos) { $obj_he = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $existe_historico, $pessoa_logada, null, null, null, null, $dias_letivos); if (!$obj_he->edita()) { die("nao editou dias letivos"); } } } $sql = "SELECT MAX(cod_matricula),matricula_reclassificacao\n\t\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2)\n\t\t\t\t\t\t\t\t\t\t\tgroup by matricula_reclassificacao"; $db = new clsBanco(); $db->Consulta($sql); while ($db->ProximoRegistro()) { list($cod_matricula, $matricula_reclassificacao) = $db->Tupla(); } if ($matricula_reclassificacao == 1) { $descricao_reclassificacao = $this->verificaReclassificacao(); if ($descricao_reclassificacao) { $obj_he = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $existe_historico, $pessoa_logada, null, null, null, null, null, null, null, null, $descricao_reclassificacao); if (!$obj_he->edita()) { die("nao editou reclassificacao"); } } } } } } } }
function renderHTML() { if ($_POST) { foreach ($_POST as $key => $value) { $this->{$key} = $value; } } if ($this->ref_ref_cod_serie) { $this->ref_cod_serie = $this->ref_ref_cod_serie; } $fonte = 'arial'; $corTexto = '#000000'; if ($this->ref_cod_escola) { $obj_escola = new clsPmieducarEscola($this->ref_cod_escola); $det_escola = $obj_escola->detalhe(); $this->nm_escola = $det_escola['nome']; $obj_instituicao = new clsPmieducarInstituicao($det_escola['ref_cod_instituicao']); $det_instituicao = $obj_instituicao->detalhe(); $this->nm_instituicao = $det_instituicao['nm_instituicao']; } if (is_numeric($this->ref_cod_serie)) { $obj_serie = new clsPmieducarSerie($this->ref_cod_serie); $det_serie = $obj_serie->detalhe(); $this->nm_serie_ = $det_serie["nm_serie"]; } if (is_numeric($this->ref_cod_turma)) { $obj_turma = new clsPmieducarTurma($this->ref_cod_turma); $det_turma = $obj_turma->detalhe(); $this->nm_turma_ = $det_turma["nm_turma"]; } $this->pdf = new clsPDF("Registro de Matrículas - {$this->ano}", "Registro de Matrículas", "A4", "", false, false); $this->pdf->largura = 842.0; $this->pdf->altura = 595.0; $this->page_y = 125; if ($this->is_padrao || $this->ano == 2007) { $this->semestre = null; } $obj_matricula = new clsPmieducarMatricula(); $obj_matricula->setOrderby("ref_ref_cod_escola, ref_ref_cod_serie, ref_cod_curso"); $lista_matricula = $obj_matricula->lista(null, null, $this->ref_cod_escola, $this->ref_cod_serie, null, null, null, array(1, 2, 3), null, null, null, null, 1, $this->ano, $this->ref_cod_curso, $this->ref_cod_instituicao, null, null, null, null, null, null, null, null, null, null, null, null, null, null, $this->semestre, $this->ref_cod_turma); if ($lista_matricula) { $obj_series = new clsPmieducarSerie(); $lst_series = $obj_series->lista(null, null, null, $this->ref_cod_curso, null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao, null, null, null, $this->ref_cod_escola); if ($lst_series) { $lst_series2 = array(); foreach ($lst_series as $serie) { $lst_series2[$serie['cod_serie']] = $serie; } $lst_series = $lst_series2; unset($lst_series2); } $obj_turmas = new clsPmieducarTurma(); $lst_turmas = $obj_turmas->lista(null, null, null, $this->ref_cod_serie, $this->ref_cod_escola, null, null, 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); if ($lst_turmas) { $lst_turmas2 = array(); foreach ($lst_turmas as $turma) { $lst_turmas2[$turma['cod_turma']] = $turma; } $lst_turmas = $lst_turmas2; unset($lst_turmas2); } $obj_cursos = new clsPmieducarCurso(); $lst_cursos = $obj_cursos->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $this->ref_cod_instituicao); if ($lst_cursos) { $lst_curso2 = array(); foreach ($lst_cursos as $curso) { $lst_cursos2[$curso['cod_curso']] = $curso; } $lst_cursos = $lst_cursos2; unset($lst_curso2); } $altura_caixa = 45; //$curso = $lst_cursos[$lista_matricula[0]['cod_curso']]; //$this->nm_curso = $curso['nm_curso']; $ultimo_cod = $lista_matricula[0]['cod_curso']; $this->pdf->OpenPage(); $this->addCabecalho(); $this->addTitulo(); foreach ($lista_matricula as $matricula) { $this->nm_curso = $lst_cursos[$matricula['ref_cod_curso']]['nm_curso']; if ($this->page_y > 530 || $ultimo_cod != $matricula['ref_cod_curso']) { $this->pdf->ClosePage(); $this->pdf->OpenPage(); $this->page_y = 125; $this->addCabecalho(); $this->addTitulo(); } $obj_pessoa = new clsPessoaFisica($matricula['ref_idpes']); $det_pessoa = $obj_pessoa->detalhe(); $nacionalidade = array('NULL' => "Selecione", '1' => "Brasileiro", '2' => "Naturalizado Brasileiro", '3' => "Estrangeiro"); $nacionalidade = $nacionalidade[$det_pessoa['nacionalidade']]; $det_municipio = $det_pessoa['idmun_nascimento']->detalhe(); $data_nasc = explode("-", $det_pessoa['data_nasc']); $idade = calculoIdade($data_nasc[2], $data_nasc[1], $data_nasc[0]); $data_nasc = implode("/", array($data_nasc[2], $data_nasc[1], $data_nasc[0])); $y_escrita = $this->page_y + $altura_caixa / 4; $obj_aluno = new clsPmieducarAluno($matricula['ref_cod_aluno']); $det_aluno = $obj_aluno->detalhe(); $obj_fisica = new clsFisica($det_aluno["ref_idpes"]); $det_fisica = $obj_fisica->detalhe(); if (!$det_aluno['nm_mae']) { if ($det_fisica["idpes_mae"]) { $obj_ref_idpes = new clsPessoa_($det_fisica["idpes_mae"]); $det_ref_idpes = $obj_ref_idpes->detalhe(); $det_aluno['nm_mae'] = $det_ref_idpes['nome']; } elseif ($det_fisica['nome_mae']) { $det_aluno['nm_mae'] = $det_fisica['nome_mae']; } } if (!$det_aluno['nm_pai']) { if ($det_fisica["idpes_pai"]) { $obj_ref_idpes = new clsPessoa_($det_fisica["idpes_pai"]); $det_ref_idpes = $obj_ref_idpes->detalhe(); $det_aluno['nm_pai'] = $det_ref_idpes["nome"]; } elseif ($det_fisica['nome_pai']) { $det_aluno['nome_pai'] = $det_fisica['nome_pai']; } } if ($det_aluno['tipo_responsavel'] == 'r' || $det_aluno['tipo_responsavel'] == '') { if ($det_fisica["idpes_responsavel"]) { $obj_ref_idpes = new clsPessoa_($det_fisica["idpes_responsavel"]); $det_ref_idpes = $obj_ref_idpes->detalhe(); if ($det_aluno['nome_pai']) { if ($det_aluno['nm_responsavel'] != $det_aluno['nome_pai']) { $det_aluno['nm_responsavel'] = $det_ref_idpes["nome"]; } } elseif ($det_aluno['nome_mae']) { if ($det_aluno['nm_responsavel'] != $det_aluno['nome_mae']) { $det_aluno['nm_responsavel'] = $det_ref_idpes["nome"]; } } else { $det_aluno['nm_responsavel'] = $det_ref_idpes["nome"]; } } elseif ($det_fisica['nome_responsavel']) { if ($det_aluno['nome_pai']) { if ($det_fisica['nome_responsavel'] != $det_aluno['nome_pai']) { $det_aluno['nm_responsavel'] = $det_fisica['nome_responsavel']; } } elseif ($det_aluno['nome_mae']) { if ($det_fisica['nome_responsavel'] != $det_aluno['nome_mae']) { $det_aluno['nm_responsavel'] = $det_fisica['nome_responsavel']; } } else { $det_aluno['nm_responsavel'] = $det_fisica['nome_responsavel']; } } } if ($det_aluno['nm_pai']) { $det_aluno['nm_pai'] = "{$det_aluno['nm_pai']}\n"; } if ($det_aluno['nm_mae']) { $det_aluno['nm_mae'] = "{$det_aluno['nm_mae']}\n"; } $filiacao = "{$det_aluno['nm_pai']}{$det_aluno['nm_mae']}{$det_aluno['nm_responsavel']}"; $obj_matricula_turma = new clsPmieducarMatriculaTurma(); $lst_matricula_turma = $obj_matricula_turma->lista($matricula['cod_matricula'], null, null, null, null, null, null, null, 1, $matricula['ref_ref_cod_serie'], $matricula['ref_cod_curso'], $matricula['ref_ref_cod_escola'], null, $matricula['ref_cod_aluno'], null, null, null); if (is_array($lst_matricula_turma)) { $lst_matricula_turma = array_shift($lst_matricula_turma); $hora_inicial = $lst_turmas[$lst_matricula_turma['ref_cod_turma']]['hora_inicial']; $hora_final = $lst_turmas[$lst_matricula_turma['ref_cod_turma']]['hora_final']; if ($hora_inicial >= '07:00' and $hora_inicial <= '12:00') { $turno = 'Matutino'; } else { if ($hora_inicial > '12:00' and $hora_inicial <= '18:00') { $turno = 'Vespertino'; } else { $turno = 'Noturno'; } } } else { $turno = 'N/A'; } $obj_endereco = new clsPessoaEndereco($det_aluno["ref_idpes"]); if ($obj_endereco_det = $obj_endereco->detalhe()) { $id_cep = $obj_endereco_det['cep']->cep; $id_bairro = $obj_endereco_det['idbai']->detalhe(); $id_logradouro = $obj_endereco_det['idlog']->detalhe(); $id_mun = $id_bairro['idmun']->detalhe(); $id_logradouro = $id_logradouro['idlog']->detalhe(); $idtlog = $id_logradouro[1]; $numero = $obj_endereco_det['numero']; $letra = $obj_endereco_det['letra']; $complemento = $obj_endereco_det['complemento']; $andar = $obj_endereco_det['andar']; $apto = $obj_endereco_det['apartamento']; $bloco = $obj_endereco_det['bloco']; $cidade = $id_mun['nome']; $bairro = $id_bairro['nome']; $logradouro = $id_logradouro['nome']; //$endereco_uf = $obj_endereco_det['sigla_uf']; $endereco_uf = $id_bairro['idmun']->sigla_uf; $cep = int2CEP($id_cep); } else { $obj_endereco = new clsEnderecoExterno($det_aluno["ref_idpes"]); if ($obj_endereco_det = $obj_endereco->detalhe()) { $id_cep = $obj_endereco_det['cep']; $cidade = $obj_endereco_det['cidade']; $bairro = $obj_endereco_det['bairro']; $logradouro = $obj_endereco_det['logradouro']; $numero = $obj_endereco_det['numero']; $letra = $obj_endereco_det['letra']; $complemento = $obj_endereco_det['complemento']; $andar = $obj_endereco_det['andar']; $apto = $obj_endereco_det['apartamento']; $bloco = $obj_endereco_det['bloco']; $idtlog = $obj_endereco_det['idtlog']->idtlog; $endereco_uf = $obj_endereco_det['sigla_uf']->sigla_uf; $cep = int2CEP($id_cep); } } $idtlog = ucfirst(strtolower($idtlog)); $logradouro = minimiza_capitaliza($logradouro); $cidade = minimiza_capitaliza($cidade); $endereco = "{$idtlog} {$logradouro},{$numero} {$letra} {$complemento} {$apto} {$bloco} {$andar}\n{$cep} {$bairro}, {$cidade} {$endereco_uf}"; $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_caixa); $this->pdf->quadrado_relativo(30, $this->page_y, 40, $altura_caixa); $this->pdf->quadrado_relativo(70, $this->page_y, 50, $altura_caixa); $this->pdf->quadrado_relativo(115, $this->page_y, 175, $altura_caixa); $this->pdf->quadrado_relativo(285, $this->page_y, 55, $altura_caixa); $this->pdf->quadrado_relativo(335, $this->page_y, 190, $altura_caixa); $this->pdf->quadrado_relativo(520, $this->page_y, 160, $altura_caixa); $this->pdf->quadrado_relativo(680, $this->page_y, 80, $altura_caixa); $this->pdf->escreve_relativo("{$matricula['ref_cod_aluno']}", 30, $y_escrita + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center'); $this->pdf->escreve_relativo("{$matricula['cod_matricula']}", 70, $y_escrita + 5, 50, $altura_caixa, $fonte, 8, $corTexto, 'center'); $this->pdf->escreve_relativo("{$matricula['nome']}\n{$endereco}", 115, $y_escrita - 3, 175, $altura_caixa, $fonte, 8, $corTexto, 'center'); $this->pdf->escreve_relativo("{$data_nasc}\n{$idade} anos", 285, $y_escrita + 5, 50, $altura_caixa, $fonte, 8, $corTexto, 'center'); $this->pdf->escreve_relativo("{$filiacao}", 335, $y_escrita + 5, 175, $altura_caixa, $fonte, 8, $corTexto, 'center'); if ($this->campo_assinatura) { $this->pdf->escreve_relativo(" ", 520, $y_escrita + 2, 160, $altura_caixa, $fonte, 8, $corTexto, 'center'); } else { $this->pdf->escreve_relativo("{$nacionalidade}\n{$det_municipio['nome']}", 520, $y_escrita + 2, 160, $altura_caixa, $fonte, 8, $corTexto, 'center'); } $obj_matricula_turma2 = new clsPmieducarMatriculaTurma(); $det_matricula_turma2 = $obj_matricula_turma2->lista($matricula["cod_matricula"], null, null, null, null, null, null, null, 1); if (is_array($det_matricula_turma2)) { $det_matricula_turma2 = array_shift($det_matricula_turma2); $obj_turma = new clsPmieducarTurma($det_matricula_turma2["ref_cod_turma"]); $det_turma = $obj_turma->detalhe(); } $this->pdf->escreve_relativo("{$lst_series[$matricula['ref_ref_cod_serie']]['nm_serie']}\n{$det_turma["nm_turma"]}", 680, $y_escrita + 5, 80, $altura_caixa, $fonte, 8, $corTexto, 'center'); $this->pdf->escreve_relativo("{$turno}", 760, $y_escrita + 5, 50, $altura_caixa, $fonte, 8, $corTexto, 'center'); $this->page_y += $altura_caixa; $ultimo_cod = $matricula['ref_cod_curso']; } $this->pdf->ClosePage(); } else { echo '<script> alert("A turma não possui matrículas"); window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1)); </script>'; return true; return; } $this->pdf->CloseFile(); $this->get_link = $this->pdf->GetLink(); echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>"; echo "<html><center>Se o download não iniciar automaticamente <br /><a target='_blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n\t\t\t</span>\n\t\t\t</center>"; }
function Gerar() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; session_write_close(); $this->titulo = "Matrícula - Listagem"; foreach ($_GET as $var => $val) { // passa todos os valores obtidos no GET para atributos do objeto $this->{$var} = $val === "" ? null : $val; } if (!$this->ref_cod_aluno) { header("location: educar_aluno_lst.php"); die; } $this->campoOculto("ref_cod_aluno", $this->ref_cod_aluno); $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet"); $lista_busca = array("Ano", "Matrícula", "Situação", "Turma", "Série", "Curso"); $obj_permissoes = new clsPermissoes(); $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada); if ($nivel_usuario == 1) { $lista_busca[] = "Escola"; $lista_busca[] = "Instituição"; } else { if ($nivel_usuario == 2) { $lista_busca[] = "Escola"; } } $this->addCabecalhos($lista_busca); $get_escola = true; $get_curso = true; $get_escola_curso_serie = true; include "include/pmieducar/educar_campo_lista.php"; if ($this->ref_cod_escola) { $this->ref_ref_cod_escola = $this->ref_cod_escola; } // Paginador $this->limite = 20; $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0; $obj_matricula = new clsPmieducarMatricula(); $obj_matricula->setOrderby('ano DESC, ref_ref_cod_serie DESC, aprovado, cod_matricula'); $obj_matricula->setLimite($this->limite, $this->offset); $lista = $obj_matricula->lista($this->cod_matricula, null, $this->ref_ref_cod_escola, $this->ref_ref_cod_serie, null, null, $this->ref_cod_aluno, null, null, null, null, null, 1, null, $this->ref_cod_curso, $this->ref_cod_instituicao, 1); $total = $obj_matricula->_total; // monta a lista if (is_array($lista) && count($lista)) { foreach ($lista as $registro) { 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("clsPmieducarSerie")) { $obj_serie = new clsPmieducarSerie($registro["ref_ref_cod_serie"]); $det_serie = $obj_serie->detalhe(); $registro["ref_ref_cod_serie"] = $det_serie["nm_serie"]; } else { $registro["ref_ref_cod_serie"] = "Erro na geracao"; echo "<!--\nErro\nClasse nao existente: clsPmieducarSerie\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")) { $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_ref_cod_escola"] = "Erro na geração"; echo "<!--\nErro\nClasse não existente: clsPmieducarEscola\n-->"; } $enturmacoes = new clsPmieducarMatriculaTurma(); $enturmacoes = $enturmacoes->lista($registro['cod_matricula'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); $nomesTurmas = array(); foreach ($enturmacoes as $enturmacao) { $turma = new clsPmieducarTurma($enturmacao['ref_cod_turma']); $turma = $turma->detalhe(); $nomesTurmas[] = $turma['nm_turma']; } $nomesTurmas = implode('<br />', $nomesTurmas); $situacao = $registro['aprovado']; if ($situacao == 1) { $situacao = 'Aprovado'; } elseif ($situacao == 2) { $situacao = 'Reprovado'; } elseif ($situacao == 3) { $situacao = 'Em Andamento'; } elseif ($situacao == 4) { $situacao = 'Transferido'; } elseif ($situacao == 5) { $situacao = 'Reclassificado'; } elseif ($situacao == 6) { $situacao = 'Abandono'; } $lista_busca = array(); $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ano"]}</a>"; $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["cod_matricula"]}</a>"; $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$situacao}</a>"; if ($nomesTurmas) { $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$nomesTurmas}</a>"; } else { $lista_busca[] = ""; } if ($registro["ref_ref_cod_serie"]) { $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_ref_cod_serie"]}</a>"; } else { $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">-</a>"; } /*$lista_busca = array( "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_ref_cod_serie"]}</a>", "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_cod_curso"]}</a>" );*/ $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_cod_curso"]}</a>"; if ($nivel_usuario == 1) { if ($registro["ref_ref_cod_escola"]) { $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_ref_cod_escola"]}</a>"; } else { $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">-</a>"; } $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_cod_instituicao"]}</a>"; } else { if ($nivel_usuario == 2) { if ($registro["ref_ref_cod_escola"]) { $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_ref_cod_escola"]}</a>"; } else { $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">-</a>"; } } } $this->addLinhas($lista_busca); } } else { $this->addLinhas(array('Aluno sem matrículas em andamento na sua escola.')); } $this->addPaginador2("educar_matricula_lst.php", $total, $_GET, $this->nome, $this->limite); if ($obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7)) { $this->acao = "go(\"educar_matricula_cad.php?ref_cod_aluno={$this->ref_cod_aluno}\")"; $this->nome_acao = "Nova Matrícula"; } $this->array_botao[] = 'Voltar'; $this->array_botao_url[] = "educar_aluno_det.php?cod_aluno={$this->ref_cod_aluno}"; $this->largura = "100%"; }
function montaTabelaMatricula() { $sql = sprintf('SELECT cod_matricula FROM pmieducar.matricula WHERE ref_cod_aluno = %d AND ativo = 1 ORDER BY cod_matricula DESC', $this->cod_aluno); $db = new clsBanco(); $db->Consulta($sql); if ($db->Num_Linhas()) { while ($db->ProximoRegistro()) { list($ref_cod_matricula) = $db->Tupla(); if (is_numeric($ref_cod_matricula)) { $obj_matricula = new clsPmieducarMatricula(); $obj_matricula->setOrderby('ano ASC'); $lst_matricula = $obj_matricula->lista($ref_cod_matricula); if ($lst_matricula) { $registro = array_shift($lst_matricula); } $table .= sprintf('<table class="tableDetalhe"> <tr class="formdktd"> <td colspan="2"><strong>Matrícula - Ano %d</strong></td> </tr>', $registro['ano']); $obj_ref_cod_curso = new clsPmieducarCurso($registro['ref_cod_curso']); $det_ref_cod_curso = $obj_ref_cod_curso->detalhe(); $nm_curso = $det_ref_cod_curso['nm_curso']; $obj_serie = new clsPmieducarSerie($registro['ref_ref_cod_serie']); $det_serie = $obj_serie->detalhe(); $nm_serie = $det_serie['nm_serie']; $obj_cod_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']); $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe(); $nm_instituicao = $obj_cod_instituicao_det['nm_instituicao']; $obj_ref_cod_escola = new clsPmieducarEscola($registro['ref_ref_cod_escola']); $det_ref_cod_escola = $obj_ref_cod_escola->detalhe(); $nm_escola = $det_ref_cod_escola['nome']; $obj_mat_turma = new clsPmieducarMatriculaTurma(); $det_mat_turma = $obj_mat_turma->lista($ref_cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); if ($det_mat_turma) { $det_mat_turma = array_shift($det_mat_turma); $obj_turma = new clsPmieducarTurma($det_mat_turma['ref_cod_turma']); $det_turma = $obj_turma->detalhe(); $nm_turma = $det_turma['nm_turma']; } else { $nm_turma = ''; } $transferencias = array(); if ($registro['aprovado'] == 1) { $aprovado = 'Aprovado'; } elseif ($registro['aprovado'] == 2) { $aprovado = 'Reprovado'; } elseif ($registro['aprovado'] == 3) { $aprovado = 'Em Andamento'; } elseif ($registro['aprovado'] == 4) { if (is_numeric($registro['cod_matricula'])) { $aprovado = 'Transferido'; $sql = sprintf('SELECT ref_cod_matricula_entrada, ref_cod_matricula_saida, to_char(data_transferencia, \'DD/MM/YYYY\') AS dt_transferencia FROM pmieducar.transferencia_solicitacao WHERE (ref_cod_matricula_entrada = %d OR ref_cod_matricula_saida = %d) AND ativo = 1', $registro['cod_matricula'], $registro['cod_matricula']); $db2 = new clsBanco(); $db2->Consulta($sql); if ($db2->Num_Linhas()) { while ($db2->ProximoRegistro()) { list($ref_cod_matricula_entrada, $ref_cod_matricula_saida, $dt_transferencia) = $db2->Tupla(); if ($ref_cod_matricula_saida == $registro['cod_matricula']) { $transferencias[] = array('data_trans' => $dt_transferencia, 'desc' => 'Data Transferência Saída'); } elseif ($ref_cod_matricula_entrada == $registro['cod_matricula']) { $transferencias[] = array('data_trans' => $dt_transferencia, 'desc' => 'Data Transferência Admissão'); } } } } } elseif ($registro['aprovado'] == 5) { $aprovado = 'Reclassificado'; } elseif ($registro['aprovado'] == 6) { $aprovado = 'Abandono'; } elseif ($registro['aprovado'] == 7) { $aprovado = 'Em Exame'; } $formando = $registro['formando'] == 0 ? 'Não' : 'Sim'; $table .= sprintf('<tr class="formlttd"><td>Número da Matrícula</td><td>%s</td></tr>', $registro['cod_matricula']); $table .= sprintf('<tr class="formmdtd"><td>Instituição</td><td>%s</td></tr>', $nm_instituicao); $table .= sprintf('<tr class="formlttd"><td>Escola</td><td>%s</td></tr>', $nm_escola); $table .= sprintf('<tr class="formmdtd"><td>Série</td><td>%s</td></tr>', $nm_serie); $table .= sprintf('<tr class="formlttd"><td>Turma</td><td>%s</td></tr>', $nm_turma); $table .= sprintf('<tr class="formmdtd"><td>Situação</td><td>%s</td></tr>', $aprovado); $class = 'formmdtd'; if (is_array($transferencias)) { asort($transferencias); foreach ($transferencias as $trans) { $table .= sprintf('<tr class="%s"><td>%s</td><td>%s</td></tr>', $class, $trans['desc'], $trans['data_trans']); $class = $class == 'formmdtd' ? 'formlttd' : 'formmdtd'; } } if ($registro['aprovado'] < 4) { if (is_numeric($registro["cod_matricula"])) { $sql = sprintf('SELECT to_char(data_transferencia, \'DD/MM/YYYY\') FROM pmieducar.transferencia_solicitacao WHERE ref_cod_matricula_entrada = %d AND ativo = 1', $registro['cod_matricula']); $db2 = new clsBanco(); $data_transferencia = $db2->CampoUnico($sql); if ($data_transferencia) { $table .= sprintf(' <tr class="%s"> <td>Data Transferência Admissão</td> <td>%s</td> </tr>', $class, $data_transferencia); $class = $class == 'formmdtd' ? 'formlttd' : 'formmdtd'; } } } $table .= sprintf('<tr class="%s"><td>Formando</td><td>%s</td></tr>', $class == 'formmdtd' ? 'formlttd' : 'formmdtd', $formando); $table .= '</table>'; } } } else { return '<strong>O aluno não está matriculado em nenhuma escola</strong>'; } return $table; }
} $Y_linha += $altura; $pdf->escreve_relativo("EMAIL: {$email_resp}", $X_coluna, $Y_linha, 536, $altura, $fonte, $tam_letra); //********************************************************// $pdf->escreve_relativo("Assinatura da Secretária(o)", 68, 590, 100, 50, $fonte, 7, $corTexto, 'left'); $pdf->escreve_relativo("Assinatura do Responsável", 400, 590, 100, 50, $fonte, 7, $corTexto, 'left'); $pdf->linha_relativa(52, 587, 130, 0); $pdf->linha_relativa(384, 587, 130, 0); //****************************************************************************************// if (is_numeric($cod_aluno)) { $sql = "SELECT MAX(cod_matricula) FROM pmieducar.matricula WHERE ref_cod_aluno = {$cod_aluno} AND ativo = 1"; $db = new clsBanco(); $ref_cod_matricula = $db->CampoUnico($sql); if (is_numeric($ref_cod_matricula)) { $obj_matricula = new clsPmieducarMatricula(); $obj_matricula->setOrderby("ano ASC"); $lst_matricula = $obj_matricula->lista($ref_cod_matricula); if ($lst_matricula) { $registro = array_shift($lst_matricula); } $obj_ref_cod_curso = new clsPmieducarCurso($registro["ref_cod_curso"]); $det_ref_cod_curso = $obj_ref_cod_curso->detalhe(); $nm_curso = $det_ref_cod_curso["nm_curso"]; $obj_serie = new clsPmieducarSerie($registro["ref_ref_cod_serie"]); $det_serie = $obj_serie->detalhe(); $nm_serie = $det_serie["nm_serie"]; $ano = $registro["ano"]; } } $pdf->ClosePage(); $pdf->OpenPage();
function Gerar() { $this->url_cancelar = "educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}"; $this->nome_url_cancelar = "Cancelar"; // a disciplina vem com a serie junto... vamos separar if (strpos($this->ref_cod_disciplina, "_")) { $arr = explode("_", $this->ref_cod_disciplina); $this->ref_cod_disciplina = $arr[1]; $this->ref_cod_serie_disciplina = $arr[0]; } else { $this->ref_cod_disciplina = $this->ref_cod_disciplina; $this->ref_cod_serie_disciplina = null; } $objTurma = new clsPmieducarTurma($this->ref_cod_turma, null, null, $this->ref_ref_cod_serie); $detalhe_turma = $objTurma->detalhe(); if ($detalhe_turma) { // a turma existe, vamos pegar os dados dela $this->ref_ref_cod_serie = $detalhe_turma["ref_ref_cod_serie"]; $objSerie = new clsPmieducarSerie($this->ref_ref_cod_serie); $detalhe_serie = $objSerie->detalhe(); $this->media_especial = dbBool($detalhe_serie['media_especial']); $this->ref_ref_cod_serie_mult = $detalhe_turma["ref_ref_cod_serie_mult"]; if ($this->ref_ref_cod_serie_mult) { $objSerieMult = new clsPmieducarSerie($this->ref_ref_cod_serie_mult); $detalhe_serie_mult = $objSerieMult->detalhe(); } $this->ref_ref_cod_escola = $detalhe_turma["ref_ref_cod_escola"]; $this->ref_cod_curso = $detalhe_serie["ref_cod_curso"]; $objCurso = new clsPmieducarCurso($this->ref_cod_curso); $detalhe_curso = $objCurso->detalhe(); $objEscolaAnoLetivo = new clsPmieducarEscolaAnoLetivo(); $lstEscolaAnoLetivo = $objEscolaAnoLetivo->lista($this->ref_ref_cod_escola, null, null, null, 1, null, null, null, null, 1); if (is_array($lstEscolaAnoLetivo)) { foreach ($lstEscolaAnoLetivo as $value) { $this->ano_letivo = $value["ano"]; } } $objTipoAvaliacao = new clsPmieducarTipoAvaliacao($detalhe_curso["ref_cod_tipo_avaliacao"]); $detalhe_tipo_avaliacao = $objTipoAvaliacao->detalhe(); $this->conceitual = $detalhe_tipo_avaliacao["conceitual"]; $this->ref_cod_tipo_avaliacao = $detalhe_curso["ref_cod_tipo_avaliacao"]; $this->falta_ch_globalizada = $detalhe_curso["falta_ch_globalizada"]; $this->num_modulo = $objTurma->moduloMinimo(); // se o modulo atual for maior que o maximo o ano acabou $this->max_modulos = $objTurma->maxModulos(); if ($this->num_modulo == $this->max_modulos + 1) { // ve se vai para a pagina de aprovacao/reprovacao ou se mostra as notas do exame if (!is_null($detalhe_curso["media_exame"])) { // essa turma pode ter exame $detalhe_modulo = array(); $detalhe_modulo["nm_tipo"] = "Exame"; // ve se tem algum aluno em exame $a = $objTurma->moduloExameAlunos(); if ($objTurma->moduloExameAlunos()) { // existe algum aluno de exame $this->exame = 1; // vamos ver se tem alguma excessao que precisa de nota de exame $objExcessoes = new clsPmieducarMatriculaExcessao(); $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true, true, IS_NULL); if (is_array($lista_excessoes)) { // existe alguma excessao, mostra a tela de excessoes $this->passo = 2; } else { // nao tem excessao, entao vamos dar as notas do exame // $this->passo = 1; } } else { // poderia ter exame, mas nenhum aluno pegou exame, vamos pra aprova��o if ($this->conceitual) { // conceitual aprova manualmente $this->passo = 3; } else { $objExcessoes = new clsPmieducarMatriculaExcessao(); $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true, false); if (is_array($lista_excessoes)) { // existe alguma excessao para aprovacao, vamos para tela de excessoes $this->passo = 2; } else { // ninguem de exame, a turma nao eh conceitual e nenhuma excessao... todos ja deveriam estar aprovados/reprovados // $this->campoRotulo("alerta","Alerta","Erro: [1] Todos os alunos dessa turma j� foram aprovados/reprovados."); // vamos corrigir o problema aprovando o pessoal que esta na espera (ja que eles nao pegaram exame nem reprovaram por falta) $db2 = new clsBanco(); $db2->Consulta("SELECT cod_matricula FROM pmieducar.v_matricula_matricula_turma WHERE ref_cod_turma = '{$this->ref_cod_turma}' AND aprovado = 3 AND ativo = 1"); while ($db2->ProximoRegistro()) { list($mat) = $db2->Tupla(); $objAprova = new clsPmieducarMatricula($mat, null, null, null, $this->pessoa_logada, null, null, 1); $objAprova->edita(); } header("location: educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}"); die; } } } } else { // nao tem exame, fase de aprovacao dos alunos if ($this->conceitual) { // conceitual aprova manualmente $this->passo = 3; } else { // nao conceitual $objExcessoes = new clsPmieducarMatriculaExcessao(); $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true); if (is_array($lista_excessoes)) { // tem excessao, mostra tela de excessoes para aprovacao $this->passo = 2; } else { // ninguem de exame, a turma nao eh conceitual e nenhuma excessao... todos ja deveriam estar aprovados/reprovados // vamos corrigir o problema e aprovar todo mudno que nao pegou exame $db2 = new clsBanco(); $db2->Consulta("SELECT cod_matricula FROM pmieducar.v_matricula_matricula_turma WHERE ref_cod_turma = '{$this->ref_cod_turma}' AND aprovado = 3 AND ativo = 1"); while ($db2->ProximoRegistro()) { list($mat) = $db2->Tupla(); $objAprova = new clsPmieducarMatricula($mat, null, null, null, $this->pessoa_logada, null, null, 1); $objAprova->edita(); } //$this->campoRotulo("alerta","Alerta","Erro: [2] Todos os alunos dessa turma j� foram aprovados/reprovados."); header("location: educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}"); die; } } } } else { if ($this->num_modulo > $this->max_modulos) { // jah passou o exame, fase de aprovacao dos alunos $objExcessoes = new clsPmieducarMatriculaExcessao(); $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true); if (is_array($lista_excessoes)) { // ta na fase de aprovacao mas ainda tem alguma excessao $this->passo = 2; } else { // fase de aprovacao e sem excessoes if ($this->conceitual) { $this->passo = 3; } else { // ja acabou o exame, a turma nao eh conceitual e nenhuma excessao... todos ja deveriam estar aprovados/reprovados // $this->campoRotulo("alerta","Alerta","Erro: [3] Todos os alunos dessa turma j� foram aprovados/reprovados."); $db2 = new clsBanco(); $db2->Consulta("SELECT cod_matricula FROM pmieducar.v_matricula_matricula_turma WHERE ref_cod_turma = '{$this->ref_cod_turma}' AND aprovado = 3 AND ativo = 1"); while ($db2->ProximoRegistro()) { list($mat) = $db2->Tupla(); $objAprova = new clsPmieducarMatricula($mat, null, null, null, $this->pessoa_logada, null, null, 1); $objAprova->edita(); } header("location: educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}"); die; } } } else { if ($this->ref_cod_disciplina && $this->passo == 1) { if ($this->ultima_disciplina == 1 && $this->conceitual && $this->num_modulo == $this->max_modulos) { $this->pula_passo = true; } } $this->exame = 0; $cod_modulo = 0; $objAnoLetivoModulo = new clsPmieducarAnoLetivoModulo(); $lstAnoLetivoModulo = $objAnoLetivoModulo->lista($this->ano_letivo, $this->ref_ref_cod_escola, $this->num_modulo); if (is_array($lstAnoLetivoModulo)) { foreach ($lstAnoLetivoModulo as $value) { $cod_modulo = $value["ref_cod_modulo"]; $this->ref_cod_modulo = $cod_modulo; } } if (!$objTurma->moduloMinimoDisciplina()) { /** * nao existem disciplinas sem nota redireciona para listagem de nota turma */ if (!$_POST) { echo "<script>alert('Todas as disciplinas já se encontram com nota!');window.location='educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}';</script>"; } else { header("location:educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}"); } die; } $objModulo = new clsPmieducarModulo($cod_modulo); $detalhe_modulo = $objModulo->detalhe(); } } $this->campoRotulo("nm_turma", "Turma", $detalhe_turma["nm_turma"]); $this->campoRotulo("nm_serie", "Série", $detalhe_turma["multiseriada"] ? "{$detalhe_serie["nm_serie"]} e {$detalhe_serie_mult["nm_serie"]}" : $detalhe_serie["nm_serie"]); $this->campoRotulo("nm_modulo", "Módulo", $detalhe_modulo["nm_tipo"]); $this->campoRotulo("num_modulo2", "Número do Módulo", $this->num_modulo . "\n\t\t\t<style>\n\t\t\t\t.cell_normal\n\t\t\t\t{\n\t\t\t\t\tborder:1px;\n\t\t\t\t\tborder-color:#000000;\n\t\t\t\t\tborder-style:solid;\n\t\t\t\t}\n\t\t\t\t.cell_separa\n\t\t\t\t{\n\t\t\t\t\tborder:1px;\n\t\t\t\t\tborder-color:#000000;\n\t\t\t\t\tborder-style:solid;\n\t\t\t\t\tborder-left-width:2px;\n\t\t\t\t}\n\t\t\t</style>\n\t\t\t"); if ($this->passo == 0) { // mostra as disciplinas para escolher $opcoes_disciplinas = array("" => "Selecione"); if (!$this->exame) { // modulo normal, acha todas as disciplinas que ainda precisam de nota no menor modulo $disciplinas = $objTurma->moduloMinimoDisciplina(); // print_r($disciplinas); $num_disciplinas = 0; foreach ($disciplinas as $value) { $objDisciplina = new clsPmieducarDisciplina($value["cod_disciplina"]); $det_dis = $objDisciplina->detalhe(); $nm_serie = $value["cod_serie"] == $this->ref_ref_cod_serie ? $detalhe_serie["nm_serie"] : $detalhe_serie_mult["nm_serie"]; $opcoes_disciplinas["{$value["cod_serie"]}_{$value["cod_disciplina"]}"] = $detalhe_turma["multiseriada"] ? "{$nm_serie} - {$det_dis["nm_disciplina"]}" : "{$det_dis["nm_disciplina"]}"; $num_disciplinas++; } if ($num_disciplinas == 1) { $this->campoOculto("ultima_disciplina", 1); } } else { // exame, acha as disciplinas em que os alunos nao atingiram a media $disciplinas = $objTurma->moduloExameDisciplina(true); foreach ($disciplinas as $value) { $objDisciplina = new clsPmieducarDisciplina($value["cod_disciplina"]); $det_dis = $objDisciplina->detalhe(); $nm_serie = $value["cod_serie"] == $this->ref_ref_cod_serie ? $detalhe_serie["nm_serie"] : $detalhe_serie_mult["nm_serie"]; $opcoes_disciplinas["{$value["cod_serie"]}_{$value["cod_disciplina"]}"] = $detalhe_turma["multiseriada"] ? "{$nm_serie} - {$det_dis["nm_disciplina"]}" : "{$det_dis["nm_disciplina"]}"; } } $this->campoLista("ref_cod_disciplina", "Disciplina", $opcoes_disciplinas, $this->ref_cod_disciplina); } else { if ($this->passo == 1) { // mostra os alunos que ainda precisam de nota nessa disciplina (nesse modulo) $objDisciplina = new clsPmieducarDisciplina($this->ref_cod_disciplina); $detalhe_disciplina = $objDisciplina->detalhe(); // print_r($detalhe_disciplina); $this->campoRotulo("disciplina", "Disciplina", "<strong>{$detalhe_disciplina["nm_disciplina"]}</strong>"); $this->campoOculto("ref_cod_disciplina", $this->ref_cod_disciplina); $this->campoOculto("ref_cod_serie_disciplina", $this->ref_cod_serie_disciplina); $this->campoQuebra2(); // seleciona as notas que estilo disponiveis para essa disciplina $objTipoAvaliacaoValor = new clsPmieducarTipoAvaliacaoValores(); $opcoes_notas = array("" => "Selecione"); $objTipoAvaliacaoValor->setOrderby("sequencial ASC"); $lista_notas_valores = $objTipoAvaliacaoValor->lista($detalhe_curso["ref_cod_tipo_avaliacao"]); if (is_array($lista_notas_valores)) { foreach ($lista_notas_valores as $value) { $opcoes_notas[$value["sequencial"]] = $value["nome"]; } } // pega as matriculas que vao receber nota if (!$this->exame) { $matriculas = $objTurma->matriculados_modulo_disciplina_sem_nota($this->ref_cod_disciplina, $this->ref_cod_serie_disciplina, $this->num_modulo); $sql = "SELECT \n\t\t\t\t\t\t\t\tcod_Matricula \n\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\tpmieducar.matricula m\n\t\t\t\t\t\t\tWHERE \n\t\t\t\t\t\t\t\tcod_matricula in (" . implode(",", $matriculas) . ")\n\t\t\t\t\t\t\t\tAND ref_ref_cod_serie={$this->ref_cod_serie_disciplina}"; $banco = new clsBanco(); $banco->Consulta($sql); if ($banco->Num_Linhas()) { $matriculas = array(); while ($banco->ProximoRegistro()) { list($cod_matricula) = $banco->Tupla(); $matriculas[$cod_matricula] = $cod_matricula; } } } else { $matriculas = $objTurma->moduloExameAlunos($this->ref_cod_disciplina); /** * gera campo para dizer que as notas sao de exame */ $this->campoOculto("is_nota_exame", true); } if ($matriculas) { $objMat = new clsPmieducarMatricula(); $objMat->setOrderby("nome ASC"); $lista_matriculas = $objMat->lista(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, $matriculas); $matriculas_exame_disponivel = false; if (is_array($lista_matriculas)) { foreach ($lista_matriculas as $matricula) { if (!$this->exame) { $this->campoRotulo("matricula[{$matricula["cod_matricula"]}]", "Aluno", "<div style=\"float:left;width:250px;padding-top:2px;\">{$matricula["nome"]}</div>", true); $this->campoLista("nota[{$matricula["cod_matricula"]}]", "Nota", $opcoes_notas, "", "", true, "", "", false, true); } else { $obj_nota_aluno = new clsPmieducarNotaAluno(); $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, null, null, $this->ref_cod_disciplina, $matricula["cod_matricula"], null, null, null, null, null, null, 1, $this->num_modulo); if (!is_array($lst_nota_aluno)) { $matriculas_exame_disponivel = true; $this->campoRotulo("matricula[{$matricula["cod_matricula"]}]", "Aluno", "<div style=\"float:left;width:250px;padding-top:2px;\">{$matricula["nome"]}</div>", true); $this->campoMonetario("nota[{$matricula["cod_matricula"]}]", "Nota", "", 5, 5, true, "", "", "onChange", false, true, "", true); } // $this->campoMonetario("nota[{$matricula["cod_matricula"]}]","Nota","",5,5,true,"","","onChange",false,true,"",true); } if (!$this->exame) { $duplo = false; if ($this->pula_passo) { $duplo = true; } // nao estamos no exame, vamos ver se precisa apurar as faltas if ($detalhe_disciplina["apura_falta"]) { // materia apura falta, vamos ver se eh pra mostrar pra esse aluno if (!$detalhe_curso["falta_ch_globalizada"]) { // se nesse curso a falta nao eh globalizada, exibe um campo de falta para todos os alunos $this->campoTexto("falta[{$matricula["cod_matricula"]}]", " Faltas", "0", 7, 5, true, false, $duplo); } else { // a falta eh globalizada, vamos ver se essa eh a ultima materia (que apura falta) que falta pro aluno // receber nota. Se for a ultima mostra o campo, se nao for deixa sem $objNotaAluno = new clsPmieducarNotaAluno(); $restantes = $objNotaAluno->getQtdRestanteNotasAlunoNaoApuraFaltas($matricula["cod_matricula"], $this->ref_cod_serie_disciplina, $this->ref_cod_turma, $this->num_modulo, $this->ref_ref_cod_escola); if ($restantes == 1) { $this->campoTexto("falta[{$matricula["cod_matricula"]}]", " Faltas", "0", 7, 5, true, false, $duplo, "", "Falta global!"); $this->campoOculto("ultima_nota[{$matricula["cod_matricula"]}]", "1"); } else { $this->campoRotulo("espaco[{$matricula["cod_matricula"]}]", " Faltas", "Falta Globalizada é aplicada na ultima nota do aluno"); } } } else { // a falta eh globalizada, vamos ver se essa eh a ultima materia (que apura falta) que falta pro aluno // receber nota. Se for a ultima mostra o campo, se nao for deixa sem if ($detalhe_curso["falta_ch_globalizada"]) { $objNotaAluno = new clsPmieducarNotaAluno(); $restantes = $objNotaAluno->getQtdRestanteNotasAlunoNaoApuraFaltas($matricula["cod_matricula"], $this->ref_cod_serie_disciplina, $this->ref_cod_turma, $this->num_modulo, $this->ref_ref_cod_escola); if ($restantes == 1) { // eh a ultima disciplina $this->campoTexto("falta[{$matricula["cod_matricula"]}]", " Faltas", "0", 7, 5, true, false, $duplo, "", "Falta global!"); $this->campoOculto("ultima_nota[{$matricula["cod_matricula"]}]", "1"); } else { $this->campoRotulo("espaco[{$matricula["cod_matricula"]}]", " Faltas", "Matéria não apura falta"); } } else { $this->campoRotulo("espaco[{$matricula["cod_matricula"]}]", " Faltas", "Matéria não apura falta"); } } if ($this->pula_passo) { // $opcoes_conceito = array("" => "Selecione", 1 => "Aprovado", 2 => "Reprovado"); // $this->campoLista("conceito[{$matricula["cod_matricula"]}]", " Situação", $opcoes_conceito, ""); $this->campoLista("resultado_final[{$matricula["cod_matricula"]}]", " Resultado final", array("" => "Selecione", "1" => "Aprovado", "2" => "Reprovado"), "", "", false, "", "", false, true); } } else { if (!is_array($lst_nota_aluno)) { // esta no exame, entao nao apura faltas $this->campoRotulo("espaco[{$matricula["cod_matricula"]}]", " Faltas", "Exame não apura falta"); } // esta no exame, entao nao apura faltas // $this->campoRotulo("espaco[{$matricula["cod_matricula"]}]", " Faltas","Exame não apura falta"); } } if (!$matriculas_exame_disponivel && $this->exame) { echo "<script>\n\t\t\t\t\t\t\t\t\t\talert('Todos os alunos estão com notas do exame nessa disciplina');\n\t\t\t\t\t\t\t\t\t\twindow.location='educar_turma_nota_cad.php?ref_cod_turma={$this->ref_cod_turma}&ref_ref_cod_escola={$this->ref_ref_cod_escola}&ref_ref_cod_serie={$this->ref_ref_cod_serie}&ref_cod_curso={$this->ref_cod_curso}';\n\t\t\t\t\t\t\t\t </script>"; } } } else { $this->mensagem = "Neste módulo não existe nenhum aluno aguardando uma nota nesta disciplina"; $this->url_cancelar = "educar_turma_nota_cad2.php?ref_cod_turma={$this->ref_cod_turma}&ref_ref_cod_escola={$this->ref_ref_cod_escola}&ref_ref_cod_serie={$this->ref_ref_cod_serie}&ref_cod_curso={$this->ref_cod_curso}"; $this->nome_url_cancelar = "Voltar"; $this->botao_enviar = false; } } else { if ($this->passo == 2) { // tela onde o professor confirma excessoes $objTipoAvaliacaoValor = new clsPmieducarTipoAvaliacaoValores(); $this->campoQuebra2(); $this->campoRotulo("media_normal", "Média", $objTipoAvaliacaoValor->nomeNota($detalhe_curso["media"], $detalhe_curso["ref_cod_tipo_avaliacao"])); $this->campoRotulo("media_exame", "Média Exame", $objTipoAvaliacaoValor->nomeNota($detalhe_curso["media_exame"], $detalhe_curso["ref_cod_tipo_avaliacao"])); if ($detalhe_curso["falta_ch_globalizada"]) { $tipo_falta = "Globalizada"; } else { $tipo_falta = "por Disciplina"; } $this->campoRotulo("tipo_falta", "Tipo de Falta", $tipo_falta); $this->campoRotulo("carga_horaria", "Carga Horária", $detalhe_curso["carga_horaria"]); $this->campoRotulo("hora_falta", "Horas por Falta", $detalhe_curso["hora_falta"]); $this->campoRotulo("frequencia_minima1", "Frequencia Máima (%)", $detalhe_curso["frequencia_minima"] . "%"); $this->campoRotulo("frequencia_minima2", "Frequencia Mínima (Horas)", ceil($detalhe_curso["frequencia_minima"] / 100 * $detalhe_curso["carga_horaria"])); if ($detalhe_curso["hora_falta"]) { $maximo_faltas = floor($detalhe_curso["carga_horaria"] / $detalhe_curso["hora_falta"] - $detalhe_curso["frequencia_minima"] / 100 * $detalhe_curso["carga_horaria"] / $detalhe_curso["hora_falta"]); } else { $maximo_faltas = "Ilimitado"; } $this->campoRotulo("frequencia_minima3", "Máximo de faltas (quantidade)", $maximo_faltas); // descobre o ano letivo em andamento $objEscolaAnoLetivo = new clsPmieducarEscolaAnoLetivo(); $objEscolaAnoLetivo->setOrderby("data_cadastro DESC"); $objEscolaAnoLetivo->setLimite(1); $lista_anoletivo = $objEscolaAnoLetivo->lista($this->ref_ref_cod_escola, null, null, null, 1); if (is_array($lista_anoletivo)) { foreach ($lista_anoletivo as $value) { $ano = $value["ano"]; } } $boletim = false; $descricao = ""; $objExcessoes = new clsPmieducarMatriculaExcessao(); $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true, true, IS_NULL); if (is_array($lista_excessoes)) { $this->campoQuebra2(); $this->campoRotulo("descricao", "Aviso", "Existem alunos que reprovaram por falta e pegaram exame.<br>Você deve decidir se permitirá que eles façam exame ou reprovem."); $opcoes_excessao = array("" => "Selecione", "0" => "Reprovar", "1" => "Permitir Exame"); // ainda tem alguma excessao que precisa de exame foreach ($lista_excessoes as $excessao) { $this->campoQuebra2(); $this->campoQuebra2("#E4E9ED", 20); $objMatricula = new clsPmieducarMatricula($excessao["ref_cod_matricula"]); $detalhe_matricula = $objMatricula->detalhe(); $this->campoRotulo("nome[{$excessao["ref_cod_matricula"]}]", "Aluno", "{$detalhe_matricula["nome"]}"); // boletim $boletim = $this->getBoletimAluno($excessao["ref_cod_matricula"], $ano); $this->campoRotulo("boletim[{$excessao["cod_aluno_excessao"]}]", "Boletim", $boletim["boletim"]); $this->campoLista("excessao[{$excessao["cod_aluno_excessao"]}]", "Resultado final", $opcoes_excessao, false, "", false, "", "", false, false); $this->campoRotulo("sugestao[{$excessao["cod_aluno_excessao"]}]", "Automático", $boletim["automatico"]); $this->campoQuebra2("#FFFFFF", 20); } } else { $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true, false); if (is_array($lista_excessoes)) { $this->campoQuebra2(); $this->campoRotulo("descricao", "Aviso", "Existem alunos que reprovaram por falta mas foram aprovados em notas.<br>Você deve decidir se eles ser�o aprovados ou reprovados."); $opcoes_excessao = array("" => "Selecione", "0" => "Reprovar", "2" => "Aprovar"); // so existem excessoes para aprovacao direta foreach ($lista_excessoes as $excessao) { $this->campoQuebra2(); $this->campoQuebra2("#E4E9ED", 20); $objMatricula = new clsPmieducarMatricula($excessao["ref_cod_matricula"]); $detalhe_matricula = $objMatricula->detalhe(); $this->campoRotulo("nome[{$excessao["ref_cod_matricula"]}]", "Aluno", "{$detalhe_matricula["nome"]}"); // boletim $boletim = $this->getBoletimAluno($excessao["ref_cod_matricula"], $ano); $this->campoRotulo("boletim[{$excessao["cod_aluno_excessao"]}]", "Boletim", $boletim["boletim"]); $this->campoLista("excessao[{$excessao["cod_aluno_excessao"]}]", "Resultado final", $opcoes_excessao, false, "", false, "", "", false, false); $this->campoRotulo("sugestao[{$excessao["cod_aluno_excessao"]}]", "Automático", $boletim["automatico"]); $this->campoQuebra2("#FFFFFF", 20); } } else { // por algum motivo ele mandou o cara pra tela de excessoes, mas nao existe nenhuma excessao $this->campoRotulo("alerta", "Alerta", "Erro: [4] Nenhum aluno reprovado por faltas pendente."); // header("location: educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}"); // die(); } } } else { if ($this->passo == 3) { // vamos exibir alguns dados extras sobre o curso (padroes de aprovacao / reprovacao) $this->campoQuebra2(); $objTipoAvaliacaoValor = new clsPmieducarTipoAvaliacaoValores(); $this->campoRotulo("media_normal", "Média", $objTipoAvaliacaoValor->nomeNota($detalhe_curso["media"], $detalhe_curso["ref_cod_tipo_avaliacao"])); $this->campoRotulo("media_exame", "Média Exame", $objTipoAvaliacaoValor->nomeNota($detalhe_curso["media_exame"], $detalhe_curso["ref_cod_tipo_avaliacao"])); if ($detalhe_curso["falta_ch_globalizada"]) { $tipo_falta = "Globalizada"; } else { $tipo_falta = "por Disciplina"; } $this->campoRotulo("tipo_falta", "Tipo de Falta", $tipo_falta); $this->campoRotulo("carga_horaria", "Carga Horária", $detalhe_curso["carga_horaria"]); $this->campoRotulo("hora_falta", "Horas por Falta", $detalhe_curso["hora_falta"]); $this->campoRotulo("frequencia_minima1", "Frequencia Mínima (%)", $detalhe_curso["frequencia_minima"] . "%"); $this->campoRotulo("frequencia_minima2", "Frequencia Mínima (Horas)", ceil($detalhe_curso["frequencia_minima"] / 100 * $detalhe_curso["carga_horaria"])); if ($detalhe_curso["hora_falta"]) { $maximo_faltas = floor($detalhe_curso["carga_horaria"] / $detalhe_curso["hora_falta"] - $detalhe_curso["frequencia_minima"] / 100 * $detalhe_curso["carga_horaria"] / $detalhe_curso["hora_falta"]); } else { $maximo_faltas = "Ilimitado"; } $this->campoRotulo("frequencia_minima3", "Máximo de faltas (quantidade)", $maximo_faltas); // mostra a lista de todos alunos e a opcao de aprovar/reprovar (exceto os ja aprovados/reprovados) $matriculas = $objTurma->matriculados(); if ($matriculas) { // descobre o ano letivo em andamento $objEscolaAnoLetivo = new clsPmieducarEscolaAnoLetivo(); $objEscolaAnoLetivo->setOrderby("data_cadastro DESC"); $objEscolaAnoLetivo->setLimite(1); $lista_anoletivo = $objEscolaAnoLetivo->lista($this->ref_ref_cod_escola, null, null, null, 1); if (is_array($lista_anoletivo)) { foreach ($lista_anoletivo as $value) { $ano = $value["ano"]; } } $objMat = new clsPmieducarMatricula(); $objMat->setOrderby("nome ASC"); $lista_matriculas = $objMat->lista(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, $matriculas); if (is_array($lista_matriculas)) { foreach ($lista_matriculas as $matricula) { $this->campoQuebra2(); $this->campoQuebra2("#E4E9ED", 20); $this->campoRotulo("nome[{$matricula["cod_matricula"]}]", "Aluno", "{$matricula["nome"]}"); // boletim $boletim = $this->getBoletimAluno($matricula["cod_matricula"], $ano); $this->campoRotulo("boletim[{$matricula["cod_matricula"]}]", "Boletim", $boletim["boletim"]); $this->campoRotulo("sugestao[{$matricula["cod_matricula"]}]", "Automático", $boletim["automatico"]); // if ($this->pula_passo) // $this->campoLista("resultado_final[{$matricula["cod_matricula"]}]","Resultado final",array(""=>"Selecione","1"=>"Aprovado","2"=>"Reprovado"),"","",false,"","",false,true); // else $this->campoLista("resultado_final[{$matricula["cod_matricula"]}]", "Resultado final", array("" => "Selecione", "1" => "Aprovado", "2" => "Reprovado"), "", "", false, "", "", false, false); $this->campoQuebra2("#FFFFFF", 20); } } } else { $this->mensagem = "Erro ao procurar alunos sem nota nessa disciplina"; } } } } } // guardando dados para os outros passos if ($this->pula_passo) { $this->campoOculto("passo", 3); $this->campoOculto("pula_passo", 1); $this->campoOculto("ref_cod_tipo_avaliacao", $this->ref_cod_tipo_avaliacao); // $this->pula_passo = false; } else { $this->campoOculto("passo", $this->passo + 1); } $this->campoOculto("ref_cod_turma", $this->ref_cod_turma); $this->campoOculto("ref_ref_cod_escola", $this->ref_ref_cod_escola); $this->campoOculto("ref_ref_cod_serie", $this->ref_ref_cod_serie); $this->campoOculto("ref_cod_curso", $this->ref_cod_curso); $this->campoOculto("falta_ch_globalizada", $this->falta_ch_globalizada); $this->campoOculto("num_modulo", $this->num_modulo); $this->campoOculto("max_modulos", $this->max_modulos); $this->campoOculto("exame", $this->exame); } else { $this->campoRotulo("erro", "Erro", "Turma inexistente"); return false; } return true; }