Commit 41bed8827ad8adbaec8ba569f65674c518c11f5e
1 parent
7d74c34c
Exists in
master
Criado campo para data efetiva de enturmação
portabilis/ieducar#113
Showing
6 changed files
with
78 additions
and
3 deletions
Show diff stats
ieducar/intranet/educar_matricula_cad.php
@@ -608,7 +608,7 @@ class indice extends clsCadastro | @@ -608,7 +608,7 @@ class indice extends clsCadastro | ||
608 | // Coloca as matrículas anteriores em andamento | 608 | // Coloca as matrículas anteriores em andamento |
609 | $obj_transferencia_antiga = new clsPmieducarTransferenciaSolicitacao(); | 609 | $obj_transferencia_antiga = new clsPmieducarTransferenciaSolicitacao(); |
610 | $lista_transferencia = $obj_transferencia_antiga->lista(null,null,null,null,null,$this->cod_matricula); | 610 | $lista_transferencia = $obj_transferencia_antiga->lista(null,null,null,null,null,$this->cod_matricula); |
611 | - if (is_array($lista_transferencia))){ | 611 | + if (is_array($lista_transferencia)){ |
612 | foreach ($lista_transferencia as $transf) { | 612 | foreach ($lista_transferencia as $transf) { |
613 | 613 | ||
614 | $obj_mat = new clsPmieducarMatricula($transf['ref_cod_matricula_saida']); | 614 | $obj_mat = new clsPmieducarMatricula($transf['ref_cod_matricula_saida']); |
@@ -710,6 +710,7 @@ class indice extends clsCadastro | @@ -710,6 +710,7 @@ class indice extends clsCadastro | ||
710 | NULL, | 710 | NULL, |
711 | NULL, | 711 | NULL, |
712 | 1); | 712 | 1); |
713 | + $enturmacao->data_enturmacao = $this->data_matricula; | ||
713 | return $enturmacao->cadastra(); | 714 | return $enturmacao->cadastra(); |
714 | } | 715 | } |
715 | return false; | 716 | return false; |
ieducar/intranet/educar_matricula_turma_cad.php
@@ -33,6 +33,7 @@ require_once 'include/clsCadastro.inc.php'; | @@ -33,6 +33,7 @@ require_once 'include/clsCadastro.inc.php'; | ||
33 | require_once 'include/clsBanco.inc.php'; | 33 | require_once 'include/clsBanco.inc.php'; |
34 | require_once 'include/pmieducar/geral.inc.php'; | 34 | require_once 'include/pmieducar/geral.inc.php'; |
35 | require_once 'include/pmieducar/clsPmieducarMatricula.inc.php'; | 35 | require_once 'include/pmieducar/clsPmieducarMatricula.inc.php'; |
36 | +require_once 'lib/Portabilis/Date/Utils.php'; | ||
36 | 37 | ||
37 | /** | 38 | /** |
38 | * clsIndexBase class. | 39 | * clsIndexBase class. |
@@ -78,6 +79,7 @@ class indice extends clsCadastro | @@ -78,6 +79,7 @@ class indice extends clsCadastro | ||
78 | var $ref_cod_turma_origem; | 79 | var $ref_cod_turma_origem; |
79 | var $ref_cod_turma_destino; | 80 | var $ref_cod_turma_destino; |
80 | var $ref_cod_curso; | 81 | var $ref_cod_curso; |
82 | + var $data_enturmacao; | ||
81 | 83 | ||
82 | var $sequencial; | 84 | var $sequencial; |
83 | 85 | ||
@@ -97,6 +99,8 @@ class indice extends clsCadastro | @@ -97,6 +99,8 @@ class indice extends clsCadastro | ||
97 | $this->$key = $value; | 99 | $this->$key = $value; |
98 | } | 100 | } |
99 | 101 | ||
102 | + $this->data_enturmacao = Portabilis_Date_Utils::brToPgSQL($this->data_enturmacao); | ||
103 | + | ||
100 | $obj_permissoes = new clsPermissoes(); | 104 | $obj_permissoes = new clsPermissoes(); |
101 | $obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7, 'educar_matricula_lst.php'); | 105 | $obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7, 'educar_matricula_lst.php'); |
102 | 106 | ||
@@ -144,6 +148,7 @@ class indice extends clsCadastro | @@ -144,6 +148,7 @@ class indice extends clsCadastro | ||
144 | NULL, | 148 | NULL, |
145 | NULL, | 149 | NULL, |
146 | 1); | 150 | 1); |
151 | + $enturmacao->data_enturmacao = $this->data_enturmacao; | ||
147 | return $enturmacao->cadastra(); | 152 | return $enturmacao->cadastra(); |
148 | } | 153 | } |
149 | return false; | 154 | return false; |
ieducar/intranet/educar_matricula_turma_det.php
@@ -78,6 +78,7 @@ class indice extends clsDetalhe | @@ -78,6 +78,7 @@ class indice extends clsDetalhe | ||
78 | var $ref_cod_escola; | 78 | var $ref_cod_escola; |
79 | var $ref_cod_turma_origem; | 79 | var $ref_cod_turma_origem; |
80 | var $ref_cod_curso; | 80 | var $ref_cod_curso; |
81 | + var $data_enturmacao; | ||
81 | 82 | ||
82 | var $sequencial; | 83 | var $sequencial; |
83 | 84 | ||
@@ -239,6 +240,9 @@ class indice extends clsDetalhe | @@ -239,6 +240,9 @@ class indice extends clsDetalhe | ||
239 | $this->addDetalhe(array('<b>Enturmação</b>', $selectEnturmacoes)); | 240 | $this->addDetalhe(array('<b>Enturmação</b>', $selectEnturmacoes)); |
240 | } | 241 | } |
241 | 242 | ||
243 | + if(!$this->possuiEnturmacaoTurmaDestino) | ||
244 | + $this->addDetalhe(array('Data da enturmação', '<input onkeypress="formataData(this,event);" value="'.date('d/m/Y').'" class="geral" type="text" name="data_enturmacao" id="data_enturmacao" size="9" maxlength="10"/>')); | ||
245 | + | ||
242 | $this->addDetalhe(array( | 246 | $this->addDetalhe(array( |
243 | '-', | 247 | '-', |
244 | sprintf(' | 248 | sprintf(' |
@@ -248,6 +252,7 @@ class indice extends clsDetalhe | @@ -248,6 +252,7 @@ class indice extends clsDetalhe | ||
248 | <input type="hidden" name="ref_cod_escola" value=""> | 252 | <input type="hidden" name="ref_cod_escola" value=""> |
249 | <input type="hidden" name="ref_cod_turma_origem" value="%d"> | 253 | <input type="hidden" name="ref_cod_turma_origem" value="%d"> |
250 | <input type="hidden" name="ref_cod_turma_destino" value=""> | 254 | <input type="hidden" name="ref_cod_turma_destino" value=""> |
255 | + <input type="hidden" name="data_enturmacao" value=""> | ||
251 | <input type="hidden" name="sequencial" value="%d"> | 256 | <input type="hidden" name="sequencial" value="%d"> |
252 | </form> | 257 | </form> |
253 | ', $this->ref_cod_turma_origem, $this->sequencial) | 258 | ', $this->ref_cod_turma_origem, $this->sequencial) |
@@ -289,6 +294,7 @@ class indice extends clsDetalhe | @@ -289,6 +294,7 @@ class indice extends clsDetalhe | ||
289 | 294 | ||
290 | document.formcadastro.ref_cod_matricula.value = ref_cod_matricula; | 295 | document.formcadastro.ref_cod_matricula.value = ref_cod_matricula; |
291 | document.formcadastro.ref_cod_turma_destino.value = ref_cod_turma_destino; | 296 | document.formcadastro.ref_cod_turma_destino.value = ref_cod_turma_destino; |
297 | + document.formcadastro.data_enturmacao.value = document.getElementById("data_enturmacao").value; | ||
292 | document.formcadastro.submit(); | 298 | document.formcadastro.submit(); |
293 | } | 299 | } |
294 | 300 |
ieducar/intranet/educar_matriculas_turma_cad.php
@@ -32,6 +32,7 @@ require_once 'include/clsBase.inc.php'; | @@ -32,6 +32,7 @@ require_once 'include/clsBase.inc.php'; | ||
32 | require_once 'include/clsCadastro.inc.php'; | 32 | require_once 'include/clsCadastro.inc.php'; |
33 | require_once 'include/clsBanco.inc.php'; | 33 | require_once 'include/clsBanco.inc.php'; |
34 | require_once 'include/pmieducar/geral.inc.php'; | 34 | require_once 'include/pmieducar/geral.inc.php'; |
35 | +require_once 'lib/Portabilis/Date/Utils.php'; | ||
35 | 36 | ||
36 | /** | 37 | /** |
37 | * clsIndexBase class. | 38 | * clsIndexBase class. |
@@ -83,6 +84,7 @@ class indice extends clsCadastro | @@ -83,6 +84,7 @@ class indice extends clsCadastro | ||
83 | 84 | ||
84 | var $matriculas_turma; | 85 | var $matriculas_turma; |
85 | var $incluir_matricula; | 86 | var $incluir_matricula; |
87 | + var $data_enturmacao; | ||
86 | 88 | ||
87 | function Inicializar() | 89 | function Inicializar() |
88 | { | 90 | { |
@@ -263,6 +265,7 @@ class indice extends clsCadastro | @@ -263,6 +265,7 @@ class indice extends clsCadastro | ||
263 | } | 265 | } |
264 | 266 | ||
265 | if (count($opcoes)) { | 267 | if (count($opcoes)) { |
268 | + $this->inputsHelper()->date('data_enturmacao', array('label' => 'Data da enturmação', 'value' => date('Y-m-d'))); | ||
266 | asort($opcoes); | 269 | asort($opcoes); |
267 | foreach ($opcoes as $key => $aluno) { | 270 | foreach ($opcoes as $key => $aluno) { |
268 | $this->campoCheck('ref_cod_matricula[' . $key . ']', 'Aluno', $key, | 271 | $this->campoCheck('ref_cod_matricula[' . $key . ']', 'Aluno', $key, |
@@ -286,6 +289,7 @@ class indice extends clsCadastro | @@ -286,6 +289,7 @@ class indice extends clsCadastro | ||
286 | { | 289 | { |
287 | @session_start(); | 290 | @session_start(); |
288 | $this->pessoa_logada = $_SESSION['id_pessoa']; | 291 | $this->pessoa_logada = $_SESSION['id_pessoa']; |
292 | + $this->data_enturmacao = Portabilis_Date_Utils::brToPgSQL($this->data_enturmacao); | ||
289 | @session_write_close(); | 293 | @session_write_close(); |
290 | 294 | ||
291 | if ($this->matriculas_turma) { | 295 | if ($this->matriculas_turma) { |
@@ -296,6 +300,7 @@ class indice extends clsCadastro | @@ -296,6 +300,7 @@ class indice extends clsCadastro | ||
296 | $existe = $obj->existe(); | 300 | $existe = $obj->existe(); |
297 | 301 | ||
298 | if (!$existe) { | 302 | if (!$existe) { |
303 | + $obj->data_enturmacao = $this->data_enturmacao; | ||
299 | $cadastrou = $obj->cadastra(); | 304 | $cadastrou = $obj->cadastra(); |
300 | 305 | ||
301 | if (!$cadastrou) { | 306 | if (!$cadastrou) { |
ieducar/intranet/include/pmieducar/clsPmieducarMatriculaTurma.inc.php
@@ -108,13 +108,13 @@ class clsPmieducarMatriculaTurma | @@ -108,13 +108,13 @@ class clsPmieducarMatriculaTurma | ||
108 | function clsPmieducarMatriculaTurma($ref_cod_matricula = NULL, | 108 | function clsPmieducarMatriculaTurma($ref_cod_matricula = NULL, |
109 | $ref_cod_turma = NULL, $ref_usuario_exc = NULL, $ref_usuario_cad = NULL, | 109 | $ref_cod_turma = NULL, $ref_usuario_exc = NULL, $ref_usuario_cad = NULL, |
110 | $data_cadastro = NULL, $data_exclusao = NULL, $ativo = NULL, | 110 | $data_cadastro = NULL, $data_exclusao = NULL, $ativo = NULL, |
111 | - $ref_cod_turma_transf = NULL,$sequencial = NULL | 111 | + $ref_cod_turma_transf = NULL,$sequencial = NULL, $data_enturmacao = NULL |
112 | ) { | 112 | ) { |
113 | $db = new clsBanco(); | 113 | $db = new clsBanco(); |
114 | $this->_schema = "pmieducar."; | 114 | $this->_schema = "pmieducar."; |
115 | $this->_tabela = "{$this->_schema}matricula_turma"; | 115 | $this->_tabela = "{$this->_schema}matricula_turma"; |
116 | 116 | ||
117 | - $this->_campos_lista = $this->_todos_campos = "mt.ref_cod_matricula, mt.ref_cod_turma, mt.ref_usuario_exc, mt.ref_usuario_cad, mt.data_cadastro, mt.data_exclusao, mt.ativo, mt.sequencial, (SELECT pes.nome FROM cadastro.pessoa pes, pmieducar.aluno alu, pmieducar.matricula mat WHERE pes.idpes = alu.ref_idpes AND mat.ref_cod_aluno = alu.cod_aluno AND mat.cod_matricula = mt.ref_cod_matricula ) AS nome, (SELECT to_ascii(pes.nome) FROM cadastro.pessoa pes, pmieducar.aluno alu, pmieducar.matricula mat WHERE pes.idpes = alu.ref_idpes AND mat.ref_cod_aluno = alu.cod_aluno AND mat.cod_matricula = mt.ref_cod_matricula ) AS nome_ascii"; | 117 | + $this->_campos_lista = $this->_todos_campos = "mt.ref_cod_matricula, mt.ref_cod_turma, mt.ref_usuario_exc, mt.ref_usuario_cad, mt.data_cadastro, mt.data_exclusao, mt.ativo, mt.sequencial, mt.data_enturmacao, (SELECT pes.nome FROM cadastro.pessoa pes, pmieducar.aluno alu, pmieducar.matricula mat WHERE pes.idpes = alu.ref_idpes AND mat.ref_cod_aluno = alu.cod_aluno AND mat.cod_matricula = mt.ref_cod_matricula ) AS nome, (SELECT to_ascii(pes.nome) FROM cadastro.pessoa pes, pmieducar.aluno alu, pmieducar.matricula mat WHERE pes.idpes = alu.ref_idpes AND mat.ref_cod_aluno = alu.cod_aluno AND mat.cod_matricula = mt.ref_cod_matricula ) AS nome_ascii"; |
118 | 118 | ||
119 | if (is_numeric($ref_usuario_exc)) { | 119 | if (is_numeric($ref_usuario_exc)) { |
120 | if (class_exists("clsPmieducarUsuario")) { | 120 | if (class_exists("clsPmieducarUsuario")) { |
@@ -237,6 +237,10 @@ class clsPmieducarMatriculaTurma | @@ -237,6 +237,10 @@ class clsPmieducarMatriculaTurma | ||
237 | if (is_numeric($sequencial)) { | 237 | if (is_numeric($sequencial)) { |
238 | $this->sequencial = $sequencial; | 238 | $this->sequencial = $sequencial; |
239 | } | 239 | } |
240 | + | ||
241 | + if (is_string($data_enturmacao)) { | ||
242 | + $this->data_enturmacao = $data_enturmacao; | ||
243 | + } | ||
240 | } | 244 | } |
241 | 245 | ||
242 | /** | 246 | /** |
@@ -286,6 +290,12 @@ class clsPmieducarMatriculaTurma | @@ -286,6 +290,12 @@ class clsPmieducarMatriculaTurma | ||
286 | $valores .= "{$gruda}'1'"; | 290 | $valores .= "{$gruda}'1'"; |
287 | $gruda = ", "; | 291 | $gruda = ", "; |
288 | 292 | ||
293 | + if (is_string($this->data_enturmacao)) { | ||
294 | + $campos .= "{$gruda}data_enturmacao"; | ||
295 | + $valores .= "{$gruda}'{$this->data_enturmacao}'"; | ||
296 | + $gruda = ", "; | ||
297 | + } | ||
298 | + | ||
289 | $db->Consulta("INSERT INTO {$this->_tabela} ($campos) VALUES ($valores)"); | 299 | $db->Consulta("INSERT INTO {$this->_tabela} ($campos) VALUES ($valores)"); |
290 | 300 | ||
291 | return TRUE; | 301 | return TRUE; |
@@ -333,6 +343,11 @@ class clsPmieducarMatriculaTurma | @@ -333,6 +343,11 @@ class clsPmieducarMatriculaTurma | ||
333 | $gruda = ", "; | 343 | $gruda = ", "; |
334 | } | 344 | } |
335 | 345 | ||
346 | + if (is_string($this->data_enturmacao)) { | ||
347 | + $set .= "{$gruda}data_enturmacao = '{$this->data_enturmacao}'"; | ||
348 | + $gruda = ", "; | ||
349 | + } | ||
350 | + | ||
336 | if ($set) { | 351 | if ($set) { |
337 | $db->Consulta("UPDATE {$this->_tabela} SET $set WHERE ref_cod_matricula = '{$this->ref_cod_matricula}' AND ref_cod_turma = '{$this->ref_cod_turma}' and sequencial = '$this->sequencial' "); | 352 | $db->Consulta("UPDATE {$this->_tabela} SET $set WHERE ref_cod_matricula = '{$this->ref_cod_matricula}' AND ref_cod_turma = '{$this->ref_cod_turma}' and sequencial = '$this->sequencial' "); |
338 | return TRUE; | 353 | return TRUE; |
ieducar/misc/database/deltas/portabilis/67_cria_coluna_data_enturmacao.sql
0 → 100644
@@ -0,0 +1,43 @@ | @@ -0,0 +1,43 @@ | ||
1 | + -- // | ||
2 | + | ||
3 | + -- | ||
4 | + -- Cria colunas para armazenar data dos processos da matrícula | ||
5 | + -- | ||
6 | + -- @author Lucas Schmoeller da Silva <lucas@portabilis.com.br> | ||
7 | + -- @license @@license@@ | ||
8 | + -- @version $Id$ | ||
9 | + | ||
10 | + ALTER TABLE pmieducar.matricula ADD COLUMN data_matricula timestamp without time zone; | ||
11 | + ALTER TABLE pmieducar.matricula ADD COLUMN data_cancel timestamp without time zone; | ||
12 | + | ||
13 | + CREATE OR REPLACE FUNCTION retira_data_cancel_matricula_fun() | ||
14 | + RETURNS trigger AS | ||
15 | + $func$ | ||
16 | + BEGIN | ||
17 | + | ||
18 | + UPDATE pmieducar.matricula | ||
19 | + SET data_cancel = NULL | ||
20 | + WHERE cod_matricula = new.cod_matricula | ||
21 | + AND data_cancel IS DISTINCT FROM NULL | ||
22 | + AND aprovado = 3 | ||
23 | + AND (SELECT 1 FROM pmieducar.transferencia_solicitacao WHERE ativo = 1 AND ref_cod_matricula_saida = new.cod_matricula limit 1) is null; | ||
24 | + | ||
25 | + RETURN NULL; | ||
26 | + END | ||
27 | + $func$ LANGUAGE plpgsql; | ||
28 | + | ||
29 | + CREATE TRIGGER retira_data_cancel_matricula_trg | ||
30 | + AFTER UPDATE ON pmieducar.matricula | ||
31 | + FOR EACH ROW | ||
32 | + EXECUTE PROCEDURE retira_data_cancel_matricula_fun(); | ||
33 | + | ||
34 | + -- //@UNDO | ||
35 | + | ||
36 | + ALTER TABLE pmieducar.matricula DROP COLUMN data_matricula; | ||
37 | + ALTER TABLE pmieducar.matricula DROP COLUMN data_cancel; | ||
38 | + | ||
39 | + DROP TRIGGER retira_data_cancel_matricula_trg ON pmieducar.matricula; | ||
40 | + | ||
41 | + DROP FUNCTION public.retira_data_cancel_matricula_fun(); | ||
42 | + | ||
43 | + -- // | ||
0 | \ No newline at end of file | 44 | \ No newline at end of file |