diff --git a/ieducar/modules/Api/Views/MatriculaController.php b/ieducar/modules/Api/Views/MatriculaController.php
index 69e906d..058b297 100644
--- a/ieducar/modules/Api/Views/MatriculaController.php
+++ b/ieducar/modules/Api/Views/MatriculaController.php
@@ -33,6 +33,7 @@ require_once 'lib/Portabilis/Controller/ApiCoreController.php';
require_once 'lib/Portabilis/Array/Utils.php';
require_once 'lib/Portabilis/String/Utils.php';
require_once 'App/Model/MatriculaSituacao.php';
+require_once 'intranet/include/clsBanco.inc.php';
class MatriculaController extends ApiCoreController
{
@@ -192,6 +193,13 @@ class MatriculaController extends ApiCoreController
}
}
+ protected function getFrequencia() {
+ $cod_matricula = $this->getRequest()->id;
+ $objBanco = new clsBanco();
+ $frequencia = $objBanco->unicoCampo(" SELECT modules.frequencia_da_matricula({$cod_matricula}); ");
+ return array('frequencia' => $frequencia);
+ }
+
protected function deleteAbandono() {
if ($this->canDeleteAbandono()) {
$matriculaId = $this->getRequest()->id;
@@ -214,6 +222,9 @@ class MatriculaController extends ApiCoreController
elseif ($this->isRequestFor('get', 'matricula-search'))
$this->appendResponse($this->search());
+ elseif ($this->isRequestFor('get', 'frequencia'))
+ $this->appendResponse($this->getFrequencia());
+
elseif ($this->isRequestFor('delete', 'abandono'))
$this->appendResponse($this->deleteAbandono());
diff --git a/ieducar/modules/Reports/Assets/Javascripts/AtestadoFrequencia.js b/ieducar/modules/Reports/Assets/Javascripts/AtestadoFrequencia.js
new file mode 100644
index 0000000..1cffb5e
--- /dev/null
+++ b/ieducar/modules/Reports/Assets/Javascripts/AtestadoFrequencia.js
@@ -0,0 +1,50 @@
+var handleGetFrequencia = function(dataResponse) {
+
+ var frequencia = parseFloat(dataResponse['frequencia']).toFixed(2);
+ var frequencia_final = '';
+
+ if (isNaN(frequencia))
+ frequencia= 'Não informado';
+ else
+ frequencia_final = '%';
+
+ $j('#frequencia').html('Frequência: '+frequencia+frequencia_final)
+ .show()
+ .css('display', 'inline');
+
+ $j('#frequencia').addClass( (frequencia>=75 ? 'frequencia-acima' : 'frequencia-abaixo') );
+}
+
+$j('
').html('')
+ .addClass('div-frequencia')
+ .attr('id','frequencia')
+ .appendTo($j('#matricula').closest('td')).hide();
+
+var getFrequenciaMatricula = function() {
+ $j('#frequencia').removeClass('frequencia-acima frequencia-abaixo');
+
+ if($j('#matricula').val()=='')
+ $j('#matricula_id').val('');
+
+ var $matriculaField = $j('#matricula_id');
+
+ if ($matriculaField.val()!='') {
+
+ var additionalVars = {
+ id : $matriculaField.val(),
+ };
+
+ var options = {
+ url : getResourceUrlBuilder.buildUrl('/module/Api/matricula', 'frequencia', additionalVars),
+ dataType : 'json',
+ data : {},
+ success : handleGetFrequencia,
+ };
+
+ getResource(options);
+ }else{
+ $j('#frequencia').hide();
+ }
+}
+
+$j('#matricula').blur(getFrequenciaMatricula);
\ No newline at end of file
diff --git a/ieducar/modules/Reports/Assets/Stylesheets/AtestadoFrequencia.css b/ieducar/modules/Reports/Assets/Stylesheets/AtestadoFrequencia.css
new file mode 100644
index 0000000..f1496ad
--- /dev/null
+++ b/ieducar/modules/Reports/Assets/Stylesheets/AtestadoFrequencia.css
@@ -0,0 +1,13 @@
+.div-frequencia {
+ background-color: white;
+ display: inline;
+ color: black;
+}
+.frequencia-acima{
+ color: green;
+ font-weight: bold;
+}
+.frequencia-abaixo{
+ color: red;
+ font-weight: bold;
+}
\ No newline at end of file
diff --git a/ieducar/modules/Reports/ReportSources/portabilis_atestado_frequencia.jrxml b/ieducar/modules/Reports/ReportSources/portabilis_atestado_frequencia.jrxml
new file mode 100644
index 0000000..7006cd4
--- /dev/null
+++ b/ieducar/modules/Reports/ReportSources/portabilis_atestado_frequencia.jrxml
@@ -0,0 +1,334 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ieducar/modules/Reports/Reports/AtestadoFrequenciaReport.php b/ieducar/modules/Reports/Reports/AtestadoFrequenciaReport.php
new file mode 100644
index 0000000..3497aed
--- /dev/null
+++ b/ieducar/modules/Reports/Reports/AtestadoFrequenciaReport.php
@@ -0,0 +1,64 @@
+
+ *
+ * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo
+ * sob os termos da Licença Pública Geral GNU conforme publicada pela Free
+ * Software Foundation; tanto a versão 2 da Licença, como (a seu critério)
+ * qualquer versão posterior.
+ *
+ * Este programa é distribuído na expectativa de que seja útil, porém, SEM
+ * NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU
+ * ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral
+ * do GNU para mais detalhes.
+ *
+ * Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto
+ * com este programa; se não, escreva para a Free Software Foundation, Inc., no
+ * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
+ *
+ * @author Ricardo Bortolotto Dagostim
+ * @category i-Educar
+ * @license @@license@@
+ * @package Reports
+ * @subpackage Modules
+ * @since Arquivo disponível desde a versão 1.1.0
+ * @version $Id$
+ */
+
+
+/**
+ * AtestadoFrequenciaReport class.
+ *
+ * @author Ricardo Bortolotto Dagostim
+ * @category i-Educar
+ * @license @@license@@
+ * @package Reports
+ * @subpackage Modules
+ * @since Classe disponível desde a versão 1.1.0
+ * @version @@package_version@@
+ */
+
+require_once "lib/Portabilis/Report/ReportCore.php";
+require_once "App/Model/IedFinder.php";
+
+class AtestadoFrequenciaReport extends Portabilis_Report_ReportCore
+{
+
+ function templateName() {
+ return 'portabilis_atestado_frequencia';
+ }
+
+ function requiredArgs() {
+ $this->addRequiredArg('ano');
+ $this->addRequiredArg('instituicao');
+ $this->addRequiredArg('escola');
+ $this->addRequiredArg('matricula');
+
+ }
+}
+
+?>
\ No newline at end of file
diff --git a/ieducar/modules/Reports/Views/AtestadoFrequenciaController.php b/ieducar/modules/Reports/Views/AtestadoFrequenciaController.php
new file mode 100644
index 0000000..a752f88
--- /dev/null
+++ b/ieducar/modules/Reports/Views/AtestadoFrequenciaController.php
@@ -0,0 +1,74 @@
+
+ *
+ * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo
+ * sob os termos da Licença Pública Geral GNU conforme publicada pela Free
+ * Software Foundation; tanto a versão 2 da Licença, como (a seu critério)
+ * qualquer versão posterior.
+ *
+ * Este programa é distribuído na expectativa de que seja útil, porém, SEM
+ * NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU
+ * ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral
+ * do GNU para mais detalhes.
+ *
+ * Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto
+ * com este programa; se não, escreva para a Free Software Foundation, Inc., no
+ * endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
+ *
+ * @author Ricardo Bortolotto Dagostim
+ * @category i-Educar
+ * @license @@license@@
+ * @package Reports
+ * @subpackage Modules
+ * @since Arquivo disponível desde a versão 1.1.0
+ * @version $Id$
+ */
+
+require_once "lib/Portabilis/Controller/ReportCoreController.php";
+require_once "Reports/Reports/AtestadoFrequenciaReport.php";
+
+/**
+ * AtestadoFrequenciaController class.
+ *
+ * @author Ricardo Bortolotto Dagostim
+ * @category i-Educar
+ * @license @@license@@
+ * @package Reports
+ * @subpackage Modules
+ * @since Classe disponível desde a versão 1.1.0
+ * @version @@package_version@@
+ */
+class AtestadoFrequenciaController extends Portabilis_Controller_ReportCoreController
+{
+
+ protected $_titulo = 'Relatório Atestado de Frequência';
+
+ function form() {
+ $this->inputsHelper()->dynamic(array('ano', 'instituicao', 'escola'));
+ $this->inputsHelper()->simpleSearchMatricula();
+
+ $this->loadResourceAssets($this->getDispatcher());
+ }
+
+ function report() {
+ return new AtestadoFrequenciaReport();
+ }
+
+ function beforeValidation() {
+ $this->report->addArg('ano', (int)$this->getRequest()->ano);
+ $this->report->addArg('instituicao', (int)$this->getRequest()->ref_cod_instituicao);
+ $this->report->addArg('escola', (int)$this->getRequest()->ref_cod_escola);
+ $this->report->addArg('matricula', (int)$this->getRequest()->matricula_id);
+ $this->report->addArg('observacao', $this->getRequest()->observacao);
+ }
+}
+
+?>
\ No newline at end of file
--
libgit2 0.21.2