Commit 470f659302016ae50f4f40e0ba8c865031280d33
Exists in
master
Merge branch 'desfazer-abandono'
Showing
4 changed files
with
66 additions
and
7 deletions
Show diff stats
ieducar/intranet/educar_matricula_det.php
| ... | ... | @@ -33,6 +33,9 @@ require_once 'include/clsDetalhe.inc.php'; |
| 33 | 33 | require_once 'include/clsBanco.inc.php'; |
| 34 | 34 | require_once 'include/pmieducar/geral.inc.php'; |
| 35 | 35 | |
| 36 | +require_once 'App/Model/MatriculaSituacao.php'; | |
| 37 | +require_once 'Portabilis/View/Helper/Application.php'; | |
| 38 | + | |
| 36 | 39 | /** |
| 37 | 40 | * clsIndexBase class. |
| 38 | 41 | * |
| ... | ... | @@ -80,6 +83,12 @@ class indice extends clsDetalhe |
| 80 | 83 | |
| 81 | 84 | function Gerar() |
| 82 | 85 | { |
| 86 | + | |
| 87 | + // carrega estilo para feedback messages, exibindo msgs da api. | |
| 88 | + | |
| 89 | + $style = "/modules/Portabilis/Assets/Stylesheets/Frontend.css"; | |
| 90 | + Portabilis_View_Helper_Application::loadStylesheet($this, $style); | |
| 91 | + | |
| 83 | 92 | @session_start(); |
| 84 | 93 | $this->pessoa_logada = $_SESSION['id_pessoa']; |
| 85 | 94 | session_write_close(); |
| ... | ... | @@ -285,14 +294,25 @@ class indice extends clsDetalhe |
| 285 | 294 | $this->array_botao_url_script[] = "go(\"educar_transferencia_solicitacao_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}&cancela=true&reabrir_matricula=true\")"; |
| 286 | 295 | } |
| 287 | 296 | |
| 288 | - if ($registro['aprovado'] == 4 || $det_transferencia) { | |
| 289 | - $this->array_botao[] = 'Imprimir Atestado Frequência'; | |
| 290 | - $this->array_botao_url_script[] = "showExpansivelImprimir(400, 200, \"educar_relatorio_atestado_frequencia.php?cod_matricula={$registro['cod_matricula']}\",[], \"Relatório Atestado de Freqüência\")"; | |
| 297 | + if ($registro['aprovado'] == App_Model_MatriculaSituacao::ABANDONO) { | |
| 298 | + $this->array_botao[] = "Desfazer abandono"; | |
| 299 | + $this->array_botao_url_script[] = "deleteAbandono({$registro['cod_matricula']})"; | |
| 291 | 300 | } |
| 292 | 301 | } |
| 293 | 302 | |
| 294 | 303 | $this->url_cancelar = 'educar_aluno_det.php?cod_aluno=' . $registro['ref_cod_aluno']; |
| 295 | 304 | $this->largura = '100%'; |
| 305 | + | |
| 306 | + // js | |
| 307 | + Portabilis_View_Helper_Application::loadJQueryLib($this); | |
| 308 | + | |
| 309 | + $scripts = array( | |
| 310 | + '/modules/Portabilis/Assets/Javascripts/Utils.js', | |
| 311 | + '/modules/Portabilis/Assets/Javascripts/ClientApi.js', | |
| 312 | + '/modules/Cadastro/Assets/Javascripts/MatriculaShow.js' | |
| 313 | + ); | |
| 314 | + | |
| 315 | + Portabilis_View_Helper_Application::loadJavascript($this, $scripts); | |
| 296 | 316 | } |
| 297 | 317 | |
| 298 | 318 | ... | ... |
ieducar/modules/Api/Views/MatriculaController.php
| 1 | 1 | <?php |
| 2 | 2 | |
| 3 | -#error_reporting(E_ALL); | |
| 4 | -#ini_set("display_errors", 1); | |
| 5 | - | |
| 6 | 3 | /** |
| 7 | 4 | * i-Educar - Sistema de gestão escolar |
| 8 | 5 | * |
| ... | ... | @@ -35,6 +32,7 @@ |
| 35 | 32 | require_once 'lib/Portabilis/Controller/ApiCoreController.php'; |
| 36 | 33 | require_once 'lib/Portabilis/Array/Utils.php'; |
| 37 | 34 | require_once 'lib/Portabilis/String/Utils.php'; |
| 35 | +require_once 'App/Model/MatriculaSituacao.php'; | |
| 38 | 36 | |
| 39 | 37 | class MatriculaController extends ApiCoreController |
| 40 | 38 | { |
| ... | ... | @@ -44,6 +42,11 @@ class MatriculaController extends ApiCoreController |
| 44 | 42 | $this->validatesId('aluno'); |
| 45 | 43 | } |
| 46 | 44 | |
| 45 | + protected function canDeleteAbandono() { | |
| 46 | + return $this->validatesPresenceOf('id') && | |
| 47 | + $this->validatesExistenceOf('matricula', $this->getRequest()->id); | |
| 48 | + } | |
| 49 | + | |
| 47 | 50 | // search options |
| 48 | 51 | |
| 49 | 52 | protected function searchOptions() { |
| ... | ... | @@ -189,6 +192,17 @@ class MatriculaController extends ApiCoreController |
| 189 | 192 | } |
| 190 | 193 | } |
| 191 | 194 | |
| 195 | + protected function deleteAbandono() { | |
| 196 | + if ($this->canDeleteAbandono()) { | |
| 197 | + $matriculaId = $this->getRequest()->id; | |
| 198 | + $situacaoAndamento = App_Model_MatriculaSituacao::EM_ANDAMENTO; | |
| 199 | + | |
| 200 | + $sql = 'update pmieducar.matricula set aprovado = $1 where cod_matricula = $2'; | |
| 201 | + $this->fetchPreparedQuery($sql, array($situacaoAndamento, $matriculaId)); | |
| 202 | + | |
| 203 | + $this->messenger->append('Abandono desfeito.', 'success'); | |
| 204 | + } | |
| 205 | + } | |
| 192 | 206 | |
| 193 | 207 | public function Gerar() { |
| 194 | 208 | if ($this->isRequestFor('get', 'matricula')) |
| ... | ... | @@ -200,6 +214,9 @@ class MatriculaController extends ApiCoreController |
| 200 | 214 | elseif ($this->isRequestFor('get', 'matricula-search')) |
| 201 | 215 | $this->appendResponse($this->search()); |
| 202 | 216 | |
| 217 | + elseif ($this->isRequestFor('delete', 'abandono')) | |
| 218 | + $this->appendResponse($this->deleteAbandono()); | |
| 219 | + | |
| 203 | 220 | else |
| 204 | 221 | $this->notImplementedOperationError(); |
| 205 | 222 | } | ... | ... |
ieducar/modules/Cadastro/Assets/Javascripts/MatriculaShow.js
0 → 100644
| ... | ... | @@ -0,0 +1,22 @@ |
| 1 | +var apiUrlBase = '/module/Api/matricula'; | |
| 2 | + | |
| 3 | +var handleDeleteAbandono = function(dataResponse) { | |
| 4 | + handleMessages(dataResponse.msgs); | |
| 5 | + location.reload(); | |
| 6 | +} | |
| 7 | + | |
| 8 | +function deleteAbandono(matriculaId) { | |
| 9 | + if (! confirm(stringUtils.toUtf8('Deseja desfazer o abandono?'))) | |
| 10 | + return false; | |
| 11 | + | |
| 12 | + var options = { | |
| 13 | + url : deleteResourceUrlBuilder.buildUrl(apiUrlBase, 'abandono'), | |
| 14 | + dataType : 'json', | |
| 15 | + data : { | |
| 16 | + id : matriculaId | |
| 17 | + }, | |
| 18 | + success : handleDeleteAbandono | |
| 19 | + }; | |
| 20 | + | |
| 21 | + deleteResource(options); | |
| 22 | +} | |
| 0 | 23 | \ No newline at end of file | ... | ... |
ieducar/modules/Portabilis/Assets/Javascripts/Utils.js
| ... | ... | @@ -277,7 +277,7 @@ var handleMessages = messageUtils.handleMessages; |
| 277 | 277 | $(document).ready(function() { |
| 278 | 278 | |
| 279 | 279 | // add div for feedback messages |
| 280 | - $j('<div />').attr('id', 'feedback-messages').appendTo($j('form').last().parent()); | |
| 280 | + $j('<div />').attr('id', 'feedback-messages').appendTo($j('#corpo')); | |
| 281 | 281 | |
| 282 | 282 | }); // ready |
| 283 | 283 | })(jQuery); | ... | ... |