Commit 8cb011d33da4da4ccc8797b8935c01a7e03c06e0
1 parent
169ef5be
Exists in
master
Criado relatório Atestado de frequência
portabilis/ieducar#99
Showing
6 changed files
with
546 additions
and
0 deletions
Show diff stats
ieducar/modules/Api/Views/MatriculaController.php
... | ... | @@ -33,6 +33,7 @@ require_once 'lib/Portabilis/Controller/ApiCoreController.php'; |
33 | 33 | require_once 'lib/Portabilis/Array/Utils.php'; |
34 | 34 | require_once 'lib/Portabilis/String/Utils.php'; |
35 | 35 | require_once 'App/Model/MatriculaSituacao.php'; |
36 | +require_once 'intranet/include/clsBanco.inc.php'; | |
36 | 37 | |
37 | 38 | class MatriculaController extends ApiCoreController |
38 | 39 | { |
... | ... | @@ -192,6 +193,13 @@ class MatriculaController extends ApiCoreController |
192 | 193 | } |
193 | 194 | } |
194 | 195 | |
196 | + protected function getFrequencia() { | |
197 | + $cod_matricula = $this->getRequest()->id; | |
198 | + $objBanco = new clsBanco(); | |
199 | + $frequencia = $objBanco->unicoCampo(" SELECT modules.frequencia_da_matricula({$cod_matricula}); "); | |
200 | + return array('frequencia' => $frequencia); | |
201 | + } | |
202 | + | |
195 | 203 | protected function deleteAbandono() { |
196 | 204 | if ($this->canDeleteAbandono()) { |
197 | 205 | $matriculaId = $this->getRequest()->id; |
... | ... | @@ -214,6 +222,9 @@ class MatriculaController extends ApiCoreController |
214 | 222 | elseif ($this->isRequestFor('get', 'matricula-search')) |
215 | 223 | $this->appendResponse($this->search()); |
216 | 224 | |
225 | + elseif ($this->isRequestFor('get', 'frequencia')) | |
226 | + $this->appendResponse($this->getFrequencia()); | |
227 | + | |
217 | 228 | elseif ($this->isRequestFor('delete', 'abandono')) |
218 | 229 | $this->appendResponse($this->deleteAbandono()); |
219 | 230 | ... | ... |
ieducar/modules/Reports/Assets/Javascripts/AtestadoFrequencia.js
0 → 100644
... | ... | @@ -0,0 +1,50 @@ |
1 | +var handleGetFrequencia = function(dataResponse) { | |
2 | + | |
3 | + var frequencia = parseFloat(dataResponse['frequencia']).toFixed(2); | |
4 | + var frequencia_final = ''; | |
5 | + | |
6 | + if (isNaN(frequencia)) | |
7 | + frequencia= 'Não informado'; | |
8 | + else | |
9 | + frequencia_final = '%'; | |
10 | + | |
11 | + $j('#frequencia').html('Frequência: '+frequencia+frequencia_final) | |
12 | + .show() | |
13 | + .css('display', 'inline'); | |
14 | + | |
15 | + $j('#frequencia').addClass( (frequencia>=75 ? 'frequencia-acima' : 'frequencia-abaixo') ); | |
16 | +} | |
17 | + | |
18 | +$j('<div>').html('') | |
19 | + .addClass('div-frequencia') | |
20 | + .attr('id','frequencia') | |
21 | + .appendTo($j('#matricula').closest('td')).hide(); | |
22 | + | |
23 | +var getFrequenciaMatricula = function() { | |
24 | + $j('#frequencia').removeClass('frequencia-acima frequencia-abaixo'); | |
25 | + | |
26 | + if($j('#matricula').val()=='') | |
27 | + $j('#matricula_id').val(''); | |
28 | + | |
29 | + var $matriculaField = $j('#matricula_id'); | |
30 | + | |
31 | + if ($matriculaField.val()!='') { | |
32 | + | |
33 | + var additionalVars = { | |
34 | + id : $matriculaField.val(), | |
35 | + }; | |
36 | + | |
37 | + var options = { | |
38 | + url : getResourceUrlBuilder.buildUrl('/module/Api/matricula', 'frequencia', additionalVars), | |
39 | + dataType : 'json', | |
40 | + data : {}, | |
41 | + success : handleGetFrequencia, | |
42 | + }; | |
43 | + | |
44 | + getResource(options); | |
45 | + }else{ | |
46 | + $j('#frequencia').hide(); | |
47 | + } | |
48 | +} | |
49 | + | |
50 | +$j('#matricula').blur(getFrequenciaMatricula); | |
0 | 51 | \ No newline at end of file | ... | ... |
ieducar/modules/Reports/Assets/Stylesheets/AtestadoFrequencia.css
0 → 100644
ieducar/modules/Reports/ReportSources/portabilis_atestado_frequencia.jrxml
0 → 100644
... | ... | @@ -0,0 +1,334 @@ |
1 | +<?xml version="1.0" encoding="UTF-8"?> | |
2 | +<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="portabilis_atestado_frequencia" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="b58c92c8-60b6-4afb-ae40-52aa24303ab2"> | |
3 | + <property name="ireport.zoom" value="0.9090909090909092"/> | |
4 | + <property name="ireport.x" value="0"/> | |
5 | + <property name="ireport.y" value="0"/> | |
6 | + <parameter name="ano" class="java.lang.Integer"> | |
7 | + <defaultValueExpression><![CDATA[new java.lang.Integer(0)]]></defaultValueExpression> | |
8 | + </parameter> | |
9 | + <parameter name="instituicao" class="java.lang.Integer"> | |
10 | + <defaultValueExpression><![CDATA[new java.lang.Integer(0)]]></defaultValueExpression> | |
11 | + </parameter> | |
12 | + <parameter name="escola" class="java.lang.Integer"> | |
13 | + <defaultValueExpression><![CDATA[new java.lang.Integer(0)]]></defaultValueExpression> | |
14 | + </parameter> | |
15 | + <parameter name="matricula" class="java.lang.Integer"> | |
16 | + <defaultValueExpression><![CDATA[new java.lang.Integer(0)]]></defaultValueExpression> | |
17 | + </parameter> | |
18 | + <parameter name="logo" class="java.lang.String"/> | |
19 | + <queryString> | |
20 | + <![CDATA[SELECT fcn_upper(instituicao.nm_instituicao) AS nm_instituicao, | |
21 | + fcn_upper(instituicao.nm_responsavel) AS nm_responsavel, | |
22 | + escola.cod_escola as cod_escola, | |
23 | + escola_ano_letivo.ano, | |
24 | + aluno.cod_aluno as cod_aluno, | |
25 | + (SELECT public.fcn_upper(curso.nm_curso) | |
26 | + FROM pmieducar.curso | |
27 | + WHERE curso.cod_curso = matricula.ref_cod_curso) as nm_curso, | |
28 | + (SELECT serie.nm_serie | |
29 | + FROM pmieducar.serie | |
30 | + WHERE serie.cod_serie = matricula.ref_ref_cod_serie) as nm_serie, | |
31 | + (SELECT turma.nm_turma | |
32 | + FROM pmieducar.turma, | |
33 | + pmieducar.matricula_turma | |
34 | + WHERE turma.cod_turma = matricula_turma.ref_cod_turma and | |
35 | + matricula_turma.ref_cod_matricula = matricula.cod_matricula) as nm_turma, | |
36 | + matricula.cod_matricula as cod_matricula, | |
37 | + fcn_upper(pessoa.nome) as nome, | |
38 | + to_char(fisica.data_nasc,'dd/mm/yyyy') as data_nasc, | |
39 | + (SELECT municipio.nome || ' - ' || sigla_uf | |
40 | + FROM public.municipio | |
41 | + WHERE municipio.idmun = fisica.idmun_nascimento) as municipio_uf_nascimento, | |
42 | + (SELECT to_char(data_cadastro,'dd/mm/yyyy') | |
43 | + FROM pmieducar.matricula mt | |
44 | + WHERE mt.cod_matricula = matricula.cod_matricula AND | |
45 | + mt.ativo = 1 AND | |
46 | + mt.ultima_matricula = 1) as dt_matricula, | |
47 | + matricula.ano as matricula_ano, | |
48 | + fcn_upper(instituicao.cidade) as cidade, | |
49 | + | |
50 | + (SELECT CASE WHEN fisica.idpes_pai IS NOT NULL THEN (SELECT upper(pessoa.nome) FROM cadastro.pessoa WHERE pessoa.idpes = fisica.idpes_pai LIMIT 1) WHEN fisica.nome_pai IS NOT NULL AND TRIM(fisica.nome_pai) != '' THEN fisica.nome_pai WHEN aluno.nm_pai IS NOT NULL AND TRIM(aluno.nm_pai) != '' THEN upper(aluno.nm_pai) ELSE 'Não informado' END) AS nm_pai, | |
51 | + | |
52 | + (SELECT CASE WHEN fisica.idpes_mae IS NOT NULL THEN (SELECT upper(pessoa.nome) FROM cadastro.pessoa WHERE pessoa.idpes = fisica.idpes_mae LIMIT 1) WHEN fisica.nome_mae IS NOT NULL AND TRIM(fisica.nome_mae) != '' THEN fisica.nome_mae WHEN aluno.nm_mae IS NOT NULL AND TRIM(aluno.nm_mae) != '' THEN upper(aluno.nm_mae) ELSE 'Não informado' END) AS nm_mae, | |
53 | + | |
54 | + (SELECT COALESCE((SELECT COALESCE (fcn_upper(ps.nome),fcn_upper(juridica.fantasia)) | |
55 | + FROM cadastro.pessoa ps, | |
56 | + cadastro.juridica | |
57 | + WHERE escola.ref_idpes = juridica.idpes AND | |
58 | + juridica.idpes = ps.idpes AND | |
59 | + ps.idpes = escola.ref_idpes),(SELECT nm_escola FROM pmieducar.escola_complemento where ref_cod_escola = escola.cod_escola))) AS nm_escola, | |
60 | + | |
61 | + (SELECT fcn_upper(substring(logradouro.idtlog from 1 for 1)) || | |
62 | + lower(substring(logradouro.idtlog, 2)) | |
63 | + FROM public.logradouro, | |
64 | + cadastro.juridica, | |
65 | + cadastro.pessoa ps, | |
66 | + cadastro.endereco_pessoa | |
67 | + WHERE juridica.idpes = ps.idpes AND | |
68 | + ps.idpes = endereco_pessoa.idpes AND | |
69 | + endereco_pessoa.idlog = logradouro.idlog AND | |
70 | + juridica.idpes = escola.ref_idpes) AS tipo_logradouro, | |
71 | + | |
72 | + (SELECT COALESCE((SELECT COALESCE((SELECT logradouro.nome | |
73 | + FROM public.logradouro, | |
74 | + cadastro.juridica, | |
75 | + cadastro.pessoa ps, | |
76 | + cadastro.endereco_pessoa | |
77 | + WHERE juridica.idpes = ps.idpes AND | |
78 | + ps.idpes = endereco_pessoa.idpes AND | |
79 | + endereco_pessoa.idlog = logradouro.idlog AND | |
80 | + juridica.idpes = escola.ref_idpes),(SELECT endereco_externo.logradouro FROM cadastro.endereco_externo WHERE endereco_externo.idpes = escola.ref_idpes))),(SELECT logradouro FROM pmieducar.escola_complemento where ref_cod_escola = escola.cod_escola))) AS logradouro, | |
81 | + | |
82 | + (SELECT COALESCE((SELECT COALESCE((SELECT bairro.nome | |
83 | + FROM public.municipio, | |
84 | + cadastro.endereco_pessoa, | |
85 | + cadastro.juridica, | |
86 | + public.bairro | |
87 | + WHERE endereco_pessoa.idbai = bairro.idbai AND | |
88 | + bairro.idmun = municipio.idmun AND | |
89 | + juridica.idpes = endereco_pessoa.idpes AND | |
90 | + juridica.idpes = escola.ref_idpes),(SELECT endereco_externo.bairro FROM cadastro.endereco_externo WHERE endereco_externo.idpes = escola.ref_idpes))),(SELECT bairro FROM pmieducar.escola_complemento where ref_cod_escola = escola.cod_escola))) AS bairro, | |
91 | + | |
92 | + (SELECT COALESCE((SELECT COALESCE ((SELECT municipio.nome | |
93 | + FROM public.municipio, | |
94 | + cadastro.endereco_pessoa, | |
95 | + cadastro.juridica, | |
96 | + public.bairro | |
97 | + WHERE endereco_pessoa.idbai = bairro.idbai AND | |
98 | + bairro.idmun = municipio.idmun AND | |
99 | + juridica.idpes = endereco_pessoa.idpes AND | |
100 | + juridica.idpes = escola.ref_idpes), (SELECT endereco_externo.cidade FROM cadastro.endereco_externo WHERE endereco_externo.idpes = escola.ref_idpes))),(SELECT municipio FROM pmieducar.escola_complemento where ref_cod_escola = escola.cod_escola))) AS municipio, | |
101 | + | |
102 | + (SELECT COALESCE((SELECT COALESCE((SELECT endereco_pessoa.numero | |
103 | + FROM cadastro.endereco_pessoa, | |
104 | + cadastro.juridica | |
105 | + WHERE juridica.idpes = endereco_pessoa.idpes AND | |
106 | + juridica.idpes = escola.ref_idpes),(SELECT endereco_externo.numero FROM cadastro.endereco_externo WHERE endereco_externo.idpes = escola.ref_idpes))),(SELECT numero FROM pmieducar.escola_complemento where ref_cod_escola = escola.cod_escola))) AS numero, | |
107 | + | |
108 | + | |
109 | + (SELECT COALESCE((SELECT COALESCE((SELECT municipio.sigla_uf | |
110 | + FROM public.municipio, | |
111 | + cadastro.endereco_pessoa, | |
112 | + cadastro.juridica, | |
113 | + public.bairro | |
114 | + WHERE endereco_pessoa.idbai = bairro.idbai AND | |
115 | + bairro.idmun = municipio.idmun AND | |
116 | + juridica.idpes = endereco_pessoa.idpes AND | |
117 | + juridica.idpes = escola.ref_idpes),(SELECT endereco_externo.sigla_uf FROM cadastro.endereco_externo WHERE endereco_externo.idpes = escola.ref_idpes))),(select inst.ref_sigla_uf from pmieducar.instituicao inst where inst.cod_instituicao = instituicao.cod_instituicao))) AS uf_municipio, | |
118 | + | |
119 | + (SELECT COALESCE((SELECT min(fone_pessoa.ddd) | |
120 | + FROM cadastro.fone_pessoa, | |
121 | + cadastro.juridica | |
122 | + WHERE juridica.idpes = fone_pessoa.idpes AND | |
123 | + juridica.idpes = escola.ref_idpes),(SELECT min(ddd_telefone) FROM pmieducar.escola_complemento where ref_cod_escola = escola.cod_escola))) AS fone_ddd, | |
124 | + | |
125 | + (SELECT COALESCE((SELECT COALESCE((SELECT to_char(endereco_pessoa.cep, '99999-999') | |
126 | + FROM cadastro.endereco_pessoa, | |
127 | + cadastro.juridica | |
128 | + WHERE juridica.idpes = endereco_pessoa.idpes AND | |
129 | + juridica.idpes = escola.ref_idpes),(SELECT to_char(endereco_externo.cep,'99999-999') FROM cadastro.endereco_externo WHERE endereco_externo.idpes = escola.ref_idpes))),(SELECT to_char(escola_complemento.cep,'99999-999') FROM pmieducar.escola_complemento where escola_complemento.ref_cod_escola = escola.cod_escola))) AS cep, | |
130 | + | |
131 | + | |
132 | + (SELECT COALESCE((SELECT min(to_char(fone_pessoa.fone, '9999-9999')) | |
133 | + FROM cadastro.fone_pessoa, | |
134 | + cadastro.juridica | |
135 | + WHERE juridica.idpes = fone_pessoa.idpes AND | |
136 | + juridica.idpes = escola.ref_idpes),(SELECT min(to_char(telefone, '9999-9999')) FROM pmieducar.escola_complemento where escola_complemento.ref_cod_escola = escola.cod_escola))) AS fone, | |
137 | + | |
138 | + (SELECT COALESCE((SELECT ps.email | |
139 | + FROM cadastro.pessoa ps, | |
140 | + cadastro.juridica | |
141 | + WHERE juridica.idpes = ps.idpes AND | |
142 | + juridica.idpes = escola.ref_idpes),(SELECT email FROM pmieducar.escola_complemento where ref_cod_escola = escola.cod_escola))) AS email, | |
143 | + | |
144 | + | |
145 | + | |
146 | + to_char(current_date,'dd/mm/yyyy') AS data_atual, | |
147 | + to_char(current_timestamp, 'HH24:MI:SS') AS hora_atual | |
148 | + | |
149 | + FROM pmieducar.aluno, | |
150 | + pmieducar.matricula, | |
151 | + cadastro.fisica, | |
152 | + cadastro.pessoa, | |
153 | + pmieducar.instituicao, | |
154 | + pmieducar.escola, | |
155 | + pmieducar.escola_ano_letivo | |
156 | + | |
157 | + WHERE escola_ano_letivo.ano = $P{ano} AND | |
158 | + instituicao.cod_instituicao = $P{instituicao} AND | |
159 | + escola.cod_escola = $P{escola} AND | |
160 | + matricula.cod_matricula = (SELECT MAX(cod_matricula) | |
161 | + from pmieducar.matricula mt, | |
162 | + pmieducar.aluno al | |
163 | + where mt.ref_cod_aluno = matricula.ref_cod_aluno AND | |
164 | + matricula.cod_matricula = $P{matricula} AND | |
165 | + mt.ano = matricula.ano AND | |
166 | + mt.ref_ref_cod_escola = matricula.ref_ref_cod_escola AND | |
167 | + mt.ref_ref_cod_serie = matricula.ref_ref_cod_serie AND | |
168 | + mt.ativo = 1 AND | |
169 | + mt.ultima_matricula = 1) AND | |
170 | + pessoa.idpes = fisica.idpes AND | |
171 | + fisica.idpes = aluno.ref_idpes AND | |
172 | + aluno.cod_aluno = matricula.ref_cod_aluno AND | |
173 | + matricula.ref_cod_aluno = aluno.cod_aluno AND | |
174 | + escola.ref_cod_instituicao = instituicao.cod_instituicao AND | |
175 | + escola_ano_letivo.ref_cod_escola = escola.cod_escola AND | |
176 | + matricula.ano = escola_ano_letivo.ano AND | |
177 | + matricula.ativo = 1 AND | |
178 | + escola.ativo = 1 AND | |
179 | + instituicao.ativo = 1]]> | |
180 | + </queryString> | |
181 | + <field name="nm_instituicao" class="java.lang.String"/> | |
182 | + <field name="nm_responsavel" class="java.lang.String"/> | |
183 | + <field name="cod_escola" class="java.lang.Integer"/> | |
184 | + <field name="ano" class="java.lang.Integer"/> | |
185 | + <field name="cod_aluno" class="java.lang.Integer"/> | |
186 | + <field name="nm_curso" class="java.lang.String"/> | |
187 | + <field name="nm_serie" class="java.lang.String"/> | |
188 | + <field name="nm_turma" class="java.lang.String"/> | |
189 | + <field name="cod_matricula" class="java.lang.Integer"/> | |
190 | + <field name="nome" class="java.lang.String"/> | |
191 | + <field name="data_nasc" class="java.lang.String"/> | |
192 | + <field name="municipio_uf_nascimento" class="java.lang.String"/> | |
193 | + <field name="dt_matricula" class="java.lang.String"/> | |
194 | + <field name="matricula_ano" class="java.lang.Integer"/> | |
195 | + <field name="cidade" class="java.lang.String"/> | |
196 | + <field name="nm_pai" class="java.lang.String"/> | |
197 | + <field name="nm_mae" class="java.lang.String"/> | |
198 | + <field name="nm_escola" class="java.lang.String"/> | |
199 | + <field name="tipo_logradouro" class="java.lang.String"/> | |
200 | + <field name="logradouro" class="java.lang.String"/> | |
201 | + <field name="bairro" class="java.lang.String"/> | |
202 | + <field name="municipio" class="java.lang.String"/> | |
203 | + <field name="numero" class="java.math.BigDecimal"/> | |
204 | + <field name="uf_municipio" class="java.lang.String"/> | |
205 | + <field name="fone_ddd" class="java.math.BigDecimal"/> | |
206 | + <field name="cep" class="java.lang.String"/> | |
207 | + <field name="fone" class="java.lang.String"/> | |
208 | + <field name="email" class="java.lang.String"/> | |
209 | + <field name="data_atual" class="java.lang.String"/> | |
210 | + <field name="hora_atual" class="java.lang.String"/> | |
211 | + <background> | |
212 | + <band splitType="Stretch"/> | |
213 | + </background> | |
214 | + <title> | |
215 | + <band splitType="Stretch"/> | |
216 | + </title> | |
217 | + <pageHeader> | |
218 | + <band height="693" splitType="Stretch"> | |
219 | + <staticText> | |
220 | + <reportElement uuid="b2bada90-ee0d-4d69-9c6e-1b65cd0e007d" x="11" y="158" width="537" height="16"/> | |
221 | + <textElement textAlignment="Center"> | |
222 | + <font fontName="DejaVu Sans" size="12" isBold="true" isUnderline="true"/> | |
223 | + </textElement> | |
224 | + <text><![CDATA[ATESTADO DE FREQUÊNCIA]]></text> | |
225 | + </staticText> | |
226 | + <textField> | |
227 | + <reportElement uuid="771f33a3-af05-4b24-b21a-ed152dbe52bc" x="58" y="486" width="120" height="14"/> | |
228 | + <textElement> | |
229 | + <font fontName="DejaVu Sans" size="8"/> | |
230 | + </textElement> | |
231 | + <textFieldExpression><![CDATA[$F{cidade}+", "+$F{data_atual}]]></textFieldExpression> | |
232 | + </textField> | |
233 | + <textField isBlankWhenNull="true"> | |
234 | + <reportElement uuid="d704c6b1-f976-480b-aceb-8e4a1e8906d4" x="79" y="40" width="310" height="13"/> | |
235 | + <textElement> | |
236 | + <font fontName="DejaVu Sans" size="8" isBold="true"/> | |
237 | + </textElement> | |
238 | + <textFieldExpression><![CDATA["Endereço: "+$F{logradouro}+" "+$F{numero}]]></textFieldExpression> | |
239 | + </textField> | |
240 | + <textField> | |
241 | + <reportElement uuid="b9876fdf-e1bd-4510-8eb8-45a6dfceb957" x="79" y="4" width="310" height="13"/> | |
242 | + <textElement> | |
243 | + <font fontName="DejaVu Sans" size="8" isBold="true"/> | |
244 | + </textElement> | |
245 | + <textFieldExpression><![CDATA[$F{nm_instituicao}]]></textFieldExpression> | |
246 | + </textField> | |
247 | + <textField isBlankWhenNull="true"> | |
248 | + <reportElement uuid="79fd56cd-5fe7-4331-b4a0-5cf8b93d616a" x="302" y="64" width="236" height="13" forecolor="#000000"/> | |
249 | + <textElement> | |
250 | + <font fontName="DejaVu Sans" size="8" isBold="true" isItalic="false"/> | |
251 | + </textElement> | |
252 | + <textFieldExpression><![CDATA["E-mail: "+$F{email}]]></textFieldExpression> | |
253 | + </textField> | |
254 | + <textField isBlankWhenNull="true"> | |
255 | + <reportElement uuid="62b65d6e-e48d-4790-aa23-4a010df96703" x="435" y="52" width="76" height="13"/> | |
256 | + <textElement> | |
257 | + <font fontName="DejaVu Sans" size="8" isBold="true"/> | |
258 | + </textElement> | |
259 | + <textFieldExpression><![CDATA["CEP: "+$F{cep}]]></textFieldExpression> | |
260 | + </textField> | |
261 | + <textField isBlankWhenNull="true"> | |
262 | + <reportElement uuid="c2eb3654-a9c3-496e-b93f-b4de6da5922c" x="302" y="52" width="132" height="13"/> | |
263 | + <textElement> | |
264 | + <font fontName="DejaVu Sans" size="8" isBold="true"/> | |
265 | + </textElement> | |
266 | + <textFieldExpression><![CDATA[$F{municipio}+" - "+$F{uf_municipio}]]></textFieldExpression> | |
267 | + </textField> | |
268 | + <textField isBlankWhenNull="true"> | |
269 | + <reportElement uuid="e04a4123-f547-4570-a2d1-7f2937d64b40" x="79" y="28" width="310" height="13"/> | |
270 | + <textElement> | |
271 | + <font fontName="DejaVu Sans" size="8" isBold="true"/> | |
272 | + </textElement> | |
273 | + <textFieldExpression><![CDATA[$F{nm_escola}]]></textFieldExpression> | |
274 | + </textField> | |
275 | + <textField isBlankWhenNull="true"> | |
276 | + <reportElement uuid="b8e4459e-b127-42c4-a572-b411ba66313c" x="79" y="16" width="310" height="13"/> | |
277 | + <textElement> | |
278 | + <font fontName="DejaVu Sans" size="8" isBold="true"/> | |
279 | + </textElement> | |
280 | + <textFieldExpression><![CDATA[$F{nm_responsavel}]]></textFieldExpression> | |
281 | + </textField> | |
282 | + <image> | |
283 | + <reportElement uuid="58181b73-1bed-48c6-8004-978d09fbabef" x="16" y="4" width="57" height="46"/> | |
284 | + <imageExpression><![CDATA[$P{logo}]]></imageExpression> | |
285 | + </image> | |
286 | + <textField isStretchWithOverflow="true"> | |
287 | + <reportElement uuid="c803f32c-11d3-438d-af5f-7290785734f9" x="22" y="311" width="509" height="16"/> | |
288 | + <textElement textAlignment="Justified"> | |
289 | + <font fontName="DejaVu Sans" size="8"/> | |
290 | + </textElement> | |
291 | + <textFieldExpression><![CDATA["Atestamos para os devidos fins que, o(a) aluno(a) "+$F{nome}+", código nº: "+$F{cod_aluno}+", filho(a) de "+$F{nm_mae}+" e de "+$F{nm_pai}+", nascido(a) em "+$F{data_nasc}+", natural de "+$F{municipio_uf_nascimento}+", está frequentando no ano de "+$F{ano}+" o(a) "+$F{nm_serie}+" do "+$F{nm_curso}+"."]]></textFieldExpression> | |
292 | + </textField> | |
293 | + <textField isBlankWhenNull="true"> | |
294 | + <reportElement uuid="97bd019d-ec3b-4b53-953d-230fba35a8ae" x="79" y="52" width="221" height="13"/> | |
295 | + <textElement> | |
296 | + <font fontName="DejaVu Sans" size="8" isBold="true"/> | |
297 | + </textElement> | |
298 | + <textFieldExpression><![CDATA["Bairro:" +$F{bairro}]]></textFieldExpression> | |
299 | + </textField> | |
300 | + <staticText> | |
301 | + <reportElement uuid="922b6611-457b-49a3-aac1-ada8e23952f9" x="178" y="672" width="207" height="13"/> | |
302 | + <textElement textAlignment="Center"> | |
303 | + <font fontName="DejaVu Sans" size="8"/> | |
304 | + </textElement> | |
305 | + <text><![CDATA[Assinatura]]></text> | |
306 | + </staticText> | |
307 | + <line> | |
308 | + <reportElement uuid="7c6b65ab-b713-433d-8dcf-079a43c5882e" x="177" y="669" width="208" height="1"/> | |
309 | + </line> | |
310 | + <textField> | |
311 | + <reportElement uuid="91c5946c-efc9-4077-95aa-368263f4ce1c" x="79" y="64" width="201" height="13"/> | |
312 | + <textElement> | |
313 | + <font fontName="DejaVu Sans" size="8" isBold="true"/> | |
314 | + </textElement> | |
315 | + <textFieldExpression><![CDATA["Telefone: ("+$F{fone_ddd}+") "+$F{fone}]]></textFieldExpression> | |
316 | + </textField> | |
317 | + </band> | |
318 | + </pageHeader> | |
319 | + <columnHeader> | |
320 | + <band height="15" splitType="Stretch"/> | |
321 | + </columnHeader> | |
322 | + <detail> | |
323 | + <band height="8" splitType="Stretch"/> | |
324 | + </detail> | |
325 | + <columnFooter> | |
326 | + <band height="15" splitType="Stretch"/> | |
327 | + </columnFooter> | |
328 | + <pageFooter> | |
329 | + <band height="16" splitType="Stretch"/> | |
330 | + </pageFooter> | |
331 | + <summary> | |
332 | + <band height="11" splitType="Stretch"/> | |
333 | + </summary> | |
334 | +</jasperReport> | ... | ... |
ieducar/modules/Reports/Reports/AtestadoFrequenciaReport.php
0 → 100644
... | ... | @@ -0,0 +1,64 @@ |
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 Ricardo Bortolotto Dagostim <ricardo@portabilis.com.br> | |
24 | + * @category i-Educar | |
25 | + * @license @@license@@ | |
26 | + * @package Reports | |
27 | + * @subpackage Modules | |
28 | + * @since Arquivo disponível desde a versão 1.1.0 | |
29 | + * @version $Id$ | |
30 | + */ | |
31 | + | |
32 | + | |
33 | +/** | |
34 | + * AtestadoFrequenciaReport class. | |
35 | + * | |
36 | + * @author Ricardo Bortolotto Dagostim <ricardo@portabilis.com.br> | |
37 | + * @category i-Educar | |
38 | + * @license @@license@@ | |
39 | + * @package Reports | |
40 | + * @subpackage Modules | |
41 | + * @since Classe disponível desde a versão 1.1.0 | |
42 | + * @version @@package_version@@ | |
43 | + */ | |
44 | + | |
45 | +require_once "lib/Portabilis/Report/ReportCore.php"; | |
46 | +require_once "App/Model/IedFinder.php"; | |
47 | + | |
48 | +class AtestadoFrequenciaReport extends Portabilis_Report_ReportCore | |
49 | +{ | |
50 | + | |
51 | + function templateName() { | |
52 | + return 'portabilis_atestado_frequencia'; | |
53 | + } | |
54 | + | |
55 | + function requiredArgs() { | |
56 | + $this->addRequiredArg('ano'); | |
57 | + $this->addRequiredArg('instituicao'); | |
58 | + $this->addRequiredArg('escola'); | |
59 | + $this->addRequiredArg('matricula'); | |
60 | + | |
61 | + } | |
62 | +} | |
63 | + | |
64 | +?> | |
0 | 65 | \ No newline at end of file | ... | ... |
ieducar/modules/Reports/Views/AtestadoFrequenciaController.php
0 → 100644
... | ... | @@ -0,0 +1,74 @@ |
1 | +<?php | |
2 | + | |
3 | +#error_reporting(E_ALL); | |
4 | +#ini_set("display_errors", 1); | |
5 | + | |
6 | +/** | |
7 | + * i-Educar - Sistema de gestão escolar | |
8 | + * | |
9 | + * Copyright (C) 2006 Prefeitura Municipal de Itajaí | |
10 | + * <ctima@itajai.sc.gov.br> | |
11 | + * | |
12 | + * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo | |
13 | + * sob os termos da Licença Pública Geral GNU conforme publicada pela Free | |
14 | + * Software Foundation; tanto a versão 2 da Licença, como (a seu critério) | |
15 | + * qualquer versão posterior. | |
16 | + * | |
17 | + * Este programa é distribuído na expectativa de que seja útil, porém, SEM | |
18 | + * NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU | |
19 | + * ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral | |
20 | + * do GNU para mais detalhes. | |
21 | + * | |
22 | + * Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto | |
23 | + * com este programa; se não, escreva para a Free Software Foundation, Inc., no | |
24 | + * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. | |
25 | + * | |
26 | + * @author Ricardo Bortolotto Dagostim <ricardo@portabilis.com.br> | |
27 | + * @category i-Educar | |
28 | + * @license @@license@@ | |
29 | + * @package Reports | |
30 | + * @subpackage Modules | |
31 | + * @since Arquivo disponível desde a versão 1.1.0 | |
32 | + * @version $Id$ | |
33 | + */ | |
34 | + | |
35 | +require_once "lib/Portabilis/Controller/ReportCoreController.php"; | |
36 | +require_once "Reports/Reports/AtestadoFrequenciaReport.php"; | |
37 | + | |
38 | +/** | |
39 | + * AtestadoFrequenciaController class. | |
40 | + * | |
41 | + * @author Ricardo Bortolotto Dagostim <ricardo@portabilis.com.br> | |
42 | + * @category i-Educar | |
43 | + * @license @@license@@ | |
44 | + * @package Reports | |
45 | + * @subpackage Modules | |
46 | + * @since Classe disponível desde a versão 1.1.0 | |
47 | + * @version @@package_version@@ | |
48 | + */ | |
49 | +class AtestadoFrequenciaController extends Portabilis_Controller_ReportCoreController | |
50 | +{ | |
51 | + | |
52 | + protected $_titulo = 'Relatório Atestado de Frequência'; | |
53 | + | |
54 | + function form() { | |
55 | + $this->inputsHelper()->dynamic(array('ano', 'instituicao', 'escola')); | |
56 | + $this->inputsHelper()->simpleSearchMatricula(); | |
57 | + | |
58 | + $this->loadResourceAssets($this->getDispatcher()); | |
59 | + } | |
60 | + | |
61 | + function report() { | |
62 | + return new AtestadoFrequenciaReport(); | |
63 | + } | |
64 | + | |
65 | + function beforeValidation() { | |
66 | + $this->report->addArg('ano', (int)$this->getRequest()->ano); | |
67 | + $this->report->addArg('instituicao', (int)$this->getRequest()->ref_cod_instituicao); | |
68 | + $this->report->addArg('escola', (int)$this->getRequest()->ref_cod_escola); | |
69 | + $this->report->addArg('matricula', (int)$this->getRequest()->matricula_id); | |
70 | + $this->report->addArg('observacao', $this->getRequest()->observacao); | |
71 | + } | |
72 | +} | |
73 | + | |
74 | +?> | |
0 | 75 | \ No newline at end of file | ... | ... |