From 2bb83ebf2914c88189cdb4699627faa91733e55d Mon Sep 17 00:00:00 2001 From: Eriksen Costa Paixão Date: Mon, 8 Mar 2010 15:05:30 +0000 Subject: [PATCH] Atualizada interface de Quadro de Horários --- ieducar/intranet/educar_quadro_horario_horarios_cad.php | 74 +++++++++++++++++++++++++++++++++++++++++++++++--------------------------- ieducar/intranet/educar_quadro_horario_lst.php | 22 +++++++++++++++++----- ieducar/intranet/educar_relatorio_quadro_horario_proc.php | 12 +++++++----- ieducar/intranet/include/pmieducar/clsPmieducarQuadroHorarioHorarios.inc.php | 60 +++++++++++++++++++----------------------------------------- ieducar/modules/ComponenteCurricular/Model/AnoEscolarDataMapper.php | 6 +++--- 5 files changed, 93 insertions(+), 81 deletions(-) diff --git a/ieducar/intranet/educar_quadro_horario_horarios_cad.php b/ieducar/intranet/educar_quadro_horario_horarios_cad.php index 07b74f5..c951436 100644 --- a/ieducar/intranet/educar_quadro_horario_horarios_cad.php +++ b/ieducar/intranet/educar_quadro_horario_horarios_cad.php @@ -32,6 +32,8 @@ require_once 'include/clsBase.inc.php'; require_once 'include/clsCadastro.inc.php'; require_once 'include/clsBanco.inc.php'; require_once 'include/pmieducar/geral.inc.php'; +require_once 'ComponenteCurricular/Model/ComponenteDataMapper.php'; +require_once 'ComponenteCurricular/Model/AnoEscolarDataMapper.php'; /** * clsIndexBase class. @@ -192,20 +194,20 @@ class indice extends clsCadastro function Gerar() { - - if ($_POST) + if ($_POST) { foreach ($_POST as $campo => $val) { $this->$campo = ( $this->$campo ) ? $this->$campo : $val; } + } - $obrigatorio = TRUE; - $desabilitado = TRUE; - $get_escola = TRUE; - $get_curso = TRUE; - $get_escola_curso_serie = TRUE; - $get_turma = TRUE; + $obrigatorio = TRUE; + $desabilitado = TRUE; + $get_escola = TRUE; + $get_curso = TRUE; + $get_escola_curso_serie = TRUE; + $get_turma = TRUE; - include('include/pmieducar/educar_campo_lista.php'); + include 'include/pmieducar/educar_campo_lista.php'; $this->campoQuebra(); @@ -215,26 +217,44 @@ class indice extends clsCadastro // foreign keys $opcoes_disc = array('' => 'Selecione uma disciplina'); - $obj_turm_disc = new clsPmieducarDisciplinaSerie(); - $lst_turm_disc = $obj_turm_disc->lista(NULL, $this->ref_ref_cod_serie, 1); - if ($lst_turm_disc) { - foreach ($lst_turm_disc as $registro) { - $obj_disc = new clsPmieducarDisciplina($registro['ref_cod_disciplina'], - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); + // Componentes curriculares da série + $escolaSerieDisciplina = new clsPmieducarEscolaSerieDisciplina(); + $escolaSerieDisciplinas = $escolaSerieDisciplina->lista($this->ref_ref_cod_serie, + $this->ref_cod_escola, NULL, 1); + + if (0 == count($escolaSerieDisciplinas)) { + $opcoes_disc = array('NULL' => 'A série dessa escola não possui componentes cadastrados'); + } + else { + // Mapper dos componentes curriculares + $componenteMapper = new ComponenteCurricular_Model_ComponenteDataMapper(); - $det_disc = $obj_disc->detalhe(); - $opcoes_disc[$det_disc['cod_disciplina']] = $det_disc['nm_disciplina']; + foreach ($escolaSerieDisciplinas as $escolaSerieDisciplina) { + $componente = $componenteMapper->find($escolaSerieDisciplina['ref_cod_disciplina']); + $opcoes_disc[$componente->id] = $componente; } } - $this->campoLista('ref_cod_disciplina', 'Disciplina', $opcoes_disc, + $this->campoLista('ref_cod_disciplina', 'Componente curricular', $opcoes_disc, $this->ref_cod_disciplina, '', FALSE, '', '', FALSE, FALSE); $this->campoOculto('identificador', $this->identificador); + $opcoesDias = array( + '' => 'Selecione um dia da semana', + 1 => 'Domingo', + 2 => 'Segunda-Feira', + 3 => 'Terça-Feira', + 4 => 'Quarta-Feira', + 5 => 'Quinta-Feira', + 6 => 'Sexta-Feira', + 7 => 'Sábado' + ); + $this->campoOculto('dia_semana', $this->dia_semana); - $this->campoLista('dia_semana_', 'Dia da Semana', array( '' => 'Selecione um dia da semana', 1 => 'Domingo', 2 => 'Segunda-Feira', 3 => 'Terça-Feira', 4 => 'Quarta-Feira', 5 => 'Quinta-Feira', 6 => 'Sexta-Feira', 7 => 'Sábado' ), $this->dia_semana, '', FALSE, '', '', TRUE, FALSE ); + $this->campoLista('dia_semana_', 'Dia da Semana', $opcoesDias, + $this->dia_semana, '', FALSE, '', '', TRUE, FALSE); $this->campoHora('hora_inicial', 'Hora Inicial', $this->hora_inicial, FALSE); $this->campoHora('hora_final', 'Hora Final', $this->hora_final, FALSE); @@ -250,15 +270,15 @@ class indice extends clsCadastro alert('Você deve escolher a disciplina!'); return; } - elseif (document.getElementById('hora_inicial').value == '') { + else if (document.getElementById('hora_inicial').value == '') { alert('Você deve preencher o campo Hora Inicial!'); return; } - elseif (document.getElementById('hora_final').value == '') { + else if (document.getElementById('hora_final').value == '') { alert('Você deve preencher o campo Hora Final!'); return; } - elseif (document.getElementById('ref_cod_servidor').value == '') { + else if (document.getElementById('ref_cod_servidor').value == '') { alert('Você deve selecionar um servidor no campo Servidor'); return; } @@ -429,10 +449,11 @@ class indice extends clsCadastro $this->campoTextoInv($campo['qtd_horario_'] . '_hora_final', '', $campo['hora_final_'], 5, 255, FALSE, FALSE, TRUE); - $obj_disc = new clsPmieducarDisciplina($campo['ref_ref_cod_disciplina_']); - $det_disc = $obj_disc->detalhe(); + $componenteMapper = new ComponenteCurricular_Model_ComponenteDataMapper(); + $componente = $componenteMapper->find($campo['ref_ref_cod_disciplina_']); + $this->campoTextoInv($campo['qtd_horario_'] . '_ref_cod_disciplina', - '', $det_disc['nm_disciplina'], 30, 255, FALSE, FALSE, TRUE); + '', $componente->nome, 30, 255, FALSE, FALSE, TRUE); $obj_pes = new clsPessoa_($campo['ref_servidor_']); $det_pes = $obj_pes->detalhe(); @@ -824,8 +845,7 @@ function validaCampoServidor() if (document.getElementById('lst_matriculas').value) { pesquisa_valores_popless('educar_pesquisa_servidor_lst.php?campo1=ref_cod_servidor&professor=1&ref_cod_servidor=0&ref_cod_instituicao=' + ref_cod_instituicao + '&ref_cod_escola=' + ref_cod_escola + '&dia_semana=' + dia_semana + '&hora_inicial=' + hora_inicial + '&hora_final=' + hora_final + '&horario=S' + '&lst_matriculas=' + lst_matriculas + '&min_mat=' + min_mat + '&min_ves=' + min_ves + '&min_not=' + min_not + '&identificador=' + identificador + '&ref_cod_disciplina=' + ref_cod_disciplina + '&ref_cod_curso=' + ref_cod_curso, 'ref_cod_servidor'); } - else - { + else { pesquisa_valores_popless('educar_pesquisa_servidor_lst.php?campo1=ref_cod_servidor&professor=1&ref_cod_servidor=0&ref_cod_instituicao=' + ref_cod_instituicao + '&ref_cod_escola=' + ref_cod_escola + '&dia_semana=' + dia_semana + '&hora_inicial=' + hora_inicial + '&hora_final=' + hora_final + '&horario=S' + '&min_mat=' + min_mat + '&min_ves=' + min_ves + '&min_not=' + min_not + '&identificador=' + identificador + '&ref_cod_disciplina=' + ref_cod_disciplina + '&ref_cod_curso=' + ref_cod_curso, 'ref_cod_servidor'); } } diff --git a/ieducar/intranet/educar_quadro_horario_lst.php b/ieducar/intranet/educar_quadro_horario_lst.php index 4adc850..3cf43c7 100644 --- a/ieducar/intranet/educar_quadro_horario_lst.php +++ b/ieducar/intranet/educar_quadro_horario_lst.php @@ -32,6 +32,7 @@ require_once 'include/clsBase.inc.php'; require_once 'include/clsListagem.inc.php'; require_once 'include/clsBanco.inc.php'; require_once 'include/pmieducar/geral.inc.php'; +require_once 'ComponenteCurricular/Model/ComponenteDataMapper.php'; /** * clsIndexBase class. @@ -138,6 +139,9 @@ class indice extends clsConfig $this->ref_cod_instituicao = $obj_permissoes->getInstituicao($this->pessoa_logada); } + // Componente curricular + $componenteMapper = new ComponenteCurricular_Model_ComponenteDataMapper(); + $obrigatorio = FALSE; $get_instituicao = TRUE; $get_escola = TRUE; @@ -168,17 +172,25 @@ class indice extends clsConfig if (is_array($resultado)) { foreach ($resultado as $registro) { - $obj_disciplina = new clsPmieducarDisciplina($registro['ref_cod_disciplina']); - $det_disciplina = $obj_disciplina->detalhe(); - $obj_servidor = new clsPmieducarServidor(); + // Componente curricular + $componente = $componenteMapper->find($registro['ref_cod_disciplina']); + + // Servidor + $obj_servidor = new clsPmieducarServidor(); - $det_servidor = array_shift($obj_servidor->lista( + $det_servidor = array_shift($obj_servidor->lista( $registro['ref_servidor'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, TRUE)); $det_servidor['nome'] = array_shift(explode(' ',$det_servidor['nome'])); - $texto .= "
".substr( $registro["hora_inicial"], 0, 5 )." - ".substr( $registro["hora_final"], 0, 5 )."
{$det_disciplina["abreviatura"]}
{$det_servidor["nome"]}
"; + //$texto .= "
". substr($registro['hora_inicial'], 0, 5) . ' - ' . substr($registro['hora_final'], 0, 5) . "
{$componente->abreviatura}
{$det_servidor["nome"]}
"; + $detalhes = sprintf("%s - %s
%s
%s", + substr($registro['hora_inicial'], 0, 5), substr($registro['hora_final'], 0, 5), + $componente->abreviatura, $det_servidor['nome']); + + $texto .= sprintf('
%s
', + $detalhes); } } else { diff --git a/ieducar/intranet/educar_relatorio_quadro_horario_proc.php b/ieducar/intranet/educar_relatorio_quadro_horario_proc.php index e178248..d409058 100644 --- a/ieducar/intranet/educar_relatorio_quadro_horario_proc.php +++ b/ieducar/intranet/educar_relatorio_quadro_horario_proc.php @@ -33,6 +33,7 @@ require_once 'include/clsCadastro.inc.php'; require_once 'include/clsBanco.inc.php'; require_once 'include/pmieducar/geral.inc.php'; require_once 'include/clsPDF.inc.php'; +require_once 'ComponenteCurricular/Model/ComponenteDataMapper.php'; /** * clsIndexBase class. @@ -202,10 +203,11 @@ class indice extends clsCadastro $this->pdf->quadrado_relativo($inicio_x, $this->page_y, 75, 50, 0.3); - $obj_disciplina = new clsPmieducarDisciplina($registro['ref_cod_disciplina']); - $det_disciplina = $obj_disciplina->detalhe(); - $obj_servidor = new clsPmieducarServidor(); - $det_servidor = array_shift($obj_servidor->lista( + $componenteMapper = new ComponenteCurricular_Model_ComponenteDataMapper(); + $componente = $componenteMapper->find($registro['ref_cod_disciplina']); + + $obj_servidor = new clsPmieducarServidor(); + $det_servidor = array_shift($obj_servidor->lista( $registro['ref_servidor'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, TRUE)); @@ -215,7 +217,7 @@ class indice extends clsCadastro $texto = sprintf("%s - %s\n%s\n%s", substr($registro['hora_inicial'], 0, 5), substr($registro["hora_final"], 0, 5), - $det_disciplina['abreviatura'], + $componente->abreviatura, $det_servidor['nome'] ); diff --git a/ieducar/intranet/include/pmieducar/clsPmieducarQuadroHorarioHorarios.inc.php b/ieducar/intranet/include/pmieducar/clsPmieducarQuadroHorarioHorarios.inc.php index 5b3dd88..802c0bb 100644 --- a/ieducar/intranet/include/pmieducar/clsPmieducarQuadroHorarioHorarios.inc.php +++ b/ieducar/intranet/include/pmieducar/clsPmieducarQuadroHorarioHorarios.inc.php @@ -29,6 +29,7 @@ */ require_once 'include/pmieducar/geral.inc.php'; +require_once 'ComponenteCurricular/Model/AnoEscolarDataMapper.php'; /** * clsPmieducarQuadroHorarioHorarios class @@ -146,8 +147,8 @@ class clsPmieducarQuadroHorarioHorarios elseif ($db->CampoUnico("SELECT 1 FROM pmieducar.servidor WHERE cod_servidor = '{$ref_servidor_substituto}' AND ref_cod_instituicao = '{$ref_cod_instituicao_substituto}'")) { $this->ref_servidor_substituto = $ref_servidor_substituto; $this->ref_cod_instituicao_substituto = $ref_cod_instituicao_substituto; - } } + } if (is_numeric($ref_servidor) && is_numeric($ref_cod_instituicao_servidor)) { if (class_exists('clsPmieducarServidor')) { @@ -170,8 +171,8 @@ class clsPmieducarQuadroHorarioHorarios elseif ($db->CampoUnico("SELECT 1 FROM pmieducar.servidor WHERE cod_servidor = '{$ref_servidor}' AND ref_cod_instituicao = '{$ref_cod_instituicao_servidor}'")) { $this->ref_servidor = $ref_servidor; $this->ref_cod_instituicao_servidor = $ref_cod_instituicao_servidor; - } } + } if (is_numeric($ref_servidor_substituto) && is_numeric($ref_cod_instituicao_substituto)) { if (class_exists('clsPmieducarServidor')) { @@ -194,55 +195,32 @@ class clsPmieducarQuadroHorarioHorarios elseif ($db->CampoUnico("SELECT 1 FROM pmieducar.servidor WHERE cod_servidor = '{$ref_servidor_substituto}' AND ref_cod_instituicao = '{$ref_cod_instituicao_substituto}'")) { $this->ref_servidor_substituto = $ref_servidor_substituto; $this->ref_cod_instituicao_substituto = $ref_cod_instituicao_substituto; - } } + } if (is_numeric($ref_ref_cod_disciplina) && is_numeric($ref_ref_cod_serie)) { - if (class_exists('clsPmieducarDisciplinaSerie')) { - $tmp_obj = new clsPmieducarDisciplinaSerie($ref_ref_cod_disciplina, - $ref_ref_cod_serie, 1); + $anoEscolarMapper = new ComponenteCurricular_Model_AnoEscolarDataMapper(); + $componenteAnos = $anoEscolarMapper->findAll(array(), array( + 'componenteCurricular' => $ref_ref_cod_disciplina, + 'anoEscolar' => $ref_ref_cod_serie) + ); - if (method_exists($tmp_obj, 'existe')) { - if ($tmp_obj->existe()) { - $this->ref_ref_cod_disciplina = $ref_ref_cod_disciplina; - $this->ref_ref_cod_serie = $ref_ref_cod_serie; - } - } - elseif (method_exists($tmp_obj, 'detalhe')) { - if ($tmp_obj->detalhe()) { - $this->ref_ref_cod_disciplina = $ref_ref_cod_disciplina; - $this->ref_ref_cod_serie = $ref_ref_cod_serie; - } - } - } - elseif ($db->CampoUnico("SELECT 1 FROM pmieducar.disciplina_serie WHERE ref_cod_disciplina = '{$ref_ref_cod_disciplina}' AND ref_cod_serie = '{$ref_ref_cod_serie}' AND ativo = '1'")) { - $this->ref_ref_cod_disciplina = $ref_ref_cod_disciplina; - $this->ref_ref_cod_serie = $ref_ref_cod_serie; - } + if (1 == count($componenteAnos)) { + $this->ref_ref_cod_disciplina = $ref_ref_cod_disciplina; + $this->ref_ref_cod_serie = $ref_ref_cod_serie; } + } if (is_numeric($ref_ref_cod_escola) && is_numeric($ref_ref_cod_serie) && is_numeric($ref_ref_cod_disciplina) ) { - if (class_exists('clsPmieducarEscolaSerieDisciplina')) { - $tmp_obj = new clsPmieducarEscolaSerieDisciplina($ref_ref_cod_serie, - $ref_ref_cod_escola, $ref_ref_cod_disciplina, 1); + $escolaSerieDisciplina = new clsPmieducarEscolaSerieDisciplina($ref_ref_cod_serie, + $ref_ref_cod_escola, $ref_ref_cod_disciplina, 1); - if (method_exists($tmp_obj, 'existe')) { - if ($tmp_obj->existe()) { - $this->ref_ref_cod_escola = $ref_ref_cod_escola; - } - } - elseif (method_exists($tmp_obj, 'detalhe')) { - if ($tmp_obj->detalhe()) { - $this->ref_ref_cod_escola = $ref_ref_cod_escola; - } - } - } - elseif ($db->CampoUnico("SELECT 1 FROM pmieducar.escola_serie_disciplina WHERE ref_ref_cod_escola = '{$ref_ref_cod_escola}' AND ref_ref_cod_serie = '{$ref_ref_cod_serie}' AND ref_cod_disciplina = '{$ref_ref_cod_disciplina}' AND ativo = '1'")) { - $this->ref_ref_cod_escola = $ref_ref_cod_escola; - } + if ($escolaSerieDisciplina->existe()) { + $this->ref_ref_cod_escola = $ref_ref_cod_escola; } + } if (is_numeric($ref_cod_quadro_horario)) { if (class_exists('clsPmieducarQuadroHorario')) { @@ -261,8 +239,8 @@ class clsPmieducarQuadroHorarioHorarios } elseif ($db->CampoUnico("SELECT 1 FROM pmieducar.quadro_horario WHERE cod_quadro_horario = '{$ref_cod_quadro_horario}'")) { $this->ref_cod_quadro_horario = $ref_cod_quadro_horario; - } } + } if (is_numeric($sequencial)) { $this->sequencial = $sequencial; diff --git a/ieducar/modules/ComponenteCurricular/Model/AnoEscolarDataMapper.php b/ieducar/modules/ComponenteCurricular/Model/AnoEscolarDataMapper.php index 3d8301c..fb9ae8f 100644 --- a/ieducar/modules/ComponenteCurricular/Model/AnoEscolarDataMapper.php +++ b/ieducar/modules/ComponenteCurricular/Model/AnoEscolarDataMapper.php @@ -51,8 +51,8 @@ class ComponenteCurricular_Model_AnoEscolarDataMapper extends CoreExt_DataMapper protected $_attributeMap = array( 'componenteCurricular' => 'componente_curricular_id', - 'anoEscolar' => 'ano_escolar_id', - 'cargaHoraria' => 'carga_horaria' + 'anoEscolar' => 'ano_escolar_id', + 'cargaHoraria' => 'carga_horaria' ); protected $_primaryKey = array( @@ -100,7 +100,7 @@ class ComponenteCurricular_Model_AnoEscolarDataMapper extends CoreExt_DataMapper SELECT mca.%s FROM - modules.%s mca, pmieducar.serie ps + %s mca, pmieducar.serie ps WHERE mca.%s = ps.cod_serie AND ps.ref_cod_curso = '%d'"; -- libgit2 0.21.2