Commit 6e96203a7bb1604b7d8c22482caf4d9c15508438
1 parent
1ba28ca0
Exists in
master
Refactoring para coding standards
Showing
1 changed file
with
845 additions
and
762 deletions
Show diff stats
ieducar/intranet/educar_matricula_cad.php
1 | <?php | 1 | <?php |
2 | -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * | ||
3 | - * * | ||
4 | - * @author Prefeitura Municipal de Itajaí * | ||
5 | - * @updated 29/03/2007 * | ||
6 | - * Pacote: i-PLB Software Público Livre e Brasileiro * | ||
7 | - * * | ||
8 | - * Copyright (C) 2006 PMI - Prefeitura Municipal de Itajaí * | ||
9 | - * ctima@itajai.sc.gov.br * | ||
10 | - * * | ||
11 | - * Este programa é software livre, você pode redistribuí-lo e/ou * | ||
12 | - * modificá-lo sob os termos da Licença Pública Geral GNU, conforme * | ||
13 | - * publicada pela Free Software Foundation, tanto a versão 2 da * | ||
14 | - * Licença como (a seu critério) qualquer versão mais nova. * | ||
15 | - * * | ||
16 | - * Este programa é distribuído na expectativa de ser útil, mas SEM * | ||
17 | - * QUALQUER GARANTIA. Sem mesmo a garantia implícita de COMERCIALI- * | ||
18 | - * ZAÇÃO ou de ADEQUAÇÃO A QUALQUER PROPÓSITO EM PARTICULAR. Con- * | ||
19 | - * sulte a Licença Pública Geral GNU para obter mais detalhes. * | ||
20 | - * * | ||
21 | - * Você deve ter recebido uma cópia da Licença Pública Geral GNU * | ||
22 | - * junto com este programa. Se não, escreva para a Free Software * | ||
23 | - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA * | ||
24 | - * 02111-1307, USA. * | ||
25 | - * * | ||
26 | - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ | ||
27 | -require_once ("include/clsBase.inc.php"); | ||
28 | -require_once ("include/clsCadastro.inc.php"); | ||
29 | -require_once ("include/clsBanco.inc.php"); | ||
30 | -require_once( "include/pmieducar/geral.inc.php" ); | ||
31 | 2 | ||
3 | +/** | ||
4 | + * i-Educar - Sistema de gestão escolar | ||
5 | + * | ||
6 | + * Copyright (C) 2006 Prefeitura Municipal de Itajaí | ||
7 | + * <ctima@itajai.sc.gov.br> | ||
8 | + * | ||
9 | + * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo | ||
10 | + * sob os termos da Licença Pública Geral GNU conforme publicada pela Free | ||
11 | + * Software Foundation; tanto a versão 2 da Licença, como (a seu critério) | ||
12 | + * qualquer versão posterior. | ||
13 | + * | ||
14 | + * Este programa é distribuído na expectativa de que seja útil, porém, SEM | ||
15 | + * NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU | ||
16 | + * ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral | ||
17 | + * do GNU para mais detalhes. | ||
18 | + * | ||
19 | + * Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto | ||
20 | + * com este programa; se não, escreva para a Free Software Foundation, Inc., no | ||
21 | + * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. | ||
22 | + * | ||
23 | + * @author Prefeitura Municipal de Itajaí <ctima@itajai.sc.gov.br> | ||
24 | + * @category i-Educar | ||
25 | + * @license @@license@@ | ||
26 | + * @package iEd_Pmieducar | ||
27 | + * @since Arquivo disponível desde a versão 1.0.0 | ||
28 | + * @version $Id$ | ||
29 | + */ | ||
30 | + | ||
31 | +require_once 'include/clsBase.inc.php'; | ||
32 | +require_once 'include/clsCadastro.inc.php'; | ||
33 | +require_once 'include/clsBanco.inc.php'; | ||
34 | +require_once 'include/pmieducar/geral.inc.php'; | ||
35 | + | ||
36 | +/** | ||
37 | + * clsIndexBase class. | ||
38 | + * | ||
39 | + * @author Prefeitura Municipal de Itajaí <ctima@itajai.sc.gov.br> | ||
40 | + * @category i-Educar | ||
41 | + * @license @@license@@ | ||
42 | + * @package iEd_Pmieducar | ||
43 | + * @since Classe disponível desde a versão 1.0.0 | ||
44 | + * @version @@package_version@@ | ||
45 | + */ | ||
32 | class clsIndexBase extends clsBase | 46 | class clsIndexBase extends clsBase |
33 | { | 47 | { |
34 | - function Formular() | ||
35 | - { | ||
36 | - $this->SetTitulo( "{$this->_instituicao} i-Educar - Matrícula" ); | ||
37 | - $this->processoAp = "578"; | ||
38 | - } | 48 | + function Formular() |
49 | + { | ||
50 | + $this->SetTitulo($this->_instituicao . ' i-Educar - Matrícula'); | ||
51 | + $this->processoAp = 578; | ||
52 | + } | ||
39 | } | 53 | } |
40 | 54 | ||
55 | +/** | ||
56 | + * indice class. | ||
57 | + * | ||
58 | + * @author Prefeitura Municipal de Itajaí <ctima@itajai.sc.gov.br> | ||
59 | + * @category i-Educar | ||
60 | + * @license @@license@@ | ||
61 | + * @package iEd_Pmieducar | ||
62 | + * @since Classe disponível desde a versão 1.0.0 | ||
63 | + * @version @@package_version@@ | ||
64 | + */ | ||
41 | class indice extends clsCadastro | 65 | class indice extends clsCadastro |
42 | { | 66 | { |
43 | - /** | ||
44 | - * Referencia pega da session para o idpes do usuario atual | ||
45 | - * | ||
46 | - * @var int | ||
47 | - */ | ||
48 | - var $pessoa_logada; | ||
49 | - | ||
50 | - var $cod_matricula; | ||
51 | - var $ref_cod_reserva_vaga; | ||
52 | - var $ref_ref_cod_escola; | ||
53 | - var $ref_ref_cod_serie; | ||
54 | - var $ref_usuario_exc; | ||
55 | - var $ref_usuario_cad; | ||
56 | - var $ref_cod_aluno; | ||
57 | - var $aprovado; | ||
58 | - var $data_cadastro; | ||
59 | - var $data_exclusao; | ||
60 | - var $ativo; | ||
61 | - var $ano; | ||
62 | - | ||
63 | - var $ref_cod_instituicao; | ||
64 | - var $ref_cod_curso; | ||
65 | - var $ref_cod_escola; | ||
66 | - | ||
67 | - var $matricula_transferencia; | ||
68 | - var $semestre; | ||
69 | - var $is_padrao; | ||
70 | - | ||
71 | - function Inicializar() | ||
72 | - { | ||
73 | - $retorno = "Novo"; | ||
74 | - @session_start(); | ||
75 | - $this->pessoa_logada = $_SESSION['id_pessoa']; | ||
76 | - @session_write_close(); | ||
77 | - | ||
78 | -// die('Serviço indisponivel temporariamente!'); | ||
79 | - | ||
80 | - $this->cod_matricula=$_GET["cod_matricula"]; | ||
81 | - $this->ref_cod_aluno=$_GET["ref_cod_aluno"]; | ||
82 | - | ||
83 | - $obj_aluno = new clsPmieducarAluno($this->ref_cod_aluno); | ||
84 | - if(!$obj_aluno->existe()) | ||
85 | - { | ||
86 | - header("location: educar_matricula_lst.php"); | ||
87 | - die; | ||
88 | - } | ||
89 | - | ||
90 | - $obj_permissoes = new clsPermissoes(); | ||
91 | - $obj_permissoes->permissao_cadastra( 578, $this->pessoa_logada, 7, "educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}" ); | ||
92 | - | ||
93 | - if ( is_numeric( $this->cod_matricula ) ) | ||
94 | - { | ||
95 | - if( $obj_permissoes->permissao_excluir( 578, $this->pessoa_logada, 7 ) ) | ||
96 | - { | ||
97 | - $this->Excluir(); | ||
98 | - } | ||
99 | - } | ||
100 | -// else{ | ||
101 | -// header("location: educar_matricula_lst.php"); | ||
102 | -// die; | ||
103 | -// } | ||
104 | - $this->url_cancelar = "educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}"; | ||
105 | - $this->nome_url_cancelar = "Cancelar"; | ||
106 | - return $retorno; | ||
107 | - } | ||
108 | - | ||
109 | - function Gerar() | ||
110 | - { | ||
111 | - // primary keys | ||
112 | - $this->campoOculto( "cod_matricula", $this->cod_matricula ); | ||
113 | - $this->campoOculto( "ref_cod_aluno", $this->ref_cod_aluno ); | ||
114 | - | ||
115 | - $obj_aluno = new clsPmieducarAluno(); | ||
116 | - $lst_aluno = $obj_aluno->lista( $this->ref_cod_aluno,null,null,null,null,null,null,null,null,null,1 ); | ||
117 | - if ( is_array($lst_aluno) ) | ||
118 | - { | ||
119 | - $det_aluno = array_shift($lst_aluno); | ||
120 | - $this->nm_aluno = $det_aluno["nome_aluno"]; | ||
121 | -// $this->campoRotulo( "nm_aluno", "Aluno", $this->nm_aluno, 30, 255, false,false,false,"","","","",true ); | ||
122 | - $this->campoRotulo( "nm_aluno", "Aluno", $this->nm_aluno ); | ||
123 | - } | ||
124 | - | ||
125 | - /** | ||
126 | - * verifica se nao existem matriculas | ||
127 | - * e exibe campo check para informar | ||
128 | - * se a matricula vem de transferencia | ||
129 | - * ex: um aluno esta sendo matriculado no 3º ano | ||
130 | - * ele veio de outra escola mas nao vem como transferencia | ||
131 | - * isto eh necessario para o relatorio de movimentacao mensal | ||
132 | - */ | ||
133 | - | ||
134 | - $obj_matricula = new clsPmieducarMatricula(); | ||
135 | - $lst_matricula = $obj_matricula->lista(null, null, null, null, null, null, $this->ref_cod_aluno); | ||
136 | - | ||
137 | - if(!$lst_matricula) | ||
138 | - { | ||
139 | - /** | ||
140 | - * primeira matricula do sistema exibe campo check | ||
141 | - */ | ||
142 | - | ||
143 | - $this->campoCheck("matricula_transferencia", "Matrícula de Transferência","","Caso seja transfência externa por favor marque esta opção."); | ||
144 | - } | ||
145 | - | ||
146 | - // foreign keys | ||
147 | -// $obrigatorio = true; | ||
148 | - $instituicao_obrigatorio = true; | ||
149 | - $curso_obrigatorio = true; | ||
150 | - $escola_curso_obrigatorio = true; | ||
151 | - $get_escola = true; | ||
152 | - $get_curso = true; | ||
153 | -// $get_escola_curso = true; | ||
154 | - $get_escola_curso_serie = true; | ||
155 | - $get_matricula = true; | ||
156 | - $sem_padrao = true; | ||
157 | - | ||
158 | - include("include/pmieducar/educar_campo_lista.php"); | ||
159 | - | ||
160 | - if (is_numeric($this->ref_cod_curso)) | ||
161 | - { | ||
162 | - $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); | ||
163 | - $det_curso = $obj_curso->detalhe(); | ||
164 | - if (is_numeric($det_curso["ref_cod_tipo_avaliacao"])) | ||
165 | - { | ||
166 | - $this->campoOculto("apagar_radios", $det_curso["padrao_ano_escolar"]); | ||
167 | - $this->campoOculto("is_padrao", $det_curso["padrao_ano_escolar"]); | ||
168 | - } | ||
169 | - } | ||
170 | - | ||
171 | - if ( $this->ref_cod_escola ) | ||
172 | - { | ||
173 | - $this->ref_ref_cod_escola = $this->ref_cod_escola; | ||
174 | - } | ||
175 | - | ||
176 | - $this->acao_enviar = "valida()"; | ||
177 | - } | ||
178 | - | ||
179 | - function Novo() | ||
180 | - { | ||
181 | - @session_start(); | ||
182 | - $this->pessoa_logada = $_SESSION['id_pessoa']; | ||
183 | - @session_write_close(); | ||
184 | - | ||
185 | - $obj_permissoes = new clsPermissoes(); | ||
186 | - $obj_permissoes->permissao_cadastra( 578, $this->pessoa_logada, 7, "educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}" ); | ||
187 | - | ||
188 | - $obj_escola_ano_letivo = new clsPmieducarEscolaAnoLetivo(); | ||
189 | - $lst_escola_ano_letivo = $obj_escola_ano_letivo->lista( $this->ref_cod_escola,null,null,null,1,null,null,null,null,1 ); | ||
190 | - if ( is_array($lst_escola_ano_letivo) ) | ||
191 | - { | ||
192 | - $det_escola_ano_letivo = array_shift($lst_escola_ano_letivo); | ||
193 | - $this->ano = $det_escola_ano_letivo["ano"]; | ||
194 | - | ||
195 | - $obj_reserva_vaga = new clsPmieducarReservaVaga(); | ||
196 | - $lst_reserva_vaga = $obj_reserva_vaga->lista( null,$this->ref_cod_escola,$this->ref_ref_cod_serie,null,null,$this->ref_cod_aluno,null,null,null,null,1 ); | ||
197 | - // verifica se existe reserva de vaga para o aluno | ||
198 | - if ( is_array($lst_reserva_vaga) ) | ||
199 | - { | ||
200 | - $det_reserva_vaga = array_shift($lst_reserva_vaga); | ||
201 | - $this->ref_cod_reserva_vaga = $det_reserva_vaga["cod_reserva_vaga"]; | ||
202 | - | ||
203 | - $obj_reserva_vaga = new clsPmieducarReservaVaga( $this->ref_cod_reserva_vaga,null,null,$this->pessoa_logada,null,null,null,null,0 ); | ||
204 | - $editou = $obj_reserva_vaga->edita(); | ||
205 | - if ( !$editou ) | ||
206 | - { | ||
207 | - $this->mensagem = "Edição não realizada.<br>"; | ||
208 | - echo "<!--\nErro ao editar clsPmieducarReservaVaga\nvalores obrigatorios\nis_numeric( $this->ref_cod_reserva_vaga ) && is_numeric( $this->pessoa_logada )\n-->"; | ||
209 | - return false; | ||
210 | - } | ||
211 | - } | ||
212 | - | ||
213 | - $vagas_restantes = 1; | ||
214 | - | ||
215 | - if ( !$this->ref_cod_reserva_vaga ) | ||
216 | - { | ||
217 | - $obj_turmas = new clsPmieducarTurma(); | ||
218 | - $lst_turmas = $obj_turmas->lista( null,null,null,$this->ref_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,null,null,null,null,null,null,null,true ); | ||
219 | - //,$this->ref_cod_escola,$this->ref_ref_cod_serie | ||
220 | - //echo "$lst_turmas = $obj_turmas->lista( null,null,null,$this->ref_ref_cod_serie, $this->ref_cod_escola,null,null,null,null,null,null,null,null,null,1 );" | ||
221 | - //print_r($lst_turmas);die; | ||
222 | - | ||
223 | - if ( is_array($lst_turmas) ) | ||
224 | - { | ||
225 | - $total_vagas = 0; | ||
226 | - foreach ( $lst_turmas AS $turmas ) | ||
227 | - { | ||
228 | - $total_vagas += $turmas["max_aluno"]; | ||
229 | - } | ||
230 | - } | ||
231 | - else | ||
232 | - { | ||
233 | - $this->mensagem = "Série não possui nenhuma Turma cadastrada.<br>"; | ||
234 | - return false; | ||
235 | - } | ||
236 | - | ||
237 | - $obj_matricula = new clsPmieducarMatricula(); | ||
238 | - $lst_matricula = $obj_matricula->lista( null,null,$this->ref_cod_escola,$this->ref_ref_cod_serie,null,null,null,3,null,null,null,null,1,$this->ano,$this->ref_cod_curso,$this->ref_cod_instituicao,1 ); | ||
239 | - if ( is_array($lst_matricula) ) | ||
240 | - { | ||
241 | - $matriculados = count($lst_matricula); | ||
242 | - } | ||
243 | - | ||
244 | - $obj_reserva_vaga = new clsPmieducarReservaVaga(); | ||
245 | - $lst_reserva_vaga = $obj_reserva_vaga->lista( null,$this->ref_cod_escola,$this->ref_ref_cod_serie,null,null,null,null,null,null,null,1,$this->ref_cod_instituicao,$this->ref_cod_curso ); | ||
246 | - if ( is_array($lst_reserva_vaga) ) | ||
247 | - { | ||
248 | - $reservados = count($lst_reserva_vaga); | ||
249 | - } | ||
250 | - | ||
251 | - $vagas_restantes = $total_vagas - ($matriculados + $reservados); | ||
252 | - } | ||
253 | - | ||
254 | - if ($vagas_restantes <= 0) | ||
255 | - { | ||
256 | - echo "<script> if(!confirm('Excedido o número de total de vagas para Matricula! \\n Número total de matriculados:$matriculados \\n Número total de vagas reservadas: $reservados \\n Número total de vagas: $total_vagas \\n Deseja mesmo assim realizar a Matrícula?')) window.location = 'educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}';</script>"; | ||
257 | -// return; | ||
258 | - } | ||
259 | - | ||
260 | - $obj_matricula_aluno = new clsPmieducarMatricula(); | ||
261 | - $lst_matricula_aluno = $obj_matricula_aluno->lista(null, null, null, null, null, null, $this->ref_cod_aluno); | ||
262 | - if(!$lst_matricula_aluno) | ||
263 | - { | ||
264 | - /** | ||
265 | - * primeira matricula do sistema - consistencia - | ||
266 | - */ | ||
267 | - $this->matricula_transferencia = $this->matricula_transferencia == 'on' ? 'true' : 'false'; | ||
268 | - } | ||
269 | - else | ||
270 | - { | ||
271 | - $this->matricula_transferencia = false; | ||
272 | - } | ||
273 | - | ||
274 | - if ($this->is_padrao == 1) | ||
275 | - { | ||
276 | - $this->semestre = null; | ||
277 | - } | ||
278 | - $obj = new clsPmieducarMatricula( null, $this->ref_cod_reserva_vaga, $this->ref_cod_escola, $this->ref_ref_cod_serie, null, $this->pessoa_logada, $this->ref_cod_aluno, 3, null, null, 1, $this->ano, 1, null, null, null, null, $this->ref_cod_curso, $this->matricula_transferencia, $this->semestre ); | ||
279 | - | ||
280 | - $cadastrou = $obj->cadastra(); | ||
281 | - if( $cadastrou ) | ||
282 | - { | ||
283 | - //$obj_matricula = new clsPmieducarMatricula(); | ||
284 | - // $lst_matricula = $obj_matricula->lista(null,null,null,null,null,null,$this->ref_cod_aluno); | ||
285 | - /** | ||
286 | - * desmarca todas as matriculas como ultima matricula do aluno | ||
287 | - */ | ||
288 | - /* if($lt_matricula) | ||
289 | - { | ||
290 | - foreach ($lst_matricula as $matricula) | ||
291 | - { | ||
292 | - if($matricula['cod_matricula'] != $cadastrou) | ||
293 | - { | ||
294 | - $obj_matricula = new clsPmieducarMatricula($matricula['cod_matricula'],null,null,null,null,null,null,null,null,null,null,null,0); | ||
295 | - $obj_matricula->edita(); | ||
296 | - } | ||
297 | - } | ||
298 | - }*/ | ||
299 | - | ||
300 | - if($this->pessoa_logada == 21317) | ||
301 | - $this->desativaMatriculasSequencia($cadastrou); | ||
302 | - | ||
303 | - | ||
304 | - $obj_transferencia = new clsPmieducarTransferenciaSolicitacao(); | ||
305 | - $lst_transferencia = $obj_transferencia->lista( null,null,null,null,null,null,null,null,null,null,null,1,null,null,$this->ref_cod_aluno,false,null,null,null,true,false ); | ||
306 | - // verifica se existe solicitacao de transferencia do aluno | ||
307 | - if ( is_array($lst_transferencia) ) | ||
308 | - { | ||
309 | - //echo "<pre>"; print_r("if"); die(); | ||
310 | - $det_transferencia = array_shift($lst_transferencia); | ||
311 | - | ||
312 | - $obj_transferencia = new clsPmieducarTransferenciaSolicitacao( $det_transferencia['cod_transferencia_solicitacao'],null,$this->pessoa_logada,null,null,null,null,null,null,0 ); | ||
313 | - $editou2 = $obj_transferencia->edita(); | ||
314 | - if ( $editou2 ) | ||
315 | - { | ||
316 | - $obj = new clsPmieducarMatricula( $det_transferencia['ref_cod_matricula_saida'],null,null,null,$this->pessoa_logada,null,null,4,null,null,1,null,0 ); | ||
317 | - $editou3 = $obj->edita(); | ||
318 | - if (!$editou3) | ||
319 | - { | ||
320 | - $this->mensagem = "Edição não realizada.<br>"; | ||
321 | - echo "<!--\nErro ao editar clsPmieducarMatricula\nvalores obrigatorios\nis_numeric( {$det_transferencia['ref_cod_matricula_saida']} ) && is_numeric( $this->pessoa_logada )\n-->"; | ||
322 | - return false; | ||
323 | - } | ||
324 | - } | ||
325 | - else | ||
326 | - { | ||
327 | - $this->mensagem = "Edição não realizada.<br>"; | ||
328 | - echo "<!--\nErro ao cadastrar clsPmieducarTransferenciaSolicitacao\nvalores obrigatorios\nis_numeric( {$det_transferencia['cod_transferencia_solicitacao']} ) && is_numeric( {$this->pessoa_logada} ) \n-->"; | ||
329 | - return false; | ||
330 | - } | ||
331 | - } | ||
332 | - else | ||
333 | - { | ||
334 | - //echo "<pre>"; print_r("else"); die(); | ||
335 | - $obj_transferencia = new clsPmieducarTransferenciaSolicitacao(); | ||
336 | - $lst_transferencia = $obj_transferencia->lista( null,null,null,null,null,null,null,null,null,null,null,1,null,null,$this->ref_cod_aluno,false,null,null,null,false,false ); | ||
337 | - // verifica se existe solicitacao de transferencia do aluno | ||
338 | - if ( is_array($lst_transferencia) ) | ||
339 | - { | ||
340 | - // verifica cada solicitacao de transferencia do aluno | ||
341 | - foreach ($lst_transferencia as $transferencia) | ||
342 | - { | ||
343 | - $obj_matricula = new clsPmieducarMatricula( $transferencia['ref_cod_matricula_saida'] ); | ||
344 | - $det_matricula = $obj_matricula->detalhe(); | ||
345 | - | ||
346 | - // caso a solicitacao seja para uma mesma serie | ||
347 | - if ($det_matricula['ref_ref_cod_serie'] == $this->ref_ref_cod_serie) | ||
348 | - { | ||
349 | - $ref_cod_transferencia = $transferencia["cod_transferencia_solicitacao"]; | ||
350 | - break; | ||
351 | - } | ||
352 | - else // caso a solicitacao seja para a serie da sequencia | ||
353 | - { | ||
354 | - $obj_sequencia = new clsPmieducarSequenciaSerie( $det_matricula['ref_ref_cod_serie'],$this->ref_ref_cod_serie,null,null,null,null,1 ); | ||
355 | - if ($obj_sequencia->existe()) | ||
356 | - { | ||
357 | - $ref_cod_transferencia = $transferencia["cod_transferencia_solicitacao"]; | ||
358 | - break; | ||
359 | - } | ||
360 | - } | ||
361 | - $ref_cod_transferencia = $transferencia["cod_transferencia_solicitacao"]; | ||
362 | - } | ||
363 | -// $ref_cod_transferencia = $det_transferencia["cod_transferencia_solicitacao"]; | ||
364 | -// echo "<pre>"; echo "<br><br><br>"; print_r($ref_cod_transferencia); die(); | ||
365 | - if ($ref_cod_transferencia) | ||
366 | - { | ||
367 | - $obj_transferencia = new clsPmieducarTransferenciaSolicitacao( $ref_cod_transferencia,null,$this->pessoa_logada,null,$cadastrou,null,null,null,null,1,date("Y-m-d") ); | ||
368 | - $editou2 = $obj_transferencia->edita(); | ||
369 | - if ( $editou2 ) | ||
370 | - { | ||
371 | - $obj_transferencia = new clsPmieducarTransferenciaSolicitacao( $ref_cod_transferencia ); | ||
372 | - $det_transferencia = $obj_transferencia->detalhe(); | ||
373 | - $matricula_saida = $det_transferencia["ref_cod_matricula_saida"]; | ||
374 | - $obj_matricula = new clsPmieducarMatricula( $matricula_saida ); | ||
375 | - $det_matricula = $obj_matricula->detalhe(); | ||
376 | - // caso a situacao da matricula do aluno esteja em andamento | ||
377 | - if( $det_matricula['aprovado'] == 3 ) | ||
378 | - { | ||
379 | - $obj_matricula = new clsPmieducarMatricula( $cadastrou,null,null,null,$this->pessoa_logada,null,null,null,null,null,1,null,null,$det_matricula['modulo'] ); | ||
380 | - $editou_mat = $obj_matricula->edita(); | ||
381 | - if ($editou_mat) | ||
382 | - { | ||
383 | - $obj_matricula_turma = new clsPmieducarMatriculaTurma(); | ||
384 | - $lst_matricula_turma = $obj_matricula_turma->lista( $matricula_saida,null,null,null,null,null,null,null,1 ); | ||
385 | - if (is_array($lst_matricula_turma)) | ||
386 | - { | ||
387 | - $det_matricula_turma = array_shift($lst_matricula_turma); | ||
388 | - | ||
389 | - $obj_matricula_turma = new clsPmieducarMatriculaTurma( $matricula_saida,$det_matricula_turma['ref_cod_turma'],$this->pessoa_logada,null,null,null,0,null,$det_matricula_turma['sequencial'] ); | ||
390 | - $editou_mat_turma = $obj_matricula_turma->edita(); | ||
391 | - if (!$editou_mat_turma) | ||
392 | - { | ||
393 | - $this->mensagem = "Não foi possível editar a Matrícula Turma.<br>"; | ||
394 | - return false; | ||
395 | - } | ||
396 | - } | ||
397 | - // armazena as disciplinas utilizadas da nova escola | ||
398 | - $obj_esd = new clsPmieducarEscolaSerieDisciplina(); | ||
399 | - $lst_esd = $obj_esd->lista( $this->ref_ref_cod_serie,$this->ref_cod_escola,null,1 ); | ||
400 | - if (is_array($lst_esd)) | ||
401 | - { | ||
402 | - foreach ($lst_esd as $campo) | ||
403 | - { | ||
404 | - $disciplinas[$campo['ref_cod_disciplina']] = $campo['ref_cod_disciplina']; | ||
405 | - } | ||
406 | - } | ||
407 | - // lista as notas que o aluno ja tinha | ||
408 | - $obj_nota_aluno = new clsPmieducarNotaAluno(); | ||
409 | - $lst_nota_aluno = $obj_nota_aluno->lista( null,null,null,$this->ref_ref_cod_serie,null,null,$matricula_saida,null,null,null,null,null,null,1 ); | ||
410 | - if (is_array($lst_nota_aluno)) | ||
411 | - { | ||
412 | - foreach ($lst_nota_aluno as $campo) | ||
413 | - { | ||
414 | - if ($disciplinas[$campo['ref_cod_disciplina']]) | ||
415 | - { | ||
416 | - // cadastra as notas existentes na nova matricula | ||
417 | - $obj_nota_aluno = new clsPmieducarNotaAluno( null,$campo['ref_sequencial'],$campo['ref_ref_cod_tipo_avaliacao'],$this->ref_ref_cod_serie,$this->ref_cod_escola,$campo['ref_cod_disciplina'],$cadastrou,null,$this->pessoa_logada,null,null,1,$campo['modulo'] ); | ||
418 | - $cadastrou_nota = $obj_nota_aluno->cadastra(); | ||
419 | - if (!$cadastrou_nota) | ||
420 | - { | ||
421 | - $this->mensagem = "Cadastro não realizado.<br>"; | ||
422 | - echo "<!--\nErro ao cadastrar clsPmieducarNotaAluno\nvalores obrigatorios\nis_numeric( {$campo['ref_sequencial']} ) && is_numeric( {$campo['ref_ref_cod_tipo_avaliacao']} ) && is_numeric( $this->ref_ref_cod_serie ) && is_numeric( $this->ref_cod_escola ) && is_numeric( {$campo['ref_cod_disciplina']} ) && is_numeric( $cadastrou ) && is_numeric( $this->pessoa_logada ) && is_numeric( {$campo['modulo']} )\n-->"; | ||
423 | - return false; | ||
424 | - } | ||
425 | - } | ||
426 | - } | ||
427 | - } | ||
428 | - // lista as faltas que o aluno ja tinha | ||
429 | - $obj_falta_aluno = new clsPmieducarFaltaAluno(); | ||
430 | - $lst_falta_aluno = $obj_falta_aluno->lista( null,null,null,$this->ref_ref_cod_serie,null,null,$matricula_saida,null,null,null,null,null,1 ); | ||
431 | - if (is_array($lst_falta_aluno)) | ||
432 | - { | ||
433 | - foreach ($lst_falta_aluno as $campo) | ||
434 | - { | ||
435 | - if ($disciplinas[$campo['ref_cod_disciplina']]) | ||
436 | - { | ||
437 | - // cadastra as faltas existentes na nova matricula | ||
438 | - $obj_falta_aluno = new clsPmieducarFaltaAluno( null,null,$this->pessoa_logada,$this->ref_ref_cod_serie,$this->ref_cod_escola,$campo['ref_cod_disciplina'],$cadastrou,$campo['faltas'],null,null,1,$campo['modulo'] ); | ||
439 | - $cadastrou_falta = $obj_falta_aluno->cadastra(); | ||
440 | - if (!$cadastrou_falta) | ||
441 | - { | ||
442 | - $this->mensagem = "Cadastro não realizado.<br>"; | ||
443 | - echo "<!--\nErro ao cadastrar clsPmieducarFaltaAluno\nvalores obrigatorios\nis_numeric( $this->pessoa_logada ) && is_numeric( $this->ref_ref_cod_serie ) && is_numeric( $this->ref_cod_escola ) && is_numeric( {$campo['ref_cod_disciplina']} ) && is_numeric( $cadastrou ) && is_numeric( {$campo['faltas']} ) && is_numeric( {$campo['modulo']} )\n-->"; | ||
444 | - return false; | ||
445 | - } | ||
446 | - } | ||
447 | - } | ||
448 | - } | ||
449 | - // lista as notas que o aluno ja tinha (globalizada) | ||
450 | - $obj_faltas = new clsPmieducarFaltas(); | ||
451 | - $lst_faltas = $obj_faltas->lista( $matricula_saida ); | ||
452 | - if (is_array($lst_faltas)) | ||
453 | - { | ||
454 | - foreach ($lst_faltas as $campo) | ||
455 | - { | ||
456 | - // cadastra as faltas existentes na nova matricula | ||
457 | - $obj_faltas = new clsPmieducarFaltas( $cadastrou,$campo['sequencial'],$this->pessoa_logada,$campo['falta'] ); | ||
458 | - $cadastrou_faltas = $obj_faltas->cadastra(); | ||
459 | - if (!$cadastrou_faltas) | ||
460 | - { | ||
461 | - $this->mensagem = "Cadastro não realizado.<br>"; | ||
462 | - echo "<!--\nErro ao cadastrar clsPmieducarFaltas\nvalores obrigatorios\nis_numeric( $cadastrou ) && is_numeric( {$campo['sequencial']} ) && is_numeric( $this->pessoa_logada ) && is_numeric( {$campo['falta']} )\n-->"; | ||
463 | - return false; | ||
464 | - } | ||
465 | - } | ||
466 | - } | ||
467 | - } | ||
468 | - } | ||
469 | - | ||
470 | - $obj = new clsPmieducarMatricula( $matricula_saida,null,null,null,$this->pessoa_logada,null,null,4,null,null,1,null,0 ); | ||
471 | - $editou3 = $obj->edita(); | ||
472 | - if (!$editou3) | ||
473 | - { | ||
474 | - $this->mensagem = "Edição não realizada.<br>"; | ||
475 | - echo "<!--\nErro ao editar clsPmieducarMatricula\nvalores obrigatorios\nis_numeric( $matricula_saida ) && is_numeric( $this->pessoa_logada )\n-->"; | ||
476 | - return false; | ||
477 | - } | ||
478 | - } | ||
479 | - else | ||
480 | - { | ||
481 | - $this->mensagem = "Edição não realizada.<br>"; | ||
482 | - echo "<!--\nErro ao editar clsPmieducarTransferenciaSolicitacao\nvalores obrigatorios\nis_numeric( $ref_cod_transferencia ) && is_numeric( $cadastrou ) && is_numeric( $this->pessoa_logada )\n-->"; | ||
483 | - return false; | ||
484 | - } | ||
485 | - } | ||
486 | - } | ||
487 | - } | ||
488 | - $this->mensagem .= "Cadastro efetuado com sucesso.<br>"; | ||
489 | - header( "Location: educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}" ); | ||
490 | - die(); | ||
491 | - return true; | ||
492 | - } | ||
493 | - $this->mensagem = "Cadastro não realizado.<br>"; | ||
494 | - echo "<!--\nErro ao cadastrar clsPmieducarMatricula\nvalores obrigatorios\nis_numeric( $this->ref_cod_escola ) && is_numeric( $this->ref_ref_cod_serie ) && is_numeric( $this->pessoa_logada ) && is_numeric( $this->ref_cod_aluno ) && is_numeric( $this->ano )\n-->"; | ||
495 | - return false; | ||
496 | - } | ||
497 | - else | ||
498 | - { | ||
499 | - $this->mensagem = "Não foi possível encontrar o Ano Letivo em andamento da Escola.<br>"; | ||
500 | - return false; | ||
501 | - } | ||
502 | - } | ||
503 | - | ||
504 | - function Excluir() | ||
505 | - { | ||
506 | - @session_start(); | ||
507 | - $this->pessoa_logada = $_SESSION['id_pessoa']; | ||
508 | - @session_write_close(); | ||
509 | - | ||
510 | - $obj_permissoes = new clsPermissoes(); | ||
511 | - $obj_permissoes->permissao_excluir( 578, $this->pessoa_logada, 7, "educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}" ); | ||
512 | - | ||
513 | - $obj_matricula_turma = new clsPmieducarMatriculaTurma(); | ||
514 | - $lst_matricula_turma = $obj_matricula_turma->lista( $this->cod_matricula,null,null,null,null,null,null,null,1 ); | ||
515 | - if (is_array($lst_matricula_turma)) | ||
516 | - { | ||
517 | - $det_matricula_turma = array_shift($lst_matricula_turma); | ||
518 | - $obj_matricula_turma = new clsPmieducarMatriculaTurma( $det_matricula_turma["ref_cod_matricula"],$det_matricula_turma["ref_cod_turma"],$this->pessoa_logada,null,null,null,0,null,$det_matricula_turma["sequencial"] ); | ||
519 | - $editou = $obj_matricula_turma->edita(); | ||
520 | - if (!$editou) | ||
521 | - { | ||
522 | - $this->mensagem = "Edição não realizada.<br>"; | ||
523 | - echo "<!--\nErro ao editar clsPmieducarMatriculaTurma\nvalores obrigatorios\nif( is_numeric( {$det_matricula_turma["ref_cod_matricula"]} ) && is_numeric( {$det_matricula_turma["ref_cod_turma"]} ) && is_numeric( {$det_matricula_turma["sequencial"]} ) && is_numeric( $this->pessoa_logada ) )\n-->"; | ||
524 | - return false; | ||
525 | - } | ||
526 | - } | ||
527 | - | ||
528 | - $obj_matricula = new clsPmieducarMatricula( $this->cod_matricula ); | ||
529 | - $det_matricula = $obj_matricula->detalhe(); | ||
530 | - $ref_cod_serie = $det_matricula["ref_ref_cod_serie"]; | ||
531 | - | ||
532 | - $obj_sequencia = new clsPmieducarSequenciaSerie(); | ||
533 | - $lst_sequencia = $obj_sequencia->lista( null,$ref_cod_serie,null,null,null,null,null,null,1 ); | ||
534 | - // verifica se a serie da matricula cancelada eh sequencia de alguma outra serie | ||
535 | - if ( is_array($lst_sequencia) ) | ||
536 | - { | ||
537 | - $det_sequencia = array_shift($lst_sequencia); | ||
538 | - $ref_serie_origem = $det_sequencia["ref_serie_origem"]; | ||
539 | - | ||
540 | - $obj_matricula = new clsPmieducarMatricula(); | ||
541 | - $lst_matricula = $obj_matricula->lista( null,null,null,$ref_serie_origem,null,null,$this->ref_cod_aluno,null,null,null,null,null,1,null,null,null,0 ); | ||
542 | - // verifica se o aluno tem matricula na serie encontrada (sequencia) | ||
543 | - if ( is_array($lst_matricula) ) | ||
544 | - { | ||
545 | - $det_matricula = array_shift($lst_matricula); | ||
546 | - $ref_cod_matricula = $det_matricula["cod_matricula"]; | ||
547 | - | ||
548 | - $obj = new clsPmieducarMatricula( $ref_cod_matricula,null,null,null,$this->pessoa_logada,null,null,null,null,null,1,null,1 ); | ||
549 | - $editou1 = $obj->edita(); | ||
550 | - if( !$editou1 ) | ||
551 | - { | ||
552 | - $this->mensagem = "Não foi possível editar a Última Matrícula da Sequência.<br>"; | ||
553 | - return false; | ||
554 | - } | ||
555 | - } | ||
556 | - } | ||
557 | - | ||
558 | - $obj = new clsPmieducarMatricula( $this->cod_matricula,null,null,null,$this->pessoa_logada,null,null,null,null,null,0 ); | ||
559 | - $excluiu = $obj->excluir(); | ||
560 | - if( $excluiu ) | ||
561 | - { | ||
562 | - $this->mensagem .= "Exclusão efetuada com sucesso.<br>"; | ||
563 | - header( "Location: educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}" ); | ||
564 | - die(); | ||
565 | - return true; | ||
566 | - } | ||
567 | - | ||
568 | - $this->mensagem = "Exclusão não realizada.<br>"; | ||
569 | - echo "<!--\nErro ao excluir clsPmieducarMatricula\nvalores obrigatorios\nif( is_numeric( $this->cod_matricula ) && is_numeric( $this->pessoa_logada ) )\n-->"; | ||
570 | - return false; | ||
571 | - } | ||
572 | - | ||
573 | - /** | ||
574 | - * marca como zero o campo ultima_matricula | ||
575 | - * das matriculas da sequencia | ||
576 | - * | ||
577 | - */ | ||
578 | - function desativaMatriculasSequencia($ultima_matricula) | ||
579 | - { | ||
580 | - | ||
581 | - $db2 = new clsBanco(); | ||
582 | - | ||
583 | - $db2->Consulta( " | ||
584 | - SELECT | ||
585 | - so.ref_cod_curso as curso_origem | ||
586 | - , ss.ref_serie_origem as serie_origem | ||
587 | - , sd.ref_cod_curso as curso_destino | ||
588 | - , ss.ref_serie_destino as serie_destino | ||
589 | - FROM | ||
590 | - pmieducar.sequencia_serie ss | ||
591 | - , pmieducar.serie so | ||
592 | - , pmieducar.serie sd | ||
593 | - WHERE | ||
594 | - ss.ativo = 1 | ||
595 | - AND ref_serie_origem = so.cod_serie | ||
596 | - AND ref_serie_destino = sd.cod_serie | ||
597 | - ORDER BY | ||
598 | - ss.ref_serie_origem ASC | ||
599 | - "); | ||
600 | - | ||
601 | - if ($db2->numLinhas()) | ||
602 | - { | ||
603 | - while ( $db2->ProximoRegistro() ) | ||
604 | - { | ||
605 | - $sequencias[] = $db2->Tupla(); | ||
606 | - } | ||
607 | - } | ||
608 | - | ||
609 | - $db2->Consulta( " | ||
610 | - SELECT | ||
611 | - distinct( o.ref_serie_origem ) | ||
612 | - FROM | ||
613 | - pmieducar.sequencia_serie o | ||
614 | - , pmieducar.escola_serie es | ||
615 | - WHERE NOT EXISTS | ||
616 | - ( | ||
617 | - SELECT | ||
618 | - 1 | ||
619 | - FROM | ||
620 | - pmieducar.sequencia_serie d | ||
621 | - WHERE | ||
622 | - o.ref_serie_origem = d.ref_serie_destino | ||
623 | - ) | ||
624 | - "); | ||
625 | - | ||
626 | - if ($db2->numLinhas()) | ||
627 | - { | ||
628 | - $pertence_sequencia = false; | ||
629 | - $achou_serie = false; | ||
630 | - $reset = false; | ||
631 | - | ||
632 | - $serie_sequencia[] = $this->ref_ref_cod_serie; | ||
633 | - | ||
634 | - while ( $db2->ProximoRegistro() ) | ||
635 | - { | ||
636 | - list( $ini_sequencia ) = $db2->Tupla(); | ||
637 | - | ||
638 | - $ini_serie = $ini_sequencia; | ||
639 | - reset($sequencias); | ||
640 | - | ||
641 | - do | ||
642 | - { | ||
643 | - if( $reset ) | ||
644 | - { | ||
645 | - reset($sequencias); | ||
646 | - $reset = false; | ||
647 | - } | ||
648 | - | ||
649 | - $sequencia = current($sequencias); | ||
650 | - $aux_serie = $sequencia['serie_origem']; | ||
651 | - | ||
652 | - if ($ini_serie == $aux_serie) | ||
653 | - { | ||
654 | - if ($this->ref_ref_cod_serie == $aux_serie) | ||
655 | - { | ||
656 | - // achou serie da matricula | ||
657 | - $achou_serie = true; | ||
658 | - } | ||
659 | - if ($sequencia['curso_destino'] == $this->ref_cod_curso) | ||
660 | - { | ||
661 | - // curso pertence a sequencia | ||
662 | - $pertence_sequencia = true; | ||
663 | - $serie_sequencia[] = $sequencia['serie_destino']; | ||
664 | - $ini_serie = $sequencia['serie_destino']; | ||
665 | - $reset = true; | ||
666 | - } | ||
667 | - else | ||
668 | - { | ||
669 | - $ini_serie = $sequencia['serie_destino']; | ||
670 | - $reset = true; | ||
671 | - } | ||
672 | - } | ||
673 | - } while ( each($sequencias) ); | ||
674 | - | ||
675 | - if ($achou_serie && $pertence_sequencia) | ||
676 | - { | ||
677 | - // curso escolhido pertence a sequencia da serie da matricula | ||
678 | - $series = implode(",",$serie_sequencia); | ||
679 | - $db2->Consulta("UPDATE pmieducar.matricula SET ultima_matricula = 0 WHERE ref_ref_cod_serie IN ($series) AND ref_cod_aluno = {$this->ref_cod_aluno} AND cod_matricula != $ultima_matricula "); | ||
680 | - die("UPDATE pmieducar.matricula SET ultima_matricula = 0 WHERE ref_ref_cod_serie IN ($series) AND ref_cod_aluno = {$this->ref_cod_aluno} AND cod_matricula != $ultima_matricula "); | ||
681 | - } | ||
682 | - } | ||
683 | - } | ||
684 | - } | 67 | + var $pessoa_logada; |
68 | + | ||
69 | + var $cod_matricula; | ||
70 | + var $ref_cod_reserva_vaga; | ||
71 | + var $ref_ref_cod_escola; | ||
72 | + var $ref_ref_cod_serie; | ||
73 | + var $ref_usuario_exc; | ||
74 | + var $ref_usuario_cad; | ||
75 | + var $ref_cod_aluno; | ||
76 | + var $aprovado; | ||
77 | + var $data_cadastro; | ||
78 | + var $data_exclusao; | ||
79 | + var $ativo; | ||
80 | + var $ano; | ||
81 | + | ||
82 | + var $ref_cod_instituicao; | ||
83 | + var $ref_cod_curso; | ||
84 | + var $ref_cod_escola; | ||
85 | + | ||
86 | + var $matricula_transferencia; | ||
87 | + var $semestre; | ||
88 | + var $is_padrao; | ||
89 | + | ||
90 | + function Inicializar() | ||
91 | + { | ||
92 | + $retorno = 'Novo'; | ||
93 | + | ||
94 | + @session_start(); | ||
95 | + $this->pessoa_logada = $_SESSION['id_pessoa']; | ||
96 | + @session_write_close(); | ||
97 | + | ||
98 | + $this->cod_matricula = $_GET['cod_matricula']; | ||
99 | + $this->ref_cod_aluno = $_GET['ref_cod_aluno']; | ||
100 | + | ||
101 | + $obj_aluno = new clsPmieducarAluno($this->ref_cod_aluno); | ||
102 | + | ||
103 | + if (! $obj_aluno->existe()) { | ||
104 | + header('Location: educar_matricula_lst.php'); | ||
105 | + die; | ||
106 | + } | ||
107 | + | ||
108 | + $url = 'educar_matricula_lst.php?ref_cod_aluno=' . $this->ref_cod_aluno; | ||
109 | + | ||
110 | + $obj_permissoes = new clsPermissoes(); | ||
111 | + $obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7, $url); | ||
112 | + | ||
113 | + if (is_numeric($this->cod_matricula)) { | ||
114 | + if ($obj_permissoes->permissao_excluir(578, $this->pessoa_logada, 7)) { | ||
115 | + $this->Excluir(); | ||
116 | + } | ||
117 | + } | ||
118 | + | ||
119 | + $this->url_cancelar = $url; | ||
120 | + $this->nome_url_cancelar = 'Cancelar'; | ||
121 | + return $retorno; | ||
122 | + } | ||
123 | + | ||
124 | + function Gerar() | ||
125 | + { | ||
126 | + // primary keys | ||
127 | + $this->campoOculto("cod_matricula", $this->cod_matricula); | ||
128 | + $this->campoOculto("ref_cod_aluno", $this->ref_cod_aluno); | ||
129 | + | ||
130 | + $obj_aluno = new clsPmieducarAluno(); | ||
131 | + $lst_aluno = $obj_aluno->lista($this->ref_cod_aluno, NULL, NULL, NULL, NULL, | ||
132 | + NULL, NULL, NULL, NULL, NULL, 1); | ||
133 | + | ||
134 | + if (is_array($lst_aluno)) { | ||
135 | + $det_aluno = array_shift($lst_aluno); | ||
136 | + $this->nm_aluno = $det_aluno['nome_aluno']; | ||
137 | + $this->campoRotulo('nm_aluno', 'Aluno', $this->nm_aluno); | ||
138 | + } | ||
139 | + | ||
140 | + /* | ||
141 | + * Verifica se existem matrículas para o aluno para apresentar o campo | ||
142 | + * transferência, necessário para o relatório de movimentação mensal. | ||
143 | + */ | ||
144 | + $obj_matricula = new clsPmieducarMatricula(); | ||
145 | + $lst_matricula = $obj_matricula->lista(NULL, NULL, NULL, NULL, NULL, NULL, | ||
146 | + $this->ref_cod_aluno); | ||
147 | + | ||
148 | + // Primeira matrícula do sistema exibe campo check | ||
149 | + if (! $lst_matricula) { | ||
150 | + $this->campoCheck('matricula_transferencia', | ||
151 | + 'Matrícula de Transferência', '', | ||
152 | + 'Caso seja transfência externa por favor marque esta opção.'); | ||
153 | + } | ||
154 | + | ||
155 | + // foreign keys | ||
156 | + $instituicao_obrigatorio = TRUE; | ||
157 | + $curso_obrigatorio = TRUE; | ||
158 | + $escola_curso_obrigatorio = TRUE; | ||
159 | + $get_escola = TRUE; | ||
160 | + $get_curso = TRUE; | ||
161 | + $get_escola_curso_serie = TRUE; | ||
162 | + $get_matricula = TRUE; | ||
163 | + $sem_padrao = TRUE; | ||
164 | + | ||
165 | + include 'include/pmieducar/educar_campo_lista.php'; | ||
166 | + | ||
167 | + if (is_numeric($this->ref_cod_curso)) { | ||
168 | + $obj_curso = new clsPmieducarCurso($this->ref_cod_curso); | ||
169 | + $det_curso = $obj_curso->detalhe(); | ||
170 | + | ||
171 | + if (is_numeric($det_curso['ref_cod_tipo_avaliacao'])) { | ||
172 | + $this->campoOculto('apagar_radios', $det_curso['padrao_ano_escolar']); | ||
173 | + $this->campoOculto('is_padrao', $det_curso['padrao_ano_escolar']); | ||
174 | + } | ||
175 | + } | ||
176 | + | ||
177 | + if ($this->ref_cod_escola) { | ||
178 | + $this->ref_ref_cod_escola = $this->ref_cod_escola; | ||
179 | + } | ||
180 | + | ||
181 | + $this->acao_enviar = 'valida()'; | ||
182 | + } | ||
183 | + | ||
184 | + function Novo() | ||
185 | + { | ||
186 | + @session_start(); | ||
187 | + $this->pessoa_logada = $_SESSION['id_pessoa']; | ||
188 | + @session_write_close(); | ||
189 | + | ||
190 | + $obj_permissoes = new clsPermissoes(); | ||
191 | + $obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7, | ||
192 | + 'educar_matricula_lst.php?ref_cod_aluno=' . $this->ref_cod_aluno); | ||
193 | + | ||
194 | + $obj_escola_ano_letivo = new clsPmieducarEscolaAnoLetivo(); | ||
195 | + $lst_escola_ano_letivo = $obj_escola_ano_letivo->lista($this->ref_cod_escola, | ||
196 | + NULL, NULL, NULL,1, NULL, NULL, NULL, NULL, 1); | ||
197 | + | ||
198 | + if (is_array($lst_escola_ano_letivo)) { | ||
199 | + $det_escola_ano_letivo = array_shift($lst_escola_ano_letivo); | ||
200 | + $this->ano = $det_escola_ano_letivo['ano']; | ||
201 | + | ||
202 | + $obj_reserva_vaga = new clsPmieducarReservaVaga(); | ||
203 | + $lst_reserva_vaga = $obj_reserva_vaga->lista(NULL, $this->ref_cod_escola, | ||
204 | + $this->ref_ref_cod_serie, NULL, NULL,$this->ref_cod_aluno, NULL, NULL, | ||
205 | + NULL, NULL, 1); | ||
206 | + | ||
207 | + // Verifica se existe reserva de vaga para o aluno | ||
208 | + if (is_array($lst_reserva_vaga)) { | ||
209 | + $det_reserva_vaga = array_shift($lst_reserva_vaga); | ||
210 | + $this->ref_cod_reserva_vaga = $det_reserva_vaga['cod_reserva_vaga']; | ||
211 | + | ||
212 | + $obj_reserva_vaga = new clsPmieducarReservaVaga($this->ref_cod_reserva_vaga, | ||
213 | + NULL, NULL, $this->pessoa_logada, NULL, NULL, NULL, NULL, 0); | ||
214 | + | ||
215 | + $editou = $obj_reserva_vaga->edita(); | ||
216 | + if (! $editou) { | ||
217 | + $this->mensagem = 'Edição não realizada.<br />'; | ||
218 | + return FALSE; | ||
219 | + } | ||
220 | + } | ||
221 | + | ||
222 | + $vagas_restantes = 1; | ||
223 | + | ||
224 | + if (! $this->ref_cod_reserva_vaga) { | ||
225 | + $obj_turmas = new clsPmieducarTurma(); | ||
226 | + $lst_turmas = $obj_turmas->lista(NULL, NULL, NULL, $this->ref_ref_cod_serie, | ||
227 | + $this->ref_cod_escola, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | ||
228 | + NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | ||
229 | + NULL, NULL, NULL, NULL, NULL, TRUE); | ||
230 | + | ||
231 | + if (is_array($lst_turmas)) { | ||
232 | + $total_vagas = 0; | ||
233 | + foreach ($lst_turmas as $turmas) { | ||
234 | + $total_vagas += $turmas['max_aluno']; | ||
235 | + } | ||
236 | + } | ||
237 | + else { | ||
238 | + $this->mensagem = 'Série não possui turmas cadastradas.<br />'; | ||
239 | + return FALSE; | ||
240 | + } | ||
241 | + | ||
242 | + $obj_matricula = new clsPmieducarMatricula(); | ||
243 | + $lst_matricula = $obj_matricula->lista(NULL, NULL, $this->ref_cod_escola, | ||
244 | + $this->ref_ref_cod_serie, NULL, NULL, NULL, 3, NULL, NULL, NULL, NULL, 1, | ||
245 | + $this->ano, $this->ref_cod_curso, $this->ref_cod_instituicao, 1); | ||
246 | + | ||
247 | + if (is_array($lst_matricula)) { | ||
248 | + $matriculados = count($lst_matricula); | ||
249 | + } | ||
250 | + | ||
251 | + $obj_reserva_vaga = new clsPmieducarReservaVaga(); | ||
252 | + $lst_reserva_vaga = $obj_reserva_vaga->lista(NULL, $this->ref_cod_escola, | ||
253 | + $this->ref_ref_cod_serie, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, | ||
254 | + $this->ref_cod_instituicao, $this->ref_cod_curso); | ||
255 | + | ||
256 | + if (is_array($lst_reserva_vaga)) { | ||
257 | + $reservados = count($lst_reserva_vaga); | ||
258 | + } | ||
259 | + | ||
260 | + $vagas_restantes = $total_vagas - ($matriculados + $reservados); | ||
261 | + } | ||
262 | + | ||
263 | + if ($vagas_restantes <= 0) { | ||
264 | + echo sprintf(' | ||
265 | + <script> | ||
266 | + var msg = \'\'; | ||
267 | + msg += \'Excedido o número de total de vagas para Matricula!\\n\'; | ||
268 | + msg += \'Número total de matriculados: %d\\n\'; | ||
269 | + msg += \'Número total de vagas reservadas: %d\\n\'; | ||
270 | + msg += \'Número total de vagas: %d\\n\'; | ||
271 | + msg += \'Deseja mesmo assim realizar a Matrícula?\'; | ||
272 | + | ||
273 | + if (! confirm(msg)) { | ||
274 | + window.location = \'educar_matricula_lst.php?ref_cod_aluno=%d\'; | ||
275 | + } | ||
276 | + </script>', | ||
277 | + $matriculados, $reservados, $total_vagas, $this->ref_cod_aluno | ||
278 | + ); | ||
279 | + } | ||
280 | + | ||
281 | + $obj_matricula_aluno = new clsPmieducarMatricula(); | ||
282 | + $lst_matricula_aluno = $obj_matricula_aluno->lista(NULL, NULL, NULL, NULL, | ||
283 | + NULL, NULL, $this->ref_cod_aluno); | ||
284 | + | ||
285 | + if (! $lst_matricula_aluno) { | ||
286 | + // Primeira matrícula do sistema, consistência (?) | ||
287 | + $this->matricula_transferencia = | ||
288 | + $this->matricula_transferencia == 'on' ? TRUE : FALSE; | ||
289 | + } | ||
290 | + else { | ||
291 | + $this->matricula_transferencia = FALSE; | ||
292 | + } | ||
293 | + | ||
294 | + if ($this->is_padrao == 1) { | ||
295 | + $this->semestre = NULL; | ||
296 | + } | ||
297 | + | ||
298 | + $obj = new clsPmieducarMatricula(NULL, $this->ref_cod_reserva_vaga, | ||
299 | + $this->ref_cod_escola, $this->ref_ref_cod_serie, NULL, | ||
300 | + $this->pessoa_logada, $this->ref_cod_aluno, 3, NULL, NULL, 1, $this->ano, | ||
301 | + 1, NULL, NULL, NULL, NULL, $this->ref_cod_curso, | ||
302 | + $this->matricula_transferencia, $this->semestre); | ||
303 | + | ||
304 | + $cadastrou = $obj->cadastra(); | ||
305 | + if ($cadastrou) { | ||
306 | + /** | ||
307 | + * @todo Remover | ||
308 | + */ | ||
309 | + if ($this->pessoa_logada == 21317) { | ||
310 | + $this->desativaMatriculasSequencia($cadastrou); | ||
311 | + } | ||
312 | + | ||
313 | + $obj_transferencia = new clsPmieducarTransferenciaSolicitacao(); | ||
314 | + $lst_transferencia = $obj_transferencia->lista(NULL, NULL, NULL, NULL, | ||
315 | + NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, | ||
316 | + $this->ref_cod_aluno, FALSE, NULL, NULL, NULL, TRUE, FALSE); | ||
317 | + | ||
318 | + // Verifica se existe solicitação de transferência de aluno | ||
319 | + if (is_array($lst_transferencia)) { | ||
320 | + $det_transferencia = array_shift($lst_transferencia); | ||
321 | + | ||
322 | + $obj_transferencia = new clsPmieducarTransferenciaSolicitacao( | ||
323 | + $det_transferencia['cod_transferencia_solicitacao'], NULL, | ||
324 | + $this->pessoa_logada, NULL, NULL, NULL, NULL, NULL, NULL, 0); | ||
325 | + | ||
326 | + $editou2 = $obj_transferencia->edita(); | ||
327 | + | ||
328 | + if ($editou2) { | ||
329 | + $obj = new clsPmieducarMatricula($det_transferencia['ref_cod_matricula_saida'], | ||
330 | + NULL, NULL, NULL, $this->pessoa_logada, NULL, NULL, 4, NULL, NULL, 1, NULL, 0); | ||
331 | + | ||
332 | + $editou3 = $obj->edita(); | ||
333 | + | ||
334 | + if (! $editou3) { | ||
335 | + $this->mensagem = 'Edição não realizada.<br />'; | ||
336 | + return FALSE; | ||
337 | + } | ||
338 | + } | ||
339 | + else { | ||
340 | + $this->mensagem = 'Edição não realizada.<br />'; | ||
341 | + return FALSE; | ||
342 | + } | ||
343 | + } | ||
344 | + else { | ||
345 | + $obj_transferencia = new clsPmieducarTransferenciaSolicitacao(); | ||
346 | + $lst_transferencia = $obj_transferencia->lista(NULL, NULL, NULL, NULL, | ||
347 | + NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, | ||
348 | + $this->ref_cod_aluno, FALSE, NULL, NULL, NULL, FALSE, FALSE); | ||
349 | + | ||
350 | + // Verifica se existe solicitação de transferência do aluno | ||
351 | + if (is_array($lst_transferencia)) { | ||
352 | + // Verifica cada solicitação de transferência do aluno | ||
353 | + foreach ($lst_transferencia as $transferencia) { | ||
354 | + $obj_matricula = new clsPmieducarMatricula( | ||
355 | + $transferencia['ref_cod_matricula_saida'] | ||
356 | + ); | ||
357 | + | ||
358 | + $det_matricula = $obj_matricula->detalhe(); | ||
359 | + | ||
360 | + // Caso a solicitação seja para uma mesma série | ||
361 | + if ($det_matricula['ref_ref_cod_serie'] == $this->ref_ref_cod_serie) { | ||
362 | + $ref_cod_transferencia = $transferencia['cod_transferencia_solicitacao']; | ||
363 | + break; | ||
364 | + } | ||
365 | + // Caso a solicitação seja para a série da sequência | ||
366 | + else { | ||
367 | + $obj_sequencia = new clsPmieducarSequenciaSerie( | ||
368 | + $det_matricula['ref_ref_cod_serie'], $this->ref_ref_cod_serie, | ||
369 | + NULL, NULL, NULL, NULL, 1 | ||
370 | + ); | ||
371 | + | ||
372 | + if ($obj_sequencia->existe()) { | ||
373 | + $ref_cod_transferencia = $transferencia['cod_transferencia_solicitacao']; | ||
374 | + break; | ||
375 | + } | ||
376 | + } | ||
377 | + | ||
378 | + $ref_cod_transferencia = $transferencia['cod_transferencia_solicitacao']; | ||
379 | + } | ||
380 | + | ||
381 | + if ($ref_cod_transferencia) { | ||
382 | + $obj_transferencia = new clsPmieducarTransferenciaSolicitacao( | ||
383 | + $ref_cod_transferencia, NULL, $this->pessoa_logada, NULL, | ||
384 | + $cadastrou, NULL, NULL, NULL, NULL, 1, date('Y-m-d') | ||
385 | + ); | ||
386 | + | ||
387 | + $editou2 = $obj_transferencia->edita(); | ||
388 | + | ||
389 | + if ($editou2) { | ||
390 | + $obj_transferencia = new clsPmieducarTransferenciaSolicitacao( | ||
391 | + $ref_cod_transferencia | ||
392 | + ); | ||
393 | + | ||
394 | + $det_transferencia = $obj_transferencia->detalhe(); | ||
395 | + $matricula_saida = $det_transferencia['ref_cod_matricula_saida']; | ||
396 | + | ||
397 | + $obj_matricula = new clsPmieducarMatricula($matricula_saida); | ||
398 | + $det_matricula = $obj_matricula->detalhe(); | ||
399 | + | ||
400 | + // Caso a situação da matrícula do aluno esteja em andamento | ||
401 | + if ($det_matricula['aprovado'] == 3) { | ||
402 | + $obj_matricula = new clsPmieducarMatricula( | ||
403 | + $cadastrou, NULL, NULL, NULL, $this->pessoa_logada, NULL, | ||
404 | + NULL, NULL, NULL, NULL, 1, NULL, NULL, $det_matricula['modulo'] | ||
405 | + ); | ||
406 | + | ||
407 | + $editou_mat = $obj_matricula->edita(); | ||
408 | + | ||
409 | + if ($editou_mat) { | ||
410 | + $obj_matricula_turma = new clsPmieducarMatriculaTurma(); | ||
411 | + $lst_matricula_turma = $obj_matricula_turma->lista( | ||
412 | + $matricula_saida, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1 | ||
413 | + ); | ||
414 | + | ||
415 | + if (is_array($lst_matricula_turma)) { | ||
416 | + $det_matricula_turma = array_shift($lst_matricula_turma); | ||
417 | + | ||
418 | + $obj_matricula_turma = new clsPmieducarMatriculaTurma( | ||
419 | + $matricula_saida, $det_matricula_turma['ref_cod_turma'], | ||
420 | + $this->pessoa_logada, NULL, NULL, NULL, 0, NULL, | ||
421 | + $det_matricula_turma['sequencial'] | ||
422 | + ); | ||
423 | + | ||
424 | + $editou_mat_turma = $obj_matricula_turma->edita(); | ||
425 | + | ||
426 | + if (! $editou_mat_turma) { | ||
427 | + $this->mensagem = 'Não foi possível editar a Matrícula Turma.<br />'; | ||
428 | + return FALSE; | ||
429 | + } | ||
430 | + } | ||
431 | + | ||
432 | + // Armazena as disciplinas utilizadas da nova escola | ||
433 | + $obj_esd = new clsPmieducarEscolaSerieDisciplina(); | ||
434 | + $lst_esd = $obj_esd->lista( | ||
435 | + $this->ref_ref_cod_serie, $this->ref_cod_escola, NULL, 1 | ||
436 | + ); | ||
437 | + | ||
438 | + if (is_array($lst_esd)) { | ||
439 | + foreach ($lst_esd as $campo) { | ||
440 | + $disciplinas[$campo['ref_cod_disciplina']] = $campo['ref_cod_disciplina']; | ||
441 | + } | ||
442 | + } | ||
443 | + | ||
444 | + // Lista as notas que o aluno já tinha | ||
445 | + $obj_nota_aluno = new clsPmieducarNotaAluno(); | ||
446 | + $lst_nota_aluno = $obj_nota_aluno->lista( | ||
447 | + NULL, NULL, NULL, $this->ref_ref_cod_serie, NULL, NULL, | ||
448 | + $matricula_saida, NULL, NULL, NULL, NULL, NULL, NULL, 1 | ||
449 | + ); | ||
450 | + | ||
451 | + if (is_array($lst_nota_aluno)) { | ||
452 | + foreach ($lst_nota_aluno as $campo) { | ||
453 | + if ($disciplinas[$campo['ref_cod_disciplina']]) { | ||
454 | + // Cadastra as notas existentes na nova matrícula | ||
455 | + $obj_nota_aluno = new clsPmieducarNotaAluno( | ||
456 | + NULL, $campo['ref_sequencial'], | ||
457 | + $campo['ref_ref_cod_tipo_avaliacao'], $this->ref_ref_cod_serie, | ||
458 | + $this->ref_cod_escola, $campo['ref_cod_disciplina'], | ||
459 | + $cadastrou, NULL, $this->pessoa_logada, NULL, NULL, | ||
460 | + 1, $campo['modulo'] | ||
461 | + ); | ||
462 | + | ||
463 | + $cadastrou_nota = $obj_nota_aluno->cadastra(); | ||
464 | + | ||
465 | + if (! $cadastrou_nota) { | ||
466 | + $this->mensagem = 'Cadastro não realizado.<br />'; | ||
467 | + return FALSE; | ||
468 | + } | ||
469 | + } | ||
470 | + } | ||
471 | + } | ||
472 | + | ||
473 | + // Lista as faltas que o aluno já tinha | ||
474 | + $obj_falta_aluno = new clsPmieducarFaltaAluno(); | ||
475 | + $lst_falta_aluno = $obj_falta_aluno->lista( | ||
476 | + NULL, NULL, NULL, $this->ref_ref_cod_serie, NULL, NULL, | ||
477 | + $matricula_saida, NULL, NULL, NULL, NULL, NULL, 1 | ||
478 | + ); | ||
479 | + | ||
480 | + if (is_array($lst_falta_aluno)) { | ||
481 | + foreach ($lst_falta_aluno as $campo) { | ||
482 | + if ($disciplinas[$campo['ref_cod_disciplina']]) { | ||
483 | + // Cadastra as faltas existentes na nova matrícula | ||
484 | + $obj_falta_aluno = new clsPmieducarFaltaAluno( | ||
485 | + NULL, NULL, $this->pessoa_logada, | ||
486 | + $this->ref_ref_cod_serie, $this->ref_cod_escola, | ||
487 | + $campo['ref_cod_disciplina'], $cadastrou, | ||
488 | + $campo['faltas'], NULL, NULL, 1, $campo['modulo'] | ||
489 | + ); | ||
490 | + | ||
491 | + $cadastrou_falta = $obj_falta_aluno->cadastra(); | ||
492 | + | ||
493 | + if (! $cadastrou_falta) { | ||
494 | + $this->mensagem = 'Cadastro não realizado.<br />'; | ||
495 | + return FALSE; | ||
496 | + } | ||
497 | + } | ||
498 | + } | ||
499 | + } | ||
500 | + | ||
501 | + // Lista as notas que o aluno já tinha (globalizada) | ||
502 | + $obj_faltas = new clsPmieducarFaltas(); | ||
503 | + $lst_faltas = $obj_faltas->lista($matricula_saida); | ||
504 | + | ||
505 | + if (is_array($lst_faltas)) { | ||
506 | + foreach ($lst_faltas as $campo) { | ||
507 | + // Cadastra as faltas existentes na nova matrícula | ||
508 | + $obj_faltas = new clsPmieducarFaltas( | ||
509 | + $cadastrou, $campo['sequencial'], $this->pessoa_logada, | ||
510 | + $campo['falta'] | ||
511 | + ); | ||
512 | + | ||
513 | + $cadastrou_faltas = $obj_faltas->cadastra(); | ||
514 | + | ||
515 | + if (! $cadastrou_faltas) { | ||
516 | + $this->mensagem = 'Cadastro não realizado.<br />'; | ||
517 | + return FALSE; | ||
518 | + } | ||
519 | + } | ||
520 | + } | ||
521 | + } | ||
522 | + } | ||
523 | + | ||
524 | + $obj = new clsPmieducarMatricula( | ||
525 | + $matricula_saida, NULL, NULL, NULL,$this->pessoa_logada, NULL, | ||
526 | + NULL, 4, NULL, NULL, 1, NULL, 0 | ||
527 | + ); | ||
528 | + | ||
529 | + $editou3 = $obj->edita(); | ||
530 | + | ||
531 | + if (! $editou3) { | ||
532 | + $this->mensagem = 'Edição não realizada.<br />'; | ||
533 | + return FALSE; | ||
534 | + } | ||
535 | + } | ||
536 | + else { | ||
537 | + $this->mensagem = 'Edição não realizada.<br />'; | ||
538 | + return FALSE; | ||
539 | + } | ||
540 | + } | ||
541 | + } | ||
542 | + } | ||
543 | + | ||
544 | + $this->mensagem .= 'Cadastro efetuado com sucesso.<br />'; | ||
545 | + header('Location: educar_matricula_lst.php?ref_cod_aluno=' . $this->ref_cod_aluno); | ||
546 | + die(); | ||
547 | + } | ||
548 | + | ||
549 | + $this->mensagem = 'Cadastro não realizado.<br />'; | ||
550 | + return FALSE; | ||
551 | + } | ||
552 | + else { | ||
553 | + $this->mensagem = 'Não foi possível encontrar o "Ano Letivo" em andamento da Escola.<br />'; | ||
554 | + return FALSE; | ||
555 | + } | ||
556 | + } | ||
557 | + | ||
558 | + function Excluir() | ||
559 | + { | ||
560 | + @session_start(); | ||
561 | + $this->pessoa_logada = $_SESSION['id_pessoa']; | ||
562 | + @session_write_close(); | ||
563 | + | ||
564 | + $obj_permissoes = new clsPermissoes(); | ||
565 | + $obj_permissoes->permissao_excluir(578, $this->pessoa_logada, 7, | ||
566 | + 'educar_matricula_lst.php?ref_cod_aluno=' . $this->ref_cod_aluno); | ||
567 | + | ||
568 | + $obj_matricula_turma = new clsPmieducarMatriculaTurma(); | ||
569 | + $lst_matricula_turma = $obj_matricula_turma->lista( | ||
570 | + $this->cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1 | ||
571 | + ); | ||
572 | + | ||
573 | + if (is_array($lst_matricula_turma)) { | ||
574 | + $det_matricula_turma = array_shift($lst_matricula_turma); | ||
575 | + $obj_matricula_turma = new clsPmieducarMatriculaTurma( | ||
576 | + $det_matricula_turma['ref_cod_matricula'], | ||
577 | + $det_matricula_turma['ref_cod_turma'], $this->pessoa_logada, NULL, | ||
578 | + NULL, NULL, 0, NULL, $det_matricula_turma['sequencial'] | ||
579 | + ); | ||
580 | + | ||
581 | + $editou = $obj_matricula_turma->edita(); | ||
582 | + | ||
583 | + if (! $editou) { | ||
584 | + $this->mensagem = 'Edição não realizada.<br />'; | ||
585 | + return FALSE; | ||
586 | + } | ||
587 | + } | ||
588 | + | ||
589 | + $obj_matricula = new clsPmieducarMatricula( $this->cod_matricula ); | ||
590 | + $det_matricula = $obj_matricula->detalhe(); | ||
591 | + $ref_cod_serie = $det_matricula['ref_ref_cod_serie']; | ||
592 | + | ||
593 | + $obj_sequencia = new clsPmieducarSequenciaSerie(); | ||
594 | + $lst_sequencia = $obj_sequencia->lista( | ||
595 | + NULL, $ref_cod_serie, NULL, NULL, NULL, NULL, NULL, NULL, 1 | ||
596 | + ); | ||
597 | + | ||
598 | + // Verifica se a série da matrícula cancelada é sequência de alguma outra série | ||
599 | + if (is_array($lst_sequencia)) { | ||
600 | + $det_sequencia = array_shift($lst_sequencia); | ||
601 | + $ref_serie_origem = $det_sequencia['ref_serie_origem']; | ||
602 | + | ||
603 | + $obj_matricula = new clsPmieducarMatricula(); | ||
604 | + $lst_matricula = $obj_matricula->lista( | ||
605 | + NULL, NULL, NULL, $ref_serie_origem, NULL, NULL,$this->ref_cod_aluno, | ||
606 | + NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, 0 | ||
607 | + ); | ||
608 | + | ||
609 | + // Verifica se o aluno tem matrícula na série encontrada | ||
610 | + if (is_array($lst_matricula)) { | ||
611 | + $det_matricula = array_shift($lst_matricula); | ||
612 | + $ref_cod_matricula = $det_matricula['cod_matricula']; | ||
613 | + | ||
614 | + $obj = new clsPmieducarMatricula( | ||
615 | + $ref_cod_matricula, NULL, NULL, NULL, $this->pessoa_logada, NULL, NULL, | ||
616 | + NULL, NULL, NULL, 1, NULL, 1 | ||
617 | + ); | ||
618 | + | ||
619 | + $editou1 = $obj->edita(); | ||
620 | + if (! $editou1) { | ||
621 | + $this->mensagem = 'Não foi possível editar a "Última Matrícula da Sequência".<br />'; | ||
622 | + return FALSE; | ||
623 | + } | ||
624 | + } | ||
625 | + } | ||
626 | + | ||
627 | + $obj = new clsPmieducarMatricula( | ||
628 | + $this->cod_matricula, NULL, NULL, NULL, $this->pessoa_logada, NULL, NULL, | ||
629 | + NULL, NULL, NULL, 0 | ||
630 | + ); | ||
631 | + | ||
632 | + $excluiu = $obj->excluir(); | ||
633 | + | ||
634 | + if ($excluiu) { | ||
635 | + $this->mensagem .= 'Exclusão efetuada com sucesso.<br />'; | ||
636 | + header('Location: educar_matricula_lst.php?ref_cod_aluno=' . $this->ref_cod_aluno); | ||
637 | + die(); | ||
638 | + } | ||
639 | + | ||
640 | + $this->mensagem = 'Exclusão não realizada.<br />'; | ||
641 | + return FALSE; | ||
642 | + } | ||
643 | + | ||
644 | + /** | ||
645 | + * Marca como zero o campo ultima_matricula das matriculas da sequência. | ||
646 | + * @param int $ultima_matricula | ||
647 | + * @todo Remover, apenas um código condicional chama o método (L310). | ||
648 | + */ | ||
649 | + function desativaMatriculasSequencia($ultima_matricula) | ||
650 | + { | ||
651 | + $db2 = new clsBanco(); | ||
652 | + | ||
653 | + $db2->Consulta(' | ||
654 | + SELECT | ||
655 | + so.ref_cod_curso as curso_origem, | ||
656 | + ss.ref_serie_origem as serie_origem, | ||
657 | + sd.ref_cod_curso as curso_destino, | ||
658 | + ss.ref_serie_destino as serie_destino | ||
659 | + FROM | ||
660 | + pmieducar.sequencia_serie ss, | ||
661 | + pmieducar.serie so, | ||
662 | + pmieducar.serie sd | ||
663 | + WHERE | ||
664 | + ss.ativo = 1 | ||
665 | + AND ref_serie_origem = so.cod_serie | ||
666 | + AND ref_serie_destino = sd.cod_serie | ||
667 | + ORDER BY | ||
668 | + ss.ref_serie_origem ASC'); | ||
669 | + | ||
670 | + if ($db2->numLinhas()) { | ||
671 | + while ($db2->ProximoRegistro()) { | ||
672 | + $sequencias[] = $db2->Tupla(); | ||
673 | + } | ||
674 | + } | ||
675 | + | ||
676 | + $db2->Consulta(' | ||
677 | + SELECT | ||
678 | + DISTINCT(o.ref_serie_origem) | ||
679 | + FROM | ||
680 | + pmieducar.sequencia_serie o, | ||
681 | + pmieducar.escola_serie es | ||
682 | + WHERE | ||
683 | + NOT EXISTS ( | ||
684 | + SELECT | ||
685 | + 1 | ||
686 | + FROM | ||
687 | + pmieducar.sequencia_serie d | ||
688 | + WHERE | ||
689 | + o.ref_serie_origem = d.ref_serie_destino | ||
690 | + )'); | ||
691 | + | ||
692 | + if ($db2->numLinhas()) | ||
693 | + { | ||
694 | + $pertence_sequencia = FALSE; | ||
695 | + $achou_serie = FALSE; | ||
696 | + $reset = FALSE; | ||
697 | + | ||
698 | + $serie_sequencia[] = $this->ref_ref_cod_serie; | ||
699 | + | ||
700 | + while ($db2->ProximoRegistro()) { | ||
701 | + list($ini_sequencia) = $db2->Tupla(); | ||
702 | + | ||
703 | + $ini_serie = $ini_sequencia; | ||
704 | + reset($sequencias); | ||
705 | + | ||
706 | + do { | ||
707 | + if ($reset) { | ||
708 | + reset($sequencias); | ||
709 | + $reset = FALSE; | ||
710 | + } | ||
711 | + | ||
712 | + $sequencia = current($sequencias); | ||
713 | + $aux_serie = $sequencia['serie_origem']; | ||
714 | + | ||
715 | + if ($ini_serie == $aux_serie) { | ||
716 | + if ($this->ref_ref_cod_serie == $aux_serie) { | ||
717 | + // Achou série da matricula | ||
718 | + $achou_serie = TRUE; | ||
719 | + } | ||
720 | + | ||
721 | + if ($sequencia['curso_destino'] == $this->ref_cod_curso) { | ||
722 | + // Curso pertence a sequência | ||
723 | + $pertence_sequencia = TRUE; | ||
724 | + $serie_sequencia[] = $sequencia['serie_destino']; | ||
725 | + $ini_serie = $sequencia['serie_destino']; | ||
726 | + $reset = TRUE; | ||
727 | + } | ||
728 | + else { | ||
729 | + $ini_serie = $sequencia['serie_destino']; | ||
730 | + $reset = TRUE; | ||
731 | + } | ||
732 | + } | ||
733 | + } while (each($sequencias)); | ||
734 | + | ||
735 | + if ($achou_serie && $pertence_sequencia) { | ||
736 | + // Curso escolhido pertence a sequência da série da matrícula | ||
737 | + $series = implode(',', $serie_sequencia); | ||
738 | + $db2->Consulta(sprintf(" | ||
739 | + UPDATE | ||
740 | + pmieducar.matricula | ||
741 | + SET | ||
742 | + ultima_matricula = 0 | ||
743 | + WHERE | ||
744 | + ref_ref_cod_serie IN (%s) | ||
745 | + AND ref_cod_aluno = %d | ||
746 | + AND cod_matricula != %d", | ||
747 | + $series, $this->ref_cod_aluno, $ultima_matricula | ||
748 | + )); | ||
749 | + | ||
750 | + die(); | ||
751 | + } | ||
752 | + } | ||
753 | + } | ||
754 | + } | ||
685 | } | 755 | } |
686 | 756 | ||
687 | -// cria uma extensao da classe base | 757 | +// Instancia objeto de página |
688 | $pagina = new clsIndexBase(); | 758 | $pagina = new clsIndexBase(); |
689 | -// cria o conteudo | 759 | + |
760 | +// Instancia objeto de conteúdo | ||
690 | $miolo = new indice(); | 761 | $miolo = new indice(); |
691 | -// adiciona o conteudo na clsBase | ||
692 | -$pagina->addForm( $miolo ); | ||
693 | -// gera o html | ||
694 | -$pagina->MakeAll(); | ||
695 | 762 | ||
696 | -?> | ||
697 | -<script> | 763 | +// Atribui o conteúdo à página |
764 | +$pagina->addForm($miolo); | ||
698 | 765 | ||
766 | +// Gera o código HTML | ||
767 | +$pagina->MakeAll(); | ||
768 | +?> | ||
769 | +<script type="text/javascript"> | ||
699 | function getCursoMatricula() | 770 | function getCursoMatricula() |
700 | { | 771 | { |
701 | - var campoInstituicao = document.getElementById('ref_cod_instituicao').value; | ||
702 | - var cod_aluno = <?=$_GET["ref_cod_aluno"]?>; | 772 | + var campoInstituicao = document.getElementById('ref_cod_instituicao').value; |
773 | + var cod_aluno = <?php print $_GET['ref_cod_aluno'] ?>; | ||
774 | + var campoCurso = document.getElementById('ref_cod_curso'); | ||
775 | + | ||
776 | + campoCurso.length = 1; | ||
777 | + campoCurso.disabled = true; | ||
778 | + campoCurso.options[0].text = 'Carregando curso'; | ||
703 | 779 | ||
704 | - var campoCurso = document.getElementById('ref_cod_curso'); | ||
705 | - campoCurso.length = 1; | ||
706 | - campoCurso.disabled = true; | ||
707 | - campoCurso.options[0].text = 'Carregando curso'; | 780 | + var xml_curso_matricula = new ajax(atualizaCursoMatricula); |
708 | 781 | ||
709 | - var xml_curso_matricula = new ajax( atualizaCursoMatricula ); | ||
710 | - xml_curso_matricula.envia( "educar_curso_matricula_xml.php?ins="+campoInstituicao+"&alu="+cod_aluno ); | 782 | + var url = 'educar_curso_matricula_xml.php?ins=' + campoInstituicao + '&alu=' + cod_aluno; |
783 | + xml_curso_matricula.envia(url); | ||
711 | } | 784 | } |
712 | 785 | ||
713 | -function atualizaCursoMatricula( xml_curso_matricula ) | 786 | +function atualizaCursoMatricula(xml_curso_matricula) |
714 | { | 787 | { |
715 | - var campoCurso = document.getElementById('ref_cod_curso'); | ||
716 | - var DOM_array = xml_curso_matricula.getElementsByTagName( "curso" ); | ||
717 | - | ||
718 | - if(DOM_array.length) | ||
719 | - { | ||
720 | - campoCurso.length = 1; | ||
721 | - campoCurso.options[0].text = 'Selecione um curso'; | ||
722 | - campoCurso.disabled = false; | ||
723 | - | ||
724 | - for( var i = 0; i < DOM_array.length; i++ ) | ||
725 | - { | ||
726 | - campoCurso.options[campoCurso.options.length] = new Option( DOM_array[i].firstChild.data, DOM_array[i].getAttribute("cod_curso"),false,false); | ||
727 | - } | ||
728 | - } | ||
729 | - else | ||
730 | - campoCurso.options[0].text = 'A instituição não possui nenhum curso'; | ||
731 | - | 788 | + var campoCurso = document.getElementById('ref_cod_curso'); |
789 | + var DOM_array = xml_curso_matricula.getElementsByTagName('curso'); | ||
790 | + | ||
791 | + if (DOM_array.length) { | ||
792 | + campoCurso.length = 1; | ||
793 | + campoCurso.options[0].text = 'Selecione um curso'; | ||
794 | + campoCurso.disabled = false; | ||
795 | + | ||
796 | + for (var i = 0; i < DOM_array.length; i++) { | ||
797 | + campoCurso.options[campoCurso.options.length] = new Option( | ||
798 | + DOM_array[i].firstChild.data, DOM_array[i].getAttribute('cod_curso'), | ||
799 | + false, false | ||
800 | + ); | ||
801 | + } | ||
802 | + } | ||
803 | + else { | ||
804 | + campoCurso.options[0].text = 'A instituição não possui nenhum curso'; | ||
805 | + } | ||
732 | } | 806 | } |
733 | 807 | ||
734 | function getSerieMatricula() | 808 | function getSerieMatricula() |
735 | { | 809 | { |
736 | - var campoInstituicao = document.getElementById('ref_cod_instituicao').value; | ||
737 | - var campoEscola = document.getElementById('ref_cod_escola').value; | ||
738 | - var campoCurso = document.getElementById('ref_cod_curso').value; | ||
739 | - var cod_aluno = <?=$_GET["ref_cod_aluno"]?>; | ||
740 | - | ||
741 | - var campoSerie = document.getElementById('ref_ref_cod_serie'); | ||
742 | - campoSerie.length = 1; | ||
743 | - campoSerie.disabled = true; | ||
744 | - campoSerie.options[0].text = 'Carregando série'; | ||
745 | - | ||
746 | - var xml_serie_matricula = new ajax( atualizaSerieMatricula ); | ||
747 | - xml_serie_matricula.envia( "educar_serie_matricula_xml.php?ins="+campoInstituicao+"&cur="+campoCurso+"&esc="+campoEscola+"&alu="+cod_aluno ); | 810 | + var campoInstituicao = document.getElementById('ref_cod_instituicao').value; |
811 | + var campoEscola = document.getElementById('ref_cod_escola').value; | ||
812 | + var campoCurso = document.getElementById('ref_cod_curso').value; | ||
813 | + var cod_aluno = <?php print $_GET['ref_cod_aluno'] ?>; | ||
814 | + var campoSerie = document.getElementById('ref_ref_cod_serie'); | ||
815 | + | ||
816 | + campoSerie.length = 1; | ||
817 | + campoSerie.disabled = true; | ||
818 | + campoSerie.options[0].text = 'Carregando série'; | ||
819 | + | ||
820 | + var xml_serie_matricula = new ajax(atualizaSerieMatricula); | ||
821 | + | ||
822 | + var url = 'educar_serie_matricula_xml.php?ins=' + campoInstituicao + '&cur=' + campoCurso | ||
823 | + + '&esc=' + campoEscola + '&alu=' + cod_aluno; | ||
824 | + | ||
825 | + xml_serie_matricula.envia(url); | ||
748 | } | 826 | } |
749 | 827 | ||
750 | -function atualizaSerieMatricula( xml_serie_matricula ) | 828 | +function atualizaSerieMatricula(xml_serie_matricula) |
751 | { | 829 | { |
752 | - var campoSerie = document.getElementById('ref_ref_cod_serie'); | ||
753 | - var DOM_array = xml_serie_matricula.getElementsByTagName( "serie" ); | ||
754 | - | ||
755 | - if(DOM_array.length) | ||
756 | - { | ||
757 | - campoSerie.length = 1; | ||
758 | - campoSerie.options[0].text = 'Selecione uma série'; | ||
759 | - campoSerie.disabled = false; | ||
760 | - var series = new Array(); | ||
761 | - for( var i = 0; i < DOM_array.length; i++ ) | ||
762 | - { | ||
763 | - if(!series[DOM_array[i].getAttribute("cod_serie") + '_']) | ||
764 | - { | ||
765 | - campoSerie.options[campoSerie.options.length] = new Option( DOM_array[i].firstChild.data, DOM_array[i].getAttribute("cod_serie"),false,false); | ||
766 | - series[DOM_array[i].getAttribute("cod_serie") + '_'] = true; | ||
767 | - } | ||
768 | - } | ||
769 | - } | ||
770 | - else | ||
771 | - campoSerie.options[0].text = 'A escola/curso não possui nenhuma série'; | 830 | + var campoSerie = document.getElementById('ref_ref_cod_serie'); |
831 | + var DOM_array = xml_serie_matricula.getElementsByTagName('serie'); | ||
832 | + | ||
833 | + if (DOM_array.length) { | ||
834 | + campoSerie.length = 1; | ||
835 | + campoSerie.options[0].text = 'Selecione uma série'; | ||
836 | + campoSerie.disabled = false; | ||
837 | + | ||
838 | + var series = new Array(); | ||
839 | + | ||
840 | + for (var i = 0; i < DOM_array.length; i++) { | ||
841 | + if (! series[DOM_array[i].getAttribute('cod_serie') + '_']) { | ||
842 | + campoSerie.options[campoSerie.options.length] = new Option( | ||
843 | + DOM_array[i].firstChild.data, DOM_array[i].getAttribute('cod_serie'), | ||
844 | + false, false | ||
845 | + ); | ||
846 | + | ||
847 | + series[DOM_array[i].getAttribute('cod_serie') + '_'] = true; | ||
848 | + } | ||
849 | + } | ||
850 | + } | ||
851 | + else { | ||
852 | + campoSerie.options[0].text = 'A escola/curso não possui nenhuma série'; | ||
853 | + } | ||
772 | } | 854 | } |
773 | 855 | ||
774 | document.getElementById('ref_cod_escola').onchange = function() | 856 | document.getElementById('ref_cod_escola').onchange = function() |
775 | { | 857 | { |
776 | - if( document.getElementById('ref_cod_escola').value == "" ) | ||
777 | - getCursoMatricula(); | ||
778 | - else | ||
779 | - getEscolaCurso(); | 858 | + if (document.getElementById('ref_cod_escola').value == '') { |
859 | + getCursoMatricula(); | ||
860 | + } | ||
861 | + else { | ||
862 | + getEscolaCurso(); | ||
863 | + } | ||
780 | } | 864 | } |
781 | 865 | ||
782 | document.getElementById('ref_cod_curso').onchange = function() | 866 | document.getElementById('ref_cod_curso').onchange = function() |
783 | { | 867 | { |
784 | - getSerieMatricula(); | 868 | + getSerieMatricula(); |
785 | } | 869 | } |
786 | 870 | ||
787 | function valida() | 871 | function valida() |
788 | { | 872 | { |
789 | - if( document.getElementById('ref_cod_escola').value ) | ||
790 | - { | ||
791 | - if( !document.getElementById('ref_ref_cod_serie').value ) | ||
792 | - { | ||
793 | - alert("O campo 'Série' deve ser preenchido corretamente!"); | ||
794 | - document.getElementById('ref_ref_cod_serie').focus(); | ||
795 | - return false; | ||
796 | - } | ||
797 | - } | ||
798 | - if( !acao() ) | ||
799 | - return false; | ||
800 | - | ||
801 | - document.forms[0].submit(); | 873 | + if (document.getElementById('ref_cod_escola').value) { |
874 | + if (!document.getElementById('ref_ref_cod_serie').value) { | ||
875 | + alert('O campo "Série" deve ser preenchido corretamente!'); | ||
876 | + document.getElementById('ref_ref_cod_serie').focus(); | ||
877 | + return false; | ||
878 | + } | ||
879 | + } | ||
880 | + | ||
881 | + if (! acao()) { | ||
882 | + return false; | ||
883 | + } | ||
884 | + | ||
885 | + document.forms[0].submit(); | ||
802 | } | 886 | } |
803 | - | ||
804 | </script> | 887 | </script> |
805 | \ No newline at end of file | 888 | \ No newline at end of file |