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 @@ | @@ -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 | \ No newline at end of file | 56 | \ No newline at end of file |
ieducar/misc/database/ieducar.sql
@@ -10352,6 +10352,34 @@ CREATE TABLE componente_curricular_turma ( | @@ -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 | -- Name: falta_aluno; Type: TABLE; Schema: modules; Owner: -; Tablespace: | 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,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 | -- Data for Name: falta_aluno; Type: TABLE DATA; Schema: modules; Owner: - | 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,6 +20199,7 @@ INSERT INTO changelog VALUES (23, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '23_cria | ||
20159 | INSERT INTO changelog VALUES (24, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '24_altera_tipo_campo_carga_horaria_pmieducar_servidor_alocacao.sql'); | 20199 | INSERT INTO changelog VALUES (24, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '24_altera_tipo_campo_carga_horaria_pmieducar_servidor_alocacao.sql'); |
20160 | INSERT INTO changelog VALUES (25, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '25_adiciona_campo_zona_localizacao_tabelas_enderecamento.sql'); | 20200 | INSERT INTO changelog VALUES (25, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '25_adiciona_campo_zona_localizacao_tabelas_enderecamento.sql'); |
20161 | INSERT INTO changelog VALUES (26, 'Main', 'NOW()', 'NOW()', 'dbdeploy', '26_cria_tabela_modules_transporte_aluno.sql'); | 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,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 | -- Name: falta_aluno_pkey; Type: CONSTRAINT; Schema: modules; Owner: -; Tablespace: | 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,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 | -- Name: falta_componente_curricular_falta_aluno_fk; Type: FK CONSTRAINT; Schema: modules; Owner: - | 32961 | -- Name: falta_componente_curricular_falta_aluno_fk; Type: FK CONSTRAINT; Schema: modules; Owner: - |
32897 | -- | 32962 | -- |
32898 | 32963 |
@@ -0,0 +1,65 @@ | @@ -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 | \ No newline at end of file | 66 | \ No newline at end of file |
@@ -0,0 +1,61 @@ | @@ -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 | \ No newline at end of file | 62 | \ No newline at end of file |
@@ -0,0 +1,67 @@ | @@ -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 | \ No newline at end of file | 68 | \ No newline at end of file |
ieducar/modules/Educacenso/Model/CodigoReferenciaDataMapper.php
0 → 100644
@@ -0,0 +1,55 @@ | @@ -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 | \ No newline at end of file | 56 | \ No newline at end of file |
@@ -0,0 +1,65 @@ | @@ -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 | \ No newline at end of file | 66 | \ No newline at end of file |
@@ -0,0 +1,61 @@ | @@ -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 | \ No newline at end of file | 62 | \ No newline at end of file |
@@ -0,0 +1,10 @@ | @@ -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 | \ No newline at end of file | 11 | \ No newline at end of file |
@@ -0,0 +1,21 @@ | @@ -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 | \ No newline at end of file | 22 | \ No newline at end of file |
@@ -0,0 +1,33 @@ | @@ -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 | \ No newline at end of file | 34 | \ No newline at end of file |
@@ -0,0 +1,55 @@ | @@ -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 | \ No newline at end of file | 56 | \ No newline at end of file |
@@ -0,0 +1,63 @@ | @@ -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 | \ No newline at end of file | 64 | \ No newline at end of file |
@@ -0,0 +1,63 @@ | @@ -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 | \ No newline at end of file | 64 | \ No newline at end of file |