Commit cdf0c23aca138fb30224b9ea726fd7230489e418
1 parent
976db410
Exists in
master
Adicionado módulo {{{Educacenso}}}:
* Conterá modelo para facilitar a padronização das rotinas de importação e exportação de dados para o Educacenso * Contém um modelo para referenciar o código interno do i-Educar para alunos e docentes com os usados pelo Inep
Showing
14 changed files
with
739 additions
and
0 deletions
Show diff stats
ieducar/misc/database/deltas/27_cria_tabela_modules_educacenso_cod_aluno_e_docente.sql
0 → 100644
... | ... | @@ -0,0 +1,55 @@ |
1 | +-- // | |
2 | + | |
3 | +-- | |
4 | +-- Cria as tabelas modules.educacenso_cod_aluno e | |
5 | +-- modules.educacenso_cod_docente. | |
6 | +-- | |
7 | +-- @author Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
8 | +-- @license @@license@@ | |
9 | +-- @version $Id$ | |
10 | +-- | |
11 | + | |
12 | +CREATE TABLE modules.educacenso_cod_aluno | |
13 | +( | |
14 | + cod_aluno integer NOT NULL, | |
15 | + cod_aluno_inep bigint NOT NULL, | |
16 | + nome_inep character varying(255), | |
17 | + fonte character varying(255), | |
18 | + created_at timestamp without time zone NOT NULL, | |
19 | + updated_at timestamp without time zone | |
20 | +) WITH (OIDS=FALSE); | |
21 | + | |
22 | +ALTER TABLE modules.educacenso_cod_aluno ADD | |
23 | + CONSTRAINT educacenso_cod_aluno_pk | |
24 | + PRIMARY KEY (cod_aluno, cod_aluno_inep); | |
25 | + | |
26 | +ALTER TABLE modules.educacenso_cod_aluno ADD | |
27 | + CONSTRAINT educacenso_cod_aluno_cod_aluno_fk | |
28 | + FOREIGN KEY (cod_aluno) REFERENCES pmieducar.aluno (cod_aluno) | |
29 | + ON UPDATE NO ACTION ON DELETE CASCADE; | |
30 | + | |
31 | + | |
32 | +CREATE TABLE modules.educacenso_cod_docente | |
33 | +( | |
34 | + cod_servidor integer NOT NULL, | |
35 | + cod_docente_inep bigint NOT NULL, | |
36 | + nome_inep character varying(255), | |
37 | + fonte character varying(255), | |
38 | + created_at timestamp without time zone NOT NULL, | |
39 | + updated_at timestamp without time zone | |
40 | +) WITH (OIDS=FALSE); | |
41 | + | |
42 | +ALTER TABLE modules.educacenso_cod_docente ADD | |
43 | + CONSTRAINT educacenso_cod_docente_pk | |
44 | + PRIMARY KEY (cod_servidor, cod_docente_inep); | |
45 | + | |
46 | +-- //@UNDO | |
47 | + | |
48 | +ALTER TABLE modules.educacenso_cod_aluno DROP | |
49 | + CONSTRAINT educacenso_cod_aluno_cod_aluno_fk; | |
50 | + | |
51 | +DROP TABLE modules.educacenso_cod_aluno; | |
52 | + | |
53 | +DROP TABLE modules.educacenso_cod_docente; | |
54 | + | |
55 | +-- // | |
0 | 56 | \ No newline at end of file | ... | ... |
ieducar/misc/database/ieducar.sql
... | ... | @@ -10352,6 +10352,34 @@ CREATE TABLE componente_curricular_turma ( |
10352 | 10352 | |
10353 | 10353 | |
10354 | 10354 | -- |
10355 | +-- Name: educacenso_cod_aluno; Type: TABLE; Schema: modules; Owner: -; Tablespace: | |
10356 | +-- | |
10357 | + | |
10358 | +CREATE TABLE educacenso_cod_aluno ( | |
10359 | + cod_aluno integer NOT NULL, | |
10360 | + cod_aluno_inep bigint NOT NULL, | |
10361 | + nome_inep character varying(255), | |
10362 | + fonte character varying(255), | |
10363 | + created_at timestamp without time zone NOT NULL, | |
10364 | + updated_at timestamp without time zone | |
10365 | +); | |
10366 | + | |
10367 | + | |
10368 | +-- | |
10369 | +-- Name: educacenso_cod_docente; Type: TABLE; Schema: modules; Owner: -; Tablespace: | |
10370 | +-- | |
10371 | + | |
10372 | +CREATE TABLE educacenso_cod_docente ( | |
10373 | + cod_servidor integer NOT NULL, | |
10374 | + cod_docente_inep bigint NOT NULL, | |
10375 | + nome_inep character varying(255), | |
10376 | + fonte character varying(255), | |
10377 | + created_at timestamp without time zone NOT NULL, | |
10378 | + updated_at timestamp without time zone | |
10379 | +); | |
10380 | + | |
10381 | + | |
10382 | +-- | |
10355 | 10383 | -- Name: falta_aluno; Type: TABLE; Schema: modules; Owner: -; Tablespace: |
10356 | 10384 | -- |
10357 | 10385 | |
... | ... | @@ -17752,6 +17780,18 @@ SET search_path = modules, pg_catalog; |
17752 | 17780 | |
17753 | 17781 | |
17754 | 17782 | -- |
17783 | +-- Data for Name: educacenso_cod_aluno; Type: TABLE DATA; Schema: modules; Owner: - | |
17784 | +-- | |
17785 | + | |
17786 | + | |
17787 | + | |
17788 | +-- | |
17789 | +-- Data for Name: educacenso_cod_docente; Type: TABLE DATA; Schema: modules; Owner: - | |
17790 | +-- | |
17791 | + | |
17792 | + | |
17793 | + | |
17794 | +-- | |
17755 | 17795 | -- Data for Name: falta_aluno; Type: TABLE DATA; Schema: modules; Owner: - |
17756 | 17796 | -- |
17757 | 17797 | |
... | ... | @@ -20159,6 +20199,7 @@ INSERT INTO changelog VALUES (23, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '23_cria |
20159 | 20199 | INSERT INTO changelog VALUES (24, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '24_altera_tipo_campo_carga_horaria_pmieducar_servidor_alocacao.sql'); |
20160 | 20200 | INSERT INTO changelog VALUES (25, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '25_adiciona_campo_zona_localizacao_tabelas_enderecamento.sql'); |
20161 | 20201 | INSERT INTO changelog VALUES (26, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '26_cria_tabela_modules_transporte_aluno.sql'); |
20202 | +INSERT INTO changelog VALUES (27, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '27_cria_tabela_modules_educacenso_cod_aluno_e_docente.sql'); | |
20162 | 20203 | |
20163 | 20204 | |
20164 | 20205 | -- |
... | ... | @@ -27069,6 +27110,22 @@ ALTER TABLE ONLY componente_curricular_turma |
27069 | 27110 | |
27070 | 27111 | |
27071 | 27112 | -- |
27113 | +-- Name: educacenso_cod_aluno_pk; Type: CONSTRAINT; Schema: modules; Owner: -; Tablespace: | |
27114 | +-- | |
27115 | + | |
27116 | +ALTER TABLE ONLY educacenso_cod_aluno | |
27117 | + ADD CONSTRAINT educacenso_cod_aluno_pk PRIMARY KEY (cod_aluno, cod_aluno_inep); | |
27118 | + | |
27119 | + | |
27120 | +-- | |
27121 | +-- Name: educacenso_cod_docente_pk; Type: CONSTRAINT; Schema: modules; Owner: -; Tablespace: | |
27122 | +-- | |
27123 | + | |
27124 | +ALTER TABLE ONLY educacenso_cod_docente | |
27125 | + ADD CONSTRAINT educacenso_cod_docente_pk PRIMARY KEY (cod_servidor, cod_docente_inep); | |
27126 | + | |
27127 | + | |
27128 | +-- | |
27072 | 27129 | -- Name: falta_aluno_pkey; Type: CONSTRAINT; Schema: modules; Owner: -; Tablespace: |
27073 | 27130 | -- |
27074 | 27131 | |
... | ... | @@ -32893,6 +32950,14 @@ ALTER TABLE ONLY componente_curricular_turma |
32893 | 32950 | |
32894 | 32951 | |
32895 | 32952 | -- |
32953 | +-- Name: educacenso_cod_aluno_cod_aluno_fk; Type: FK CONSTRAINT; Schema: modules; Owner: - | |
32954 | +-- | |
32955 | + | |
32956 | +ALTER TABLE ONLY educacenso_cod_aluno | |
32957 | + ADD CONSTRAINT educacenso_cod_aluno_cod_aluno_fk FOREIGN KEY (cod_aluno) REFERENCES pmieducar.aluno(cod_aluno) ON DELETE CASCADE; | |
32958 | + | |
32959 | + | |
32960 | +-- | |
32896 | 32961 | -- Name: falta_componente_curricular_falta_aluno_fk; Type: FK CONSTRAINT; Schema: modules; Owner: - |
32897 | 32962 | -- |
32898 | 32963 | ... | ... |
... | ... | @@ -0,0 +1,65 @@ |
1 | +<?php | |
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 Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
24 | + * @category i-Educar | |
25 | + * @license @@license@@ | |
26 | + * @package Educacenso | |
27 | + * @subpackage Modules | |
28 | + * @since Arquivo disponível desde a versão 1.2.0 | |
29 | + * @version $Id$ | |
30 | + */ | |
31 | + | |
32 | +require_once 'CoreExt/Entity.php'; | |
33 | +require_once 'Educacenso/Model/CodigoReferencia.php'; | |
34 | + | |
35 | +/** | |
36 | + * Educacenso_Model_Aluno class. | |
37 | + * | |
38 | + * @author Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
39 | + * @category i-Educar | |
40 | + * @license @@license@@ | |
41 | + * @package Educacenso | |
42 | + * @subpackage Modules | |
43 | + * @since Classe disponível desde a versão 1.2.0 | |
44 | + * @version @@package_version@@ | |
45 | + */ | |
46 | +class Educacenso_Model_Aluno extends Educacenso_Model_CodigoReferencia | |
47 | +{ | |
48 | + public function getDefaultValidatorCollection() | |
49 | + { | |
50 | + $validators = array( | |
51 | + 'aluno' => new CoreExt_Validate_Numeric(array('min' => 0)), | |
52 | + 'alunoInep' => new CoreExt_Validate_Numeric(array('min' => 0)), | |
53 | + ); | |
54 | + | |
55 | + return array_merge($validators, parent::getDefaultValidatorCollection()); | |
56 | + } | |
57 | + | |
58 | + public function __construct(array $options = array()) | |
59 | + { | |
60 | + $this->_data['aluno'] = NULL; | |
61 | + $this->_data['alunoInep'] = NULL; | |
62 | + | |
63 | + parent::__construct($options); | |
64 | + } | |
65 | +} | |
0 | 66 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,61 @@ |
1 | +<?php | |
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 Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
24 | + * @category i-Educar | |
25 | + * @license @@license@@ | |
26 | + * @package Educacenso | |
27 | + * @subpackage Modules | |
28 | + * @since Arquivo disponível desde a versão 1.2.0 | |
29 | + * @version $Id$ | |
30 | + */ | |
31 | + | |
32 | +require_once 'Educacenso/Model/Aluno.php'; | |
33 | +require_once 'Educacenso/Model/CodigoReferenciaDataMapper.php'; | |
34 | + | |
35 | +/** | |
36 | + * Educacenso_Model_AlunoDataMapper class. | |
37 | + * | |
38 | + * @author Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
39 | + * @category i-Educar | |
40 | + * @license @@license@@ | |
41 | + * @package Educacenso | |
42 | + * @subpackage Modules | |
43 | + * @since Classe disponível desde a versão 1.2.0 | |
44 | + * @version @@package_version@@ | |
45 | + */ | |
46 | +class Educacenso_Model_AlunoDataMapper extends Educacenso_Model_CodigoReferenciaDataMapper | |
47 | +{ | |
48 | + protected $_entityClass = 'Educacenso_Model_Aluno'; | |
49 | + protected $_tableName = 'educacenso_cod_aluno'; | |
50 | + | |
51 | + protected $_primaryKey = array( | |
52 | + 'aluno', 'alunoInep' | |
53 | + ); | |
54 | + | |
55 | + public function __construct(clsBanco $db = NULL) | |
56 | + { | |
57 | + $this->_attributeMap['aluno'] = 'cod_aluno'; | |
58 | + $this->_attributeMap['alunoInep'] = 'cod_aluno_inep'; | |
59 | + parent::__construct($db); | |
60 | + } | |
61 | +} | |
0 | 62 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,67 @@ |
1 | +<?php | |
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 Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
24 | + * @category i-Educar | |
25 | + * @license @@license@@ | |
26 | + * @package Educacenso | |
27 | + * @subpackage Modules | |
28 | + * @since Arquivo disponível desde a versão 1.2.0 | |
29 | + * @version $Id$ | |
30 | + */ | |
31 | + | |
32 | +require_once 'CoreExt/Entity.php'; | |
33 | + | |
34 | +/** | |
35 | + * Educacenso_Model_CodigoReferencia abstract class. | |
36 | + * | |
37 | + * @author Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
38 | + * @category i-Educar | |
39 | + * @license @@license@@ | |
40 | + * @package Educacenso | |
41 | + * @subpackage Modules | |
42 | + * @since Classe disponível desde a versão 1.2.0 | |
43 | + * @version @@package_version@@ | |
44 | + */ | |
45 | +abstract class Educacenso_Model_CodigoReferencia extends CoreExt_Entity | |
46 | +{ | |
47 | + protected $_data = array( | |
48 | + 'nomeInep' => NULL, | |
49 | + 'fonte' => NULL, | |
50 | + 'created_at' => NULL, | |
51 | + 'updated_at' => NULL | |
52 | + ); | |
53 | + | |
54 | + public function getDefaultValidatorCollection() | |
55 | + { | |
56 | + return array( | |
57 | + 'nomeInep' => new CoreExt_Validate_String(), | |
58 | + 'fonte' => new CoreExt_Validate_String() | |
59 | + ); | |
60 | + } | |
61 | + | |
62 | + public function __construct(array $options = array()) | |
63 | + { | |
64 | + parent::__construct($options); | |
65 | + unset($this->_data['id']); | |
66 | + } | |
67 | +} | |
0 | 68 | \ No newline at end of file | ... | ... |
ieducar/modules/Educacenso/Model/CodigoReferenciaDataMapper.php
0 → 100644
... | ... | @@ -0,0 +1,55 @@ |
1 | +<?php | |
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 Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
24 | + * @category i-Educar | |
25 | + * @license @@license@@ | |
26 | + * @package Educacenso | |
27 | + * @subpackage Modules | |
28 | + * @since Arquivo disponível desde a versão 1.2.0 | |
29 | + * @version $Id$ | |
30 | + */ | |
31 | + | |
32 | +require_once 'CoreExt/DataMapper.php'; | |
33 | + | |
34 | +/** | |
35 | + * Educacenso_Model_CodigoReferenciaDataMapper class. | |
36 | + * | |
37 | + * @author Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
38 | + * @category i-Educar | |
39 | + * @license @@license@@ | |
40 | + * @package Educacenso | |
41 | + * @subpackage Modules | |
42 | + * @since Classe disponível desde a versão 1.2.0 | |
43 | + * @version @@package_version@@ | |
44 | + */ | |
45 | +abstract class Educacenso_Model_CodigoReferenciaDataMapper extends CoreExt_DataMapper | |
46 | +{ | |
47 | + protected $_tableSchema = 'modules'; | |
48 | + | |
49 | + protected $_attributeMap = array( | |
50 | + 'nomeInep' => 'nome_inep', | |
51 | + 'fonte' => 'fonte', | |
52 | + 'created_at' => 'created_at', | |
53 | + 'updated_at' => 'updated_at' | |
54 | + ); | |
55 | +} | |
0 | 56 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,65 @@ |
1 | +<?php | |
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 Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
24 | + * @category i-Educar | |
25 | + * @license @@license@@ | |
26 | + * @package Educacenso | |
27 | + * @subpackage Modules | |
28 | + * @since Arquivo disponível desde a versão 1.2.0 | |
29 | + * @version $Id$ | |
30 | + */ | |
31 | + | |
32 | +require_once 'CoreExt/Entity.php'; | |
33 | +require_once 'Educacenso/Model/CodigoReferencia.php'; | |
34 | + | |
35 | +/** | |
36 | + * Educacenso_Model_Docente class. | |
37 | + * | |
38 | + * @author Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
39 | + * @category i-Educar | |
40 | + * @license @@license@@ | |
41 | + * @package Educacenso | |
42 | + * @subpackage Modules | |
43 | + * @since Classe disponível desde a versão 1.2.0 | |
44 | + * @version @@package_version@@ | |
45 | + */ | |
46 | +class Educacenso_Model_Docente extends Educacenso_Model_CodigoReferencia | |
47 | +{ | |
48 | + public function getDefaultValidatorCollection() | |
49 | + { | |
50 | + $validators = array( | |
51 | + 'docente' => new CoreExt_Validate_Numeric(array('min' => 0)), | |
52 | + 'docenteInep' => new CoreExt_Validate_Numeric(array('min' => 0)), | |
53 | + ); | |
54 | + | |
55 | + return array_merge($validators, parent::getDefaultValidatorCollection()); | |
56 | + } | |
57 | + | |
58 | + public function __construct(array $options = array()) | |
59 | + { | |
60 | + $this->_data['docente'] = NULL; | |
61 | + $this->_data['docenteInep'] = NULL; | |
62 | + | |
63 | + parent::__construct($options); | |
64 | + } | |
65 | +} | |
0 | 66 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,61 @@ |
1 | +<?php | |
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 Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
24 | + * @category i-Educar | |
25 | + * @license @@license@@ | |
26 | + * @package Educacenso | |
27 | + * @subpackage Modules | |
28 | + * @since Arquivo disponível desde a versão 1.2.0 | |
29 | + * @version $Id$ | |
30 | + */ | |
31 | + | |
32 | +require_once 'Educacenso/Model/Docente.php'; | |
33 | +require_once 'Educacenso/Model/CodigoReferenciaDataMapper.php'; | |
34 | + | |
35 | +/** | |
36 | + * Educacenso_Model_DocenteDataMapper class. | |
37 | + * | |
38 | + * @author Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
39 | + * @category i-Educar | |
40 | + * @license @@license@@ | |
41 | + * @package Educacenso | |
42 | + * @subpackage Modules | |
43 | + * @since Classe disponível desde a versão 1.2.0 | |
44 | + * @version @@package_version@@ | |
45 | + */ | |
46 | +class Educacenso_Model_DocenteDataMapper extends Educacenso_Model_CodigoReferenciaDataMapper | |
47 | +{ | |
48 | + protected $_entityClass = 'Educacenso_Model_Docente'; | |
49 | + protected $_tableName = 'educacenso_cod_docente'; | |
50 | + | |
51 | + protected $_primaryKey = array( | |
52 | + 'docente', 'docenteInep' | |
53 | + ); | |
54 | + | |
55 | + public function __construct(clsBanco $db = NULL) | |
56 | + { | |
57 | + $this->_attributeMap['docente'] = 'cod_servidor'; | |
58 | + $this->_attributeMap['docenteInep'] = 'cod_docente_inep'; | |
59 | + parent::__construct($db); | |
60 | + } | |
61 | +} | |
0 | 62 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,10 @@ |
1 | +README | |
2 | +====== | |
3 | + | |
4 | +Este módulo constitui-se de classes modelos que servirão como base para a | |
5 | +definição de rotinas padronizadas para a importação e exportação dos dados | |
6 | +do Educacenso. | |
7 | + | |
8 | +Esses modelos serão ao longo do tempo incorporados na interface de usuário do | |
9 | +i-Educar, da forma menos intrusiva possível a fim de garantir a independência | |
10 | +do sistema das definições (e as atualizações anuais) de dados do Educacenso. | |
0 | 11 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,21 @@ |
1 | +TODO | |
2 | +==== | |
3 | + | |
4 | +1. Resolver problemas lógicos do gerenciamento de servidores para permitir | |
5 | + importação do Educacenso para múltiplas instituições (ver _data/install.sql) | |
6 | + | |
7 | +Enquanto modules.educacenso_cod_aluno possui uma restrição referenciando | |
8 | +pmieducar.aluno, a mesma não é possível de se aplicar a | |
9 | +modules.educacenso_cod_docente, já que pmieducar.servidor não possui | |
10 | +cod_servidor com uma restrição do tipo única (primary key ou unique). Como a | |
11 | +tabela pmieducar.servidor foi projetada para poder cadastrar uma mesma pessoa | |
12 | +física em várias instituições diferentes, esta restrição foi ignorada. | |
13 | + | |
14 | +É importante notar que em um caso de vários importações de docentes do | |
15 | +Educacenso em instituições diferentes, a pessoa física subjacente continuaria | |
16 | +a mesma. Para que as diferenças cadastrais (por exemplo, um município informa | |
17 | +que o docente tem mestrado enquanto o outro apenas informa que este possui | |
18 | +nível superior) sejam resolvidas, seria necessário criar duas pessoas físicas | |
19 | +diferentes. Enfim, toda a questão de lotação de servidores | |
20 | +(ex: escolaridade) precisam ser movidas para o gerenciamento de pessoas | |
21 | +físicas para evitar esse problema em instalações multi-institucionais. | |
0 | 22 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,33 @@ |
1 | +CREATE TABLE modules.educacenso_cod_aluno | |
2 | +( | |
3 | + cod_aluno integer NOT NULL, | |
4 | + cod_aluno_inep bigint NOT NULL, | |
5 | + nome_inep character varying(255), | |
6 | + fonte character varying(255), | |
7 | + created_at timestamp without time zone NOT NULL, | |
8 | + updated_at timestamp without time zone | |
9 | +) WITH (OIDS=FALSE); | |
10 | + | |
11 | +ALTER TABLE modules.educacenso_cod_aluno ADD | |
12 | + CONSTRAINT educacenso_cod_aluno_pk | |
13 | + PRIMARY KEY (cod_aluno, cod_aluno_inep); | |
14 | + | |
15 | +ALTER TABLE modules.educacenso_cod_aluno ADD | |
16 | + CONSTRAINT educacenso_cod_aluno_cod_aluno_fk | |
17 | + FOREIGN KEY (cod_aluno) REFERENCES pmieducar.aluno (cod_aluno) | |
18 | + ON UPDATE NO ACTION ON DELETE CASCADE; | |
19 | + | |
20 | + | |
21 | +CREATE TABLE modules.educacenso_cod_docente | |
22 | +( | |
23 | + cod_servidor integer NOT NULL, | |
24 | + cod_docente_inep bigint NOT NULL, | |
25 | + nome_inep character varying(255), | |
26 | + fonte character varying(255), | |
27 | + created_at timestamp without time zone NOT NULL, | |
28 | + updated_at timestamp without time zone | |
29 | +) WITH (OIDS=FALSE); | |
30 | + | |
31 | +ALTER TABLE modules.educacenso_cod_docente ADD | |
32 | + CONSTRAINT educacenso_cod_docente_pk | |
33 | + PRIMARY KEY (cod_servidor, cod_docente_inep); | |
0 | 34 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,55 @@ |
1 | +<?php | |
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 Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
24 | + * @category i-Educar | |
25 | + * @license @@license@@ | |
26 | + * @package Educacenso | |
27 | + * @subpackage Tests | |
28 | + * @since Arquivo disponível desde a versão 1.2.0 | |
29 | + * @version $Id$ | |
30 | + */ | |
31 | + | |
32 | +/** | |
33 | + * AreaConhecimento_AllTests class. | |
34 | + * | |
35 | + * Arquivo de definição de suíte para o módulo. | |
36 | + * | |
37 | + * @author Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
38 | + * @category i-Educar | |
39 | + * @license @@license@@ | |
40 | + * @package Educacenso | |
41 | + * @subpackage Tests | |
42 | + * @since Classe disponível desde a versão 1.2.0 | |
43 | + * @version @@package_version@@ | |
44 | + */ | |
45 | +class Educacenso_AllTests extends TestCollector | |
46 | +{ | |
47 | + protected $_name = 'Suíte de testes do módulo Educacenso'; | |
48 | + protected $_file = __FILE__; | |
49 | + | |
50 | + public static function suite() | |
51 | + { | |
52 | + $instance = new self; | |
53 | + return $instance->addDirectoryTests(); | |
54 | + } | |
55 | +} | |
0 | 56 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,63 @@ |
1 | +<?php | |
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 Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
24 | + * @category i-Educar | |
25 | + * @license @@license@@ | |
26 | + * @package Educacenso | |
27 | + * @subpackage UnitTests | |
28 | + * @since Arquivo disponível desde a versão 1.2.0 | |
29 | + * @version $Id$ | |
30 | + */ | |
31 | + | |
32 | +require_once 'Educacenso/Model/Aluno.php'; | |
33 | + | |
34 | +/** | |
35 | + * Educacenso_Model_AlunoTest class. | |
36 | + * | |
37 | + * @author Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
38 | + * @category i-Educar | |
39 | + * @license @@license@@ | |
40 | + * @package Educacenso | |
41 | + * @subpackage UnitTests | |
42 | + * @since Classe disponível desde a versão 1.2.0 | |
43 | + * @version @@package_version@@ | |
44 | + */ | |
45 | +class Educacenso_Model_AlunoTest extends UnitBaseTest | |
46 | +{ | |
47 | + protected $_entity = NULL; | |
48 | + | |
49 | + protected function setUp() | |
50 | + { | |
51 | + $this->_entity = new Educacenso_Model_Aluno(); | |
52 | + } | |
53 | + | |
54 | + public function testEntityValidators() | |
55 | + { | |
56 | + // Recupera os objetos CoreExt_Validate | |
57 | + $validators = $this->_entity->getDefaultValidatorCollection(); | |
58 | + $this->assertType('CoreExt_Validate_Numeric', $validators['aluno']); | |
59 | + $this->assertType('CoreExt_Validate_Numeric', $validators['alunoInep']); | |
60 | + $this->assertType('CoreExt_Validate_String', $validators['nomeInep']); | |
61 | + $this->assertType('CoreExt_Validate_String', $validators['fonte']); | |
62 | + } | |
63 | +} | |
0 | 64 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,63 @@ |
1 | +<?php | |
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 Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
24 | + * @category i-Educar | |
25 | + * @license @@license@@ | |
26 | + * @package Educacenso | |
27 | + * @subpackage UnitTests | |
28 | + * @since Arquivo disponível desde a versão 1.2.0 | |
29 | + * @version $Id$ | |
30 | + */ | |
31 | + | |
32 | +require_once 'Educacenso/Model/Docente.php'; | |
33 | + | |
34 | +/** | |
35 | + * Educacenso_Model_DocenteTest class. | |
36 | + * | |
37 | + * @author Eriksen Costa Paixão <eriksen.paixao_bs@cobra.com.br> | |
38 | + * @category i-Educar | |
39 | + * @license @@license@@ | |
40 | + * @package Educacenso | |
41 | + * @subpackage UnitTests | |
42 | + * @since Classe disponível desde a versão 1.2.0 | |
43 | + * @version @@package_version@@ | |
44 | + */ | |
45 | +class Educacenso_Model_DocenteTest extends UnitBaseTest | |
46 | +{ | |
47 | + protected $_entity = NULL; | |
48 | + | |
49 | + protected function setUp() | |
50 | + { | |
51 | + $this->_entity = new Educacenso_Model_Docente(); | |
52 | + } | |
53 | + | |
54 | + public function testEntityValidators() | |
55 | + { | |
56 | + // Recupera os objetos CoreExt_Validate | |
57 | + $validators = $this->_entity->getDefaultValidatorCollection(); | |
58 | + $this->assertType('CoreExt_Validate_Numeric', $validators['docente']); | |
59 | + $this->assertType('CoreExt_Validate_Numeric', $validators['docenteInep']); | |
60 | + $this->assertType('CoreExt_Validate_String', $validators['nomeInep']); | |
61 | + $this->assertType('CoreExt_Validate_String', $validators['fonte']); | |
62 | + } | |
63 | +} | |
0 | 64 | \ No newline at end of file | ... | ... |