-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Transferência da página meio_pagamento.php para a nova estrutura de d…
…iretórios do módulo de contribuição [Issue #727]
- Loading branch information
1 parent
0e95dff
commit 7e23a80
Showing
7 changed files
with
682 additions
and
24 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
<?php | ||
|
||
require_once '../model/MeioPagamento.php'; | ||
require_once '../dao/MeioPagamentoDAO.php'; | ||
|
||
class MeioPagamentoController{ | ||
public function cadastrar(){ | ||
//Implementar restante da lógica do código... | ||
$descricao = $_POST['nome']; | ||
$gatewayId = $_POST['meio-pagamento-plataforma']; | ||
try{ | ||
$meioPagamento = new MeioPagamento($descricao, $gatewayId); | ||
$meioPagamento->cadastrar(); | ||
header("Location: ../view/meio_pagamento.php?msg=cadastrar-sucesso"); | ||
}catch(Exception $e){ | ||
header("Location: ../view/meio_pagamento.php?msg=cadastrar-falha"); | ||
} | ||
} | ||
|
||
/** | ||
* Busca os meios de pagamentos registrados no banco de dados da aplicação | ||
*/ | ||
public function buscaTodos(){ | ||
try{ | ||
$meioPagamentoDao = new MeioPagamentoDAO(); | ||
$meiosPagamento = $meioPagamentoDao->buscaTodos(); | ||
return $meiosPagamento; | ||
}catch(PDOException $e){ | ||
echo 'Erro na busca de meios de pagamento: '.$e->getMessage(); | ||
} | ||
} | ||
|
||
/** | ||
* Realiza os procedimentos necessários para remover um meio de pagamento do sistema. | ||
*/ | ||
public function excluirPorId(){ | ||
$meioPagamentoId = trim($_POST['meio-pagamento-id']); | ||
|
||
if (!$meioPagamentoId || empty($meioPagamentoId) || $meioPagamentoId < 1) { | ||
//parar operação | ||
header("Location: ../view/meio_pagamento.php?msg=excluir-falha#mensagem-tabela"); | ||
exit(); | ||
} | ||
|
||
try{ | ||
$meioPagamentoDao = new MeioPagamentoDAO(); | ||
$meioPagamentoDao->excluirPorId($meioPagamentoId); | ||
header("Location: ../view/meio_pagamento.php?msg=excluir-sucesso#mensagem-tabela"); | ||
}catch(Exception $e){ | ||
header("Location: ../view/meio_pagamento.php?msg=excluir-falha#mensagem-tabela"); | ||
} | ||
} | ||
|
||
/** | ||
* Realiza os procedimentos necessários para alterar as informações de um meio de pagamento do sistema | ||
*/ | ||
public function editarPorId(){ | ||
$descricao = $_POST['nome']; | ||
$gatewayId = $_POST['plataforma']; | ||
$meioPagamentoId = $_POST['id']; | ||
|
||
try{ | ||
$meioPagamento = new MeioPagamento($descricao, $gatewayId); | ||
$meioPagamento->setId($meioPagamentoId); | ||
$meioPagamento->editar(); | ||
header("Location: ../view/meio_pagamento.php?msg=editar-sucesso#mensagem-tabela"); | ||
}catch(Exception $e){ | ||
header("Location: ../view/meio_pagamento.php?msg=editar-falha#mensagem-tabela"); | ||
} | ||
} | ||
|
||
/** | ||
* Realiza os procedimentos necessários para ativar/desativar um meio de pagamento no sistema | ||
*/ | ||
public function alterarStatus() | ||
{ | ||
$meioPagamentoId = $_POST['id']; | ||
$status = trim($_POST['status']); | ||
|
||
if (!$meioPagamentoId || empty($meioPagamentoId)) { | ||
http_response_code(400); | ||
echo json_encode(['Erro' => 'O id deve ser maior ou igual a 1.']);exit; | ||
} | ||
|
||
if (!$status || empty($status)) { | ||
http_response_code(400); | ||
echo json_encode(['Erro' => 'O status informado não é válido.']);exit; | ||
} | ||
|
||
if ($status === 'true') { | ||
$status = 1; | ||
} elseif ($status === 'false') { | ||
$status = 0; | ||
} | ||
|
||
try { | ||
$meioPagamentoDao = new MeioPagamentoDAO(); | ||
$meioPagamentoDao->alterarStatusPorId($status, $meioPagamentoId); | ||
echo json_encode(['Sucesso']); | ||
} catch (Exception $e) { | ||
http_response_code(500); | ||
echo json_encode(['Erro'=>'Ocorreu um problema no servidor.']);exit; | ||
} | ||
} | ||
} |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
<?php | ||
|
||
//requisitar arquivo de conexão | ||
|
||
require_once '../dao/ConexaoDAO.php'; | ||
|
||
class MeioPagamentoDAO | ||
{ | ||
private $pdo; | ||
|
||
public function __construct() | ||
{ | ||
$this->pdo = ConexaoDAO::conectar(); | ||
} | ||
|
||
/** | ||
* Inseri um meio de pagamento no banco de dados da aplicação | ||
*/ | ||
public function cadastrar($descricao, $gatewayId, $status) | ||
{ | ||
/*Lógica da aplicação */ | ||
//definir consulta SQL | ||
$sqlCadastrar = "INSERT INTO contribuicao_meioPagamento (meio, id_plataforma, status) | ||
VALUES (:descricao, :gatewayId, :status)"; | ||
//utilizar prepared statements | ||
$stmt = $this->pdo->prepare($sqlCadastrar); | ||
$stmt->bindParam(':descricao', $descricao); | ||
$stmt->bindParam(':gatewayId', $gatewayId); | ||
$stmt->bindParam(':status', $status); | ||
//executar | ||
$stmt->execute(); | ||
} | ||
|
||
/** | ||
* Retorna todos os meios de pagamentos registrados no banco de dados da aplicação | ||
*/ | ||
public function buscaTodos() | ||
{ | ||
//definir consulta sql | ||
$sqlBuscaTodos = "SELECT cmp.id, cmp.meio, cmp.id_plataforma, cmp.status, cgp.plataforma, cgp.endpoint | ||
FROM contribuicao_meioPagamento cmp | ||
JOIN contribuicao_gatewayPagamento cgp ON (cgp.id=cmp.id_plataforma)"; | ||
//executar | ||
$resultado = $this->pdo->query($sqlBuscaTodos)->fetchAll(PDO::FETCH_ASSOC); | ||
//retornar resultado | ||
return $resultado; | ||
} | ||
|
||
/** | ||
* Remover o meio de pagamento que possuí id equivalente no banco de dados da aplicação | ||
*/ | ||
public function excluirPorId($id) | ||
{ | ||
//definir consulta sql | ||
$sqlExcluirPorId = "DELETE FROM contribuicao_meioPagamento WHERE id=:id"; | ||
//utilizar prepared statements | ||
$stmt = $this->pdo->prepare($sqlExcluirPorId); | ||
$stmt->bindParam(':id', $id); | ||
//executar | ||
$stmt->execute(); | ||
|
||
//verificar se algum elemento foi de fato excluído | ||
$meioPagamentoExcluido = $stmt->rowCount(); | ||
|
||
if ($meioPagamentoExcluido < 1) { | ||
throw new Exception(); | ||
} | ||
} | ||
|
||
/** | ||
* Edita o meio de pagamento que possuí id equivalente no banco de dados da aplicação | ||
*/ | ||
public function editarPorId($id, $descricao, $gatewayId) | ||
{ | ||
//definir consulta sql | ||
$sqlEditarPorId = "UPDATE contribuicao_meioPagamento SET meio =:descricao, id_plataforma =:gatewayId WHERE id=:id"; | ||
//utilizar prepared statements | ||
$stmt = $this->pdo->prepare($sqlEditarPorId); | ||
$stmt->bindParam(':descricao', $descricao); | ||
$stmt->bindParam(':gatewayId', $gatewayId); | ||
$stmt->bindParam(':id', $id); | ||
//executar | ||
$stmt->execute(); | ||
|
||
//verificar se algum elemento foi de fato alterado | ||
$meioPagamentoExcluido = $stmt->rowCount(); | ||
|
||
if ($meioPagamentoExcluido < 1) { | ||
throw new Exception(); | ||
} | ||
} | ||
|
||
/** | ||
* Modifica o campo status da tabela contribuica_meioPagamento de acordo com o id fornecido | ||
*/ | ||
public function alterarStatusPorId($status, $meioPagamentoId) | ||
{ | ||
//definir consulta sql | ||
$sqlAlterarStatusPorId = "UPDATE contribuicao_meioPagamento SET status =:status WHERE id=:meioPagamentoId"; | ||
//utilizar prepared statements | ||
$stmt = $this->pdo->prepare($sqlAlterarStatusPorId); | ||
$stmt->bindParam(':status', $status); | ||
$stmt->bindParam(':meioPagamentoId', $meioPagamentoId); | ||
//executar | ||
$stmt->execute(); | ||
|
||
//verificar se algum elemento foi de fato alterado | ||
$meioAlterado = $stmt->rowCount(); | ||
|
||
if ($meioAlterado < 1) { | ||
throw new Exception(); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,138 @@ | ||
<?php | ||
class MeioPagamento{ | ||
private $id; | ||
private $descricao; | ||
private $gatewayId; | ||
private $status; | ||
|
||
public function __construct($descricao, $gatewayId, $status=null) | ||
{ | ||
$this->setDescricao($descricao)->setGatewayId($gatewayId); | ||
|
||
if(!$status){ | ||
$this->setStatus(0); | ||
}else{ | ||
$this->setStatus($status); | ||
} | ||
} | ||
|
||
/** | ||
* Pega os atributos $descricao e $gatewayId e realiza os procedimentos necessários para | ||
* inserir um novo meio de pagamento no sistema da aplicação. | ||
*/ | ||
public function cadastrar(){ | ||
require_once '../dao/MeioPagamentoDAO.php'; | ||
$meioPagamentoDao = new MeioPagamentoDAO(); | ||
$meioPagamentoDao->cadastrar($this->descricao, $this->gatewayId, $this->status); | ||
} | ||
|
||
/** | ||
* Altera os dados do sistema pelos novos fornecidos através dos atributos $descricao e $gatewayId | ||
*/ | ||
public function editar(){ | ||
require_once '../dao/MeioPagamentoDAO.php'; | ||
$meioPagamentoDao = new MeioPagamentoDAO(); | ||
$meioPagamentoDao->editarPorId($this->id, $this->descricao, $this->gatewayId); | ||
} | ||
|
||
/** | ||
* Get the value of descricao | ||
*/ | ||
public function getDescricao() | ||
{ | ||
return $this->descricao; | ||
} | ||
|
||
/** | ||
* Set the value of descricao | ||
* | ||
* @return self | ||
*/ | ||
public function setDescricao($descricao) | ||
{ | ||
$descricaoLimpa = trim($descricao); | ||
if(!$descricaoLimpa || empty($descricaoLimpa)){ | ||
throw new InvalidArgumentException(); | ||
} | ||
|
||
$this->descricao = $descricao; | ||
|
||
return $this; | ||
} | ||
|
||
/** | ||
* Get the value of gatewayId | ||
*/ | ||
public function getGatewayId() | ||
{ | ||
return $this->gatewayId; | ||
} | ||
|
||
/** | ||
* Set the value of gatewayId | ||
* | ||
* @return self | ||
*/ | ||
public function setGatewayId($gatewayId) | ||
{ | ||
if(!$gatewayId || $gatewayId < 1){ | ||
throw new InvalidArgumentException(); | ||
} | ||
|
||
$this->gatewayId = $gatewayId; | ||
|
||
return $this; | ||
} | ||
|
||
/** | ||
* Get the value of id | ||
*/ | ||
public function getId() | ||
{ | ||
return $this->id; | ||
} | ||
|
||
/** | ||
* Set the value of id | ||
* | ||
* @return self | ||
*/ | ||
public function setId($id) | ||
{ | ||
$idLimpo = trim($id); | ||
|
||
if(!$idLimpo || $idLimpo <1){ | ||
throw new InvalidArgumentException(); | ||
} | ||
$this->id = $id; | ||
|
||
return $this; | ||
} | ||
|
||
/** | ||
* Get the value of status | ||
*/ | ||
public function getStatus() | ||
{ | ||
return $this->status; | ||
} | ||
|
||
/** | ||
* Set the value of status | ||
* | ||
* @return self | ||
*/ | ||
public function setStatus($status) | ||
{ | ||
$statusLimpo = trim($status); | ||
//echo $statusLimpo; | ||
|
||
if((!$statusLimpo || empty($statusLimpo)) && $statusLimpo != 0){ | ||
throw new InvalidArgumentException('O status de um meio de pagamento não pode ser vazio.'); | ||
} | ||
|
||
$this->status = $status; | ||
|
||
return $this; | ||
} | ||
} |
Oops, something went wrong.