function Novo() { @session_start(); $this->pessoa_logada = $_SESSION['id_pessoa']; @session_write_close(); $obj_permissoes = new clsPermissoes(); $obj_permissoes->permissao_cadastra(628, $this->pessoa_logada, 11, "educar_exemplar_devolucao_lst.php"); $this->valor_multa = urldecode($this->valor_multa); $this->valor_multa = str_replace(".", "", $this->valor_multa); $this->valor_multa = str_replace(",", ".", $this->valor_multa); // echo $this->cod_emprestimo." / ".$this->pessoa_logada." / ".date('Y-m-d')." / ".$this->valor_multa;die; $obj_situacao = new clsPmieducarSituacao(); $lst_situacao = $obj_situacao->lista(null, null, null, null, 2, null, 1, 0, null, null, null, null, 1, $this->ref_cod_biblioteca); if (is_array($lst_situacao) && count($lst_situacao)) { $det_situacao = array_shift($lst_situacao); $cod_situacao = $det_situacao["cod_situacao"]; } else { echo "<script> alert('ERRO - Não foi possível encontrar a situação DISPONÍVEL da biblioteca utilizada!'); </script>"; return false; } $obj = new clsPmieducarExemplarEmprestimo($this->cod_emprestimo, $this->pessoa_logada, null, null, null, null, date('Y-m-d'), $this->valor_multa); $editou = $obj->edita(); if ($editou) { $obj = new clsPmieducarExemplar($this->ref_cod_exemplar, null, null, null, $cod_situacao, $this->pessoa_logada, null, null, null, null, null, 1); $editou = $obj->edita(); if (!$editou) { $this->mensagem = "Cadastro não realizado.<br>"; echo "<!--\nErro ao cadastrar clsPmieducarSituacao\nvalores obrigatorios\nis_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->ref_cod_exemplar} ) && is_numeric( {$cod_situacao} )\n-->"; return false; } $this->mensagem .= "Cadastro efetuado com sucesso.<br>"; header("Location: educar_exemplar_devolucao_lst.php"); die; return true; } $this->mensagem = "Edição não realizada.<br>"; echo "<!--\nErro ao editar clsPmieducarExemplarEmprestimo\nvalores obrigatorios\nis_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->ref_cod_cliente} )\n-->"; return false; }
protected function postDevolucao() { if ($this->canPostDevolucao()) { // altera situacao exemplar para disponivel $situacaoDisponivel = $this->loadSituacaoExemplar($permiteEmprestimo = true, $padrao = true, $emprestada = false); if ($situacaoDisponivel && !$this->updateSituacaoExemplar($situacaoDisponivel)) { $this->messenger->append("Aparentemente a situação do exemplar não foi alterada para disponivel.", 'error'); } elseif (!$situacaoDisponivel) { $this->messenger->append("Não foi encontrado uma situação padrão cadastrada para exemplar disponivel.", 'error'); } // grava emprestimo if (!$this->messenger->hasMsgWithType('error')) { $_emprestimo = $this->loadEmprestimoForExemplar(); $emprestimo = new clsPmieducarExemplarEmprestimo(); $emprestimo->cod_emprestimo = $_emprestimo['id']; $emprestimo->ref_usuario_devolucao = $this->getSession()->id_pessoa; $emprestimo->data_devolucao = date("Y-m-d"); // TODO calcular / setar valor multa (se) devolução atrasada? if ($emprestimo->edita()) { $this->messenger->append("Devolução realizada com sucesso.", 'success'); } else { $this->messenger->append("Aparentemente a devolução não foi cadastrada, por favor, tente novamente.", 'error'); } } } $this->appendResponse('exemplar', $this->loadExemplar($reload = true)); }