From 365f34ed3d9307937f5f35accec06ca1125a463a Mon Sep 17 00:00:00 2001 From: GabrielPintoSouza Date: Wed, 28 Aug 2024 07:53:57 -0300 Subject: [PATCH 01/19] =?UTF-8?q?Consertada=20gera=C3=A7=C3=A3o=20de=20rel?= =?UTF-8?q?at=C3=B3rios=20de=20s=C3=B3cios?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../import_conteudo_relatorios_socios.php | 20 ++-- .../controller/script/relatorios_socios.js | 6 +- html/socio/sistema/get_relatorios_socios.php | 100 +++++++++++++++--- 3 files changed, 102 insertions(+), 24 deletions(-) diff --git a/html/socio/sistema/controller/import_conteudo_relatorios_socios.php b/html/socio/sistema/controller/import_conteudo_relatorios_socios.php index 27ca488e..08e43ec5 100644 --- a/html/socio/sistema/controller/import_conteudo_relatorios_socios.php +++ b/html/socio/sistema/controller/import_conteudo_relatorios_socios.php @@ -63,7 +63,7 @@

Parâmetros do relatório

-
+ -
+
@@ -122,9 +122,9 @@ +
+
+ + + + + + + + + + + + + + + + + + + + "; + echo ""; + echo ""; + } + ?> + +
+ + + + + + + + + + + + + + + + + + + + + +
PlataformaEndpointTokenAtivoAção
+ + + + +
+
+
+ +
+ + + + \ No newline at end of file diff --git a/html/contribuicao/php/meio_pagamento.php b/html/contribuicao/php/meio_pagamento.php new file mode 100644 index 00000000..28de8a95 --- /dev/null +++ b/html/contribuicao/php/meio_pagamento.php @@ -0,0 +1,727 @@ +pdo->query($sql_list); + $dados = $stmt_list->fetchAll(PDO::FETCH_ASSOC); + + $sql_select = "SELECT plataforma FROM contribuicao_gatewayPagamento"; + $stmt_select = $conexao->pdo->query($sql_select); + $plataformas = $stmt_select->fetchAll(PDO::FETCH_ASSOC); + + $retorno = array( + 'dados' => $dados, + 'plataformas' => $plataformas + ); + + header('Content-Type: application/json'); + echo json_encode($retorno); + exit; + } catch (PDOException $e) { + echo json_encode(['erro' => 'Erro ao buscar dados: ' . $e->getMessage()]); + exit; + } +} + +// Salvar dados no banco de dados +if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['salvar_dados'])) { + $plataforma = $_POST['plataforma'] ?? ''; + $meio = $_POST['meio'] ?? ''; + + if (empty($plataforma) || empty($meio)) { + echo 'Campos não podem estar vazios.'; + exit; + } + + $conexao = new Conexao(); + + try { + $sql_get_id = "SELECT id FROM contribuicao_gatewayPagamento WHERE plataforma = :plataforma"; + $stmt_get_id = $conexao->pdo->prepare($sql_get_id); + $stmt_get_id->bindParam(':plataforma', $plataforma, PDO::PARAM_STR); + $stmt_get_id->execute(); + $result = $stmt_get_id->fetch(PDO::FETCH_ASSOC); + + if (!$result) { + echo 'Plataforma selecionada inválida.'; + exit; + } + + $id_plataforma = $result['id']; + + $sql_check = "SELECT id_plataforma, meio FROM contribuicao_meioPagamento + WHERE id_plataforma = :id_plataforma + AND meio = :meio"; + + $stmt_check = $conexao->pdo->prepare($sql_check); + $stmt_check->bindParam(':id_plataforma', $id_plataforma, PDO::PARAM_INT); + $stmt_check->bindParam(':meio', $meio, PDO::PARAM_STR); + $stmt_check->execute(); + + $existing_data = $stmt_check->fetch(PDO::FETCH_ASSOC); + + if ($existing_data) { + echo 'conteudo_existente'; + exit; + } else { + $sql_insert = "INSERT INTO contribuicao_meioPagamento (id_plataforma, meio) + VALUES (:id_plataforma, :meio)"; + + $stmt_insert = $conexao->pdo->prepare($sql_insert); + $stmt_insert->bindParam(':id_plataforma', $id_plataforma, PDO::PARAM_INT); + $stmt_insert->bindParam(':meio', $meio, PDO::PARAM_STR); + + $stmt_insert->execute(); + + if ($stmt_insert->rowCount() > 0) { + echo 'sucesso'; + } else { + echo 'erro_inserir'; + } + } + } catch (PDOException $e) { + echo 'erro: ' . $e->getMessage(); + } +} + +// Lógica para excluir +if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['excluir_dados'])) { + require_once('conexao.php'); + + $meioExcluir = $_POST['meio']; + $plataformaExcluir = intval($_POST['plataforma']); + echo ($meioExcluir). "
"; + echo ($plataformaExcluir). "
"; + + $conexao = new Conexao(); + + try { + $sql_delete = "DELETE FROM contribuicao_meioPagamento + WHERE meio = :meio + AND id_plataforma = :id_plataforma"; + + + $stmt_delete = $conexao->pdo->prepare($sql_delete); + $stmt_delete->bindParam(':meio', $meioExcluir, PDO::PARAM_STR); + $stmt_delete->bindParam(':id_plataforma', $plataformaExcluir, PDO::PARAM_STR); + + $stmt_delete->execute(); + + if ($stmt_delete->rowCount() > 0) { + echo 'sucesso'; + } else { + echo 'erro_excluir'; + } + } catch (PDOException $e) { + echo 'erro: ' . $e->getMessage(); + } +} + +// Lógica para editar +if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['alterar_dados'])) { + require_once('conexao.php'); + + echo "
";
+    print_r($_POST); 
+    echo "
"; + echo "
"; + $meio_antigo = $_POST['meio'] ?? ""; + $plataforma_antiga = $_POST['plataforma'] ?? ""; + $meio_novo = $_POST['meio_novo'] ?? ''; + $plataforma_nova_nome = $_POST['plataforma_nova'] ?? ''; + + if (empty($meio_antigo) || empty($plataforma_antiga) || empty($meio_novo) || empty($plataforma_nova_nome)) { + echo 'Campos não podem estar vazios.'; + exit; + } + + $conexao = new Conexao(); + + try { + $stmt_verifica_plataforma = $conexao->pdo->prepare("SELECT id FROM contribuicao_gatewayPagamento WHERE plataforma = ?"); + $stmt_verifica_plataforma->execute([$plataforma_nova_nome]); + $plataforma_nova_id = $stmt_verifica_plataforma->fetchColumn(); + + if (!$plataforma_nova_id) { + echo "Erro: A plataforma especificada não existe na tabela contribuicao_gatewayPagamento."; + exit; + } + + $sql_alterar = "UPDATE contribuicao_meioPagamento + SET meio = :meio_novo, + id_plataforma = :plataforma_nova_id + WHERE meio = :meio_antigo + AND id_plataforma = :plataforma_antiga"; + + $stmt_alterar = $conexao->pdo->prepare($sql_alterar); + $stmt_alterar->bindParam(':meio_antigo', $meio_antigo, PDO::PARAM_STR); + $stmt_alterar->bindParam(':plataforma_antiga', $plataforma_antiga, PDO::PARAM_INT); + $stmt_alterar->bindParam(':meio_novo', $meio_novo, PDO::PARAM_STR); + $stmt_alterar->bindParam(':plataforma_nova_id', $plataforma_nova_id, PDO::PARAM_INT); + + $stmt_alterar->execute(); + + if ($stmt_alterar->rowCount() > 0) { + echo 'sucesso'; + } else { + echo 'erro_alterar'; + } + + echo "
". "Plataforma Nova ID: " . $plataforma_nova_id . "
"; + + } catch (PDOException $e) { + echo "Erro ao executar a consulta SQL: " . $e->getMessage(); + } +} + +?> + + + + + + Meio de pagamento + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+
+
+
+ + + + + + + + + + +
+ +
+ +
+ + + + + + + + + + + + +
MeioPlataformaAtivoAção
+
+
+ + + diff --git a/html/contribuicao/php/regras_pagamento.php b/html/contribuicao/php/regras_pagamento.php new file mode 100644 index 00000000..a51c2146 --- /dev/null +++ b/html/contribuicao/php/regras_pagamento.php @@ -0,0 +1,883 @@ +pdo->query($sql_meio); + $retorno_meio = $stmt_meio->fetchAll(PDO::FETCH_ASSOC); + + $sql_id_meio = "SELECT id_meio FROM contribuicao_conjuntoRegras WHERE id_meio IN (SELECT id_meio FROM contribuicao_meioPagamento)"; + $stmt_id_meio = $conexao->pdo->query($sql_id_meio); + $retorno_id_meio = $stmt_id_meio->fetchAll(PDO::FETCH_COLUMN); + + $retorno_meio_pagamento = array( + 'meio' => $retorno_meio, + 'id_meio' => $retorno_id_meio + ); + + header('Content-Type: application/json; charset=utf-8'); + echo json_encode($retorno_meio_pagamento); + die(); + } catch (PDOException $e) { + echo "Houve um erro ao listar os meios de pagamento: " . $e->getMessage(); + } +} + +//Listar as regras +if($_SERVER["REQUEST_METHOD"] === "POST" && isset ($_POST['listar_regras'])) { + $conexao = new Conexao(); + + try{ + $sql_regra = "SELECT id, regra FROM contribuicao_regras"; + $stmt_regra = $conexao->pdo->query($sql_regra); + $retorno_regra = $stmt_regra->fetchAll(PDO::FETCH_ASSOC); + + header('Content-Type: application/json; charset=utf-8'); + echo json_encode($retorno_regra); + die(); + } catch(PDOException $e){ + echo ("Houve um erro ao listar as regras." . $e->getMessage()); + } +} + +//Listar os dados na tabela +if ($_SERVER["REQUEST_METHOD"] === "POST" && isset($_POST["listar_tabela"])) { + $conexao = new Conexao(); + + try { + $sql_cont_regras = "SELECT id_meio, id_regra, value + FROM contribuicao_conjuntoRegras;"; + + $stmt_listar_cont_regras = $conexao->pdo->query($sql_cont_regras); + $array_listar_cont_regras = $stmt_listar_cont_regras->fetchAll(PDO::FETCH_ASSOC); + + if (!empty($array_listar_cont_regras)) { + $listar_regras = array(); + + foreach ($array_listar_cont_regras as $linha) { + $id_meio = $linha['id_meio']; + $id_regra = $linha['id_regra']; + $valor = $linha['value']; + + $sql_meio = "SELECT meio FROM contribuicao_meioPagamento WHERE id = :id_meio;"; + $stmt_meio = $conexao->pdo->prepare($sql_meio); + $stmt_meio->bindParam(':id_meio', $id_meio, PDO::PARAM_INT); + $stmt_meio->execute(); + $retorno_meio = $stmt_meio->fetch(PDO::FETCH_ASSOC); + + $sql_regra = "SELECT regra FROM contribuicao_regras WHERE id = :id_regra;"; + $stmt_regra = $conexao->pdo->prepare($sql_regra); + $stmt_regra->bindParam(':id_regra', $id_regra, PDO::PARAM_INT); + $stmt_regra->execute(); + $retorno_regra = $stmt_regra->fetch(PDO::FETCH_ASSOC); + + $listar_regras[] = array( + 'meio' => ($retorno_meio) ? $retorno_meio['meio'] : null, + 'regra' => ($retorno_regra) ? $retorno_regra['regra'] : null, + 'value' => $valor + ); + } + + header('Content-Type: application/json; charset=utf-8'); + echo json_encode($listar_regras); + exit(); + } else { + header('Content-Type: application/json; charset=utf-8'); + echo json_encode(array('error' => 'Não foram encontrados dados na tabela')); + exit(); + } + } catch (PDOException $e) { + header('Content-Type: application/json; charset=utf-8'); + echo json_encode(array('error' => 'Houve um erro ao tentar listar os dados: ' . $e->getMessage())); + exit(); + } +} + + +//Salvar os dados no banco de dados +if($_SERVER["REQUEST_METHOD"] === "POST" && isset($_POST['salvar_dados'])){ + $conexao = new Conexao(); + + $meio_nome = $_POST['meio'] ?? NULL; + $id_regra = $_POST['regras'] ?? NULL; + $valor = $_POST['valor'] ?? NULL; + + if(empty($meio_nome) || empty ($id_regra) || empty($valor)){ + echo "Preencha todos os campos!"; + exit; + } + + try{ + //Pega o id de meio + $sql_id_meio = "SELECT id FROM contribuicao_meioPagamento WHERE meio = :meio"; + $stmt_meio = $conexao->pdo->prepare($sql_id_meio); + $stmt_meio->bindParam(':meio', $meio_nome); + $stmt_meio->execute(); + $row_meio = $stmt_meio->fetch(PDO::FETCH_ASSOC); + $id_meio = $row_meio['id'] ?? null; + + if (!$id_meio) { + echo "Meio não encontrado."; + exit; + } + + $sql_check = "SELECT id_meio, id_regra, value FROM contribuicao_conjuntoRegras + WHERE id_meio = :meio + AND id_regra = :regras + AND value = :valor"; + + $stmt_check = $conexao->pdo->prepare($sql_check); + $stmt_check->bindParam(':meio', $id_meio, PDO::PARAM_INT); + $stmt_check->bindParam(':regras', $id_regra, PDO::PARAM_INT); + $stmt_check->bindParam(':valor', $valor, PDO::PARAM_INT); + $stmt_check->execute(); + + $existing_data = $stmt_check->fetch(PDO::FETCH_ASSOC); + + if ($existing_data) { + echo 'conteudo_existente'; + exit; + } else { + $sql_insert = "INSERT INTO contribuicao_conjuntoRegras (id_meio, id_regra, value) + VALUES (:id_meio, :id_regra, :valor)"; + + $stmt_insert = $conexao->pdo->prepare($sql_insert); + $stmt_insert->bindParam(':id_meio', $id_meio, PDO::PARAM_INT); + $stmt_insert->bindParam(':id_regra', $id_regra, PDO::PARAM_INT); + $stmt_insert->bindParam(':valor', $valor, PDO::PARAM_INT); + + $stmt_insert->execute(); + + if ($stmt_insert->rowCount() > 0) { + echo 'sucesso'; + } else { + echo 'erro_inserir'; + } + } + } catch (PDOException $e) { + echo 'erro: ' . $e->getMessage(); + } +} + +// Lógica para excluir +if ($_SERVER["REQUEST_METHOD"] === "POST" && isset($_POST["excluir_dados"])) { + $conexao = new Conexao(); + + $meio_nome = $_POST["meio"]; + $regra_nome = $_POST["regra"]; + $valor = $_POST["valor"]; + + try { + // Pega o id de meio + $sql_id_meio = "SELECT id FROM contribuicao_meioPagamento WHERE meio = :meio"; + $stmt_meio = $conexao->pdo->prepare($sql_id_meio); + $stmt_meio->bindParam(':meio', $meio_nome); + $stmt_meio->execute(); + $row_meio = $stmt_meio->fetch(PDO::FETCH_ASSOC); + $id_meio = $row_meio['id'] ?? null; + + if (!$id_meio) { + echo "Meio não encontrado."; + exit; + } + + // Pega o id de regras + $sql_id_regra = "SELECT id FROM contribuicao_regras WHERE regra = :regra"; + $stmt_regra = $conexao->pdo->prepare($sql_id_regra); + $stmt_regra->bindParam(':regra', $regra_nome); + $stmt_regra->execute(); + $row_regra = $stmt_regra->fetch(PDO::FETCH_ASSOC); + $id_regra = $row_regra['id'] ?? null; + + if (!$id_regra) { + echo "Regra não encontrada."; + exit; + } + + echo "ID do meio: ". $id_meio . "
"; + echo "ID da regra: ". $id_regra . "
"; + echo $valor . "
"; + + $sql_delete = "DELETE FROM contribuicao_conjuntoRegras + WHERE id_meio = :meio + AND id_regra = :regra + AND value = :valor"; + + $stmt_delete = $conexao->pdo->prepare($sql_delete); + $stmt_delete->bindParam(':meio', $id_meio, PDO::PARAM_INT); + $stmt_delete->bindParam(':regra', $id_regra, PDO::PARAM_INT); + $stmt_delete->bindParam(':valor', $valor, PDO::PARAM_INT); + + $stmt_delete->execute(); + + if ($stmt_delete->rowCount() > 0) { + echo 'sucesso'; + } else { + echo 'erro_excluir'; + } + } catch (PDOException $e) { + echo 'Erro ao excluir: ' . $e->getMessage(); + } +} + +// Lógica para alterar +if($_SERVER["REQUEST_METHOD"] === "POST" && isset($_POST["alterar_dados"])){ + + $meio_nome = $_POST["meio"]; + $regra_nome = $_POST["regras"]; + $valor_antigo = $_POST["valor"]; + + if(empty($meio_nome) || empty($regra_nome)){ + echo "Meio ou regra está vazio."; + } + + // Pega o id de meio + $sql_id_meio = "SELECT id FROM contribuicao_meioPagamento WHERE meio = :meio"; + $stmt_meio = $conexao->pdo->prepare($sql_id_meio); + $stmt_meio->bindParam(':meio', $meio_nome); + $stmt_meio->execute(); + $row_meio = $stmt_meio->fetch(PDO::FETCH_ASSOC); + $id_meio_antigo = $row_meio['id'] ?? null; + + if (!$id_meio_antigo) { + echo "Meio não encontrado."; + exit; + } + + // Pega o id de regras + $sql_id_regra = "SELECT id FROM contribuicao_regras WHERE regra = :regra"; + $stmt_regra = $conexao->pdo->prepare($sql_id_regra); + $stmt_regra->bindParam(':regra', $regra_nome); + $stmt_regra->execute(); + $row_regra = $stmt_regra->fetch(PDO::FETCH_ASSOC); + $id_regra_antiga = $row_regra['id'] ?? null; + + if (!$id_regra_antiga) { + echo "Regra não encontrada."; + exit; + } + + echo "ID antigo do meio: ". $id_meio_antigo . "
"; + echo "ID antigo da regra: ". $id_regra_antiga . "
"; + echo $valor_antigo . "
"; + + $id_meio_novo = $_POST["id_meio_novo"]; + $id_regra_nova = $_POST["id_regra_nova"]; + $valor_novo = $_POST["valor_novo"]; + $conexao = new Conexao(); + + try{ + $sql_alterar = "UPDATE contribuicao_conjuntoRegras + SET meio = :id_meio_antigo, + AND regras = :id_regra_antiga, + AND value = :valor_antigo + WHERE meio = :id_meio_novo, + AND regras = :id_regra_nova, + AND value = :valor_novo"; + + $stmt_alterar = $conexao->pdo->prepare($sql_alterar); + $stmt_alterar->bindParam(':id_meio_antigo', $id_meio_antigo, PDO::PARAM_INT); + $stmt_alterar->bindParam(':id_regra_antiga', $id_regra_antiga, PDO::PARAM_INT); + $stmt_alterar->bindParam(':valor_antigo', $valor_antigo, PDO::PARAM_INT); + + $stmt_alterar->bindParam(':id_meio_novo', $id_meio_novo, PDO::PARAM_INT); + $stmt_alterar->bindParam(':id_regra_nova', $id_regra_nova, PDO::PARAM_INT); + $stmt_alterar->bindParam(':valor_novo', $valor_novo, PDO::PARAM_INT); + + $stmt_alterar->execute(); + + if ($stmt_alterar->rowCount() > 0) { + echo 'sucesso'; + } else { + echo 'erro_alterar'; + } + + }catch(PDOException $e){ + echo "Houve um erro na consulta SQL!". $e->getMessage(); + } +} +?> + + + + + + Regras de pagamento + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + +
+ +
+
+ + + + + + + + + + + + + + + + +
+ +
+ +
+ + + + + + + + + + + + + +
MeioRegrasValorAtivoAções
+
+
+
+ + + + diff --git a/html/home.php b/html/home.php index 8921a7be..342c58b9 100755 --- a/html/home.php +++ b/html/home.php @@ -282,6 +282,13 @@ function openItem(id){
+ +
+ +

Contribuição

+
+
+
@@ -701,6 +708,31 @@ function openItem(id){ + + + +
diff --git a/html/menu.php b/html/menu.php index 33be55d4..d694c5a8 100755 --- a/html/menu.php +++ b/html/menu.php @@ -404,6 +404,35 @@ function verificar_modulos(){ + + + +
@@ -266,6 +300,29 @@ function confirmarExclusao() { return confirm("Tem certeza que deseja excluir este item?"); } + + document.addEventListener('DOMContentLoaded', function() { + // Seletor para todos os botões de editar + const editButtons = document.querySelectorAll('button[title="Editar"]'); + + editButtons.forEach(button => { + button.addEventListener('click', function() { + const id = this.getAttribute('data-id'); + const nome = this.closest('tr').querySelector('td:nth-child(1)').textContent; + const endpoint = this.closest('tr').querySelector('td:nth-child(2)').textContent; + const token = this.closest('tr').querySelector('td:nth-child(3)').textContent; + + // Preenche o modal com os dados do gateway + document.getElementById('editId').value = id; + document.getElementById('editNome').value = nome; + document.getElementById('editEndpoint').value = endpoint; + document.getElementById('editToken').value = token; + + // Exibe o modal + $('#editModal').modal('show'); + }); + }); + });
From 5f3ac229cc746ce29aa7444938cca71595abfb14 Mon Sep 17 00:00:00 2001 From: GabrielPintoSouza Date: Wed, 4 Sep 2024 10:38:30 -0300 Subject: [PATCH 10/19] =?UTF-8?q?Implementa=C3=A7=C3=A3o=20da=20funcionali?= =?UTF-8?q?dade=20de=20edi=C3=A7=C3=A3o=20de=20um=20gateway=20de=20pagamen?= =?UTF-8?q?to?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../configuracao/gateway_pagamento.php | 24 ++++++++++---- .../controller/GatewayPagamentoController.php | 17 ++++++++++ .../src/dao/GatewayPagamentoDAO.php | 23 +++++++++++++ .../src/model/GatewayPagamento.php | 32 +++++++++++++++++++ 4 files changed, 90 insertions(+), 6 deletions(-) diff --git a/html/contribuicao/configuracao/gateway_pagamento.php b/html/contribuicao/configuracao/gateway_pagamento.php index 1bc925dc..d771f41d 100644 --- a/html/contribuicao/configuracao/gateway_pagamento.php +++ b/html/contribuicao/configuracao/gateway_pagamento.php @@ -126,7 +126,7 @@

Cadastro de um novo Gateway

- +
@@ -186,7 +186,7 @@

Gateways do Sistema

- +
@@ -201,6 +201,16 @@ Falha na exclusão do gateway.
+ + + +
@@ -258,19 +268,21 @@
- +
From f92435963b101026033f6ee962c465308bb2e0e0 Mon Sep 17 00:00:00 2001 From: GabrielPintoSouza Date: Thu, 5 Sep 2024 11:32:46 -0300 Subject: [PATCH 13/19] =?UTF-8?q?Adapta=C3=A7=C3=A3o=20do=20layout=20para?= =?UTF-8?q?=20a=20p=C3=A1gina=20meio=5Fpagamento.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../configuracao/assets/js/meioPagamento.js | 37 +++ .../configuracao/meio_pagamento.php | 312 ++++++++++++++++-- 2 files changed, 319 insertions(+), 30 deletions(-) create mode 100644 html/contribuicao/configuracao/assets/js/meioPagamento.js diff --git a/html/contribuicao/configuracao/assets/js/meioPagamento.js b/html/contribuicao/configuracao/assets/js/meioPagamento.js new file mode 100644 index 00000000..e40d2772 --- /dev/null +++ b/html/contribuicao/configuracao/assets/js/meioPagamento.js @@ -0,0 +1,37 @@ +$(function () {//Carrega cabeçalho e menu lateral + $("#header").load("../../header.php"); + $(".menuu").load("../../menu.php"); +}); + +function confirmarExclusao() {//Trava de segurança para evitar exclusão de itens indesejados + return confirm("Tem certeza que deseja excluir este item?"); +} + +document.addEventListener('DOMContentLoaded', function () { + // Seletor para todos os botões de editar + const editButtons = document.querySelectorAll('button[title="Editar"]'); + + editButtons.forEach(button => { + button.addEventListener('click', function () { + const id = this.getAttribute('data-id'); + const nome = this.closest('tr').querySelector('td:nth-child(1)').textContent; + const plataformaId = this.getAttribute('data-plataforma-id'); + + // Preenche o modal com os dados do gateway + document.getElementById('editId').value = id; + document.getElementById('editNome').value = nome; + let plataformas = document.getElementById('editPlataforma'); + plataformas.value = plataformaId; + const options = plataformas.options; + + // Verifica se a opção foi selecionada corretamente + if (plataformas.value !== plataformaId) { + console.error('Erro ao selecionar a plataforma com ID:', plataformaId); + } else { + console.log('Plataforma selecionada:', plataformas.options[plataformas.selectedIndex].textContent); + } + + $('#editModal').modal('show'); + }); + }); +}); \ No newline at end of file diff --git a/html/contribuicao/configuracao/meio_pagamento.php b/html/contribuicao/configuracao/meio_pagamento.php index c9e8ad2c..ab67de2a 100644 --- a/html/contribuicao/configuracao/meio_pagamento.php +++ b/html/contribuicao/configuracao/meio_pagamento.php @@ -1,9 +1,80 @@ query("SELECT * FROM situacao"); +$cargo = $mysqli->query("SELECT * FROM cargo"); + +$conexao = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); +$id_pessoa = $_SESSION['id_pessoa']; +$resultado = mysqli_query($conexao, "SELECT * FROM funcionario WHERE id_pessoa=$id_pessoa"); +if (!is_null($resultado)) { + $id_cargo = mysqli_fetch_array($resultado); + if (!is_null($id_cargo)) { + $id_cargo = $id_cargo['id_cargo']; + } + $resultado = mysqli_query($conexao, "SELECT * FROM permissao WHERE id_cargo=$id_cargo and id_recurso=9"); + if (!is_bool($resultado) and mysqli_num_rows($resultado)) { + $permissao = mysqli_fetch_array($resultado); + if ($permissao['id_acao'] < 3) { + $msg = "Você não tem as permissões necessárias para essa página."; + header("Location: ../../home.php?msg_c=$msg"); + } + $permissao = $permissao['id_acao']; + } else { + $permissao = 1; + $msg = "Você não tem as permissões necessárias para essa página."; + header("Location: ../../home.php?msg_c=$msg"); + } +} else { + $permissao = 1; + $msg = "Você não tem as permissões necessárias para essa página."; + header("Location: ../../home.php?msg_c=$msg"); +} + +//Captura mensagem passada na URL como parâmetro +if (isset($_GET['msg'])) { + $msg = trim($_GET['msg']); +} + +//carrega gateways salvos no banco de dados da aplicação +require_once('./src/controller/GatewayPagamentoController.php'); + +$gatewayPagamentoController = new GatewayPagamentoController(); +$gateways = $gatewayPagamentoController->buscaTodos(); + +//carrega meios de pagamentos +$meiosPagamento = [ + ['id' => 1, 'meio' => 'Boleto único', 'id_plataforma' => 21], + ['id' => 2, 'meio' => 'Boleto mensal', 'id_plataforma' => 23], + ['id' => 3, 'meio' => 'Pix', 'id_plataforma' => 21], +]; ?> + Meio de Pagamento @@ -26,42 +97,223 @@ + - + + + + -
- -
- -
- -
-
-
-
-
- +
+
+
+
+

Meio de pagamentos do sistema

+
+ +
+
+
+
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + +
DescriçãoPlataforma | EndpointAtivoAção
+
+ + + + + + +
+
+ +
+ + + + +
+
+ + + + + +
+
+
+
+ + + + + +
+ +
+ \ No newline at end of file From f7cda61486e88e0fba468912c5367ff282cf3a89 Mon Sep 17 00:00:00 2001 From: GabrielPintoSouza Date: Fri, 6 Sep 2024 09:11:49 -0300 Subject: [PATCH 14/19] =?UTF-8?q?Implementa=C3=A7=C3=A3o=20da=20funcionali?= =?UTF-8?q?dade=20de=20cadastrar=20um=20novo=20meio=20de=20pagamento?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../configuracao/meio_pagamento.php | 2 +- .../controller/MeioPagamentoController.php | 29 ++++++++ .../configuracao/src/dao/MeioPagamentoDAO.php | 42 +++++++++++ .../configuracao/src/model/MeioPagamento.php | 71 +++++++++++++++++++ 4 files changed, 143 insertions(+), 1 deletion(-) create mode 100644 html/contribuicao/configuracao/src/controller/MeioPagamentoController.php create mode 100644 html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php create mode 100644 html/contribuicao/configuracao/src/model/MeioPagamento.php diff --git a/html/contribuicao/configuracao/meio_pagamento.php b/html/contribuicao/configuracao/meio_pagamento.php index ab67de2a..c3b5d0e3 100644 --- a/html/contribuicao/configuracao/meio_pagamento.php +++ b/html/contribuicao/configuracao/meio_pagamento.php @@ -169,7 +169,7 @@
- diff --git a/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php b/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php new file mode 100644 index 00000000..cde8dbc1 --- /dev/null +++ b/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php @@ -0,0 +1,29 @@ +cadastrar(); + header("Location: ../../meio_pagamento.php?msg=cadastrar-sucesso"); + }catch(Exception $e){ + header("Location: ../../meio_pagamento.php?msg=cadastrar-falha"); + } + } +} \ No newline at end of file diff --git a/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php b/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php new file mode 100644 index 00000000..abc30784 --- /dev/null +++ b/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php @@ -0,0 +1,42 @@ +pdo = $conexao->pdo; + } + + /** + * Inseri um meio de pagamento no banco de dados da aplicação + */ + public function cadastrar($descricao, $gatewayId){ + /*Lógica da aplicação */ + //definir consulta SQL + $sqlCadastrar = "INSERT INTO contribuicao_meioPagamento (meio, id_plataforma) + VALUES (:descricao, :gatewayId)"; + //utilizar prepared statements + $stmt = $this->pdo->prepare($sqlCadastrar); + $stmt->bindParam(':descricao', $descricao); + $stmt->bindParam(':gatewayId', $gatewayId); + //executar + $stmt->execute(); + } +} \ No newline at end of file diff --git a/html/contribuicao/configuracao/src/model/MeioPagamento.php b/html/contribuicao/configuracao/src/model/MeioPagamento.php new file mode 100644 index 00000000..f55072ae --- /dev/null +++ b/html/contribuicao/configuracao/src/model/MeioPagamento.php @@ -0,0 +1,71 @@ +setDescricao($descricao); + $this->setGatewayId($gatewayId); + } + + /** + * 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); + } + + /** + * 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; + } +} \ No newline at end of file From 3dc6111ec70169099a4fa0fb462b844ba171380c Mon Sep 17 00:00:00 2001 From: GabrielPintoSouza Date: Fri, 6 Sep 2024 09:40:14 -0300 Subject: [PATCH 15/19] =?UTF-8?q?Implementa=C3=A7=C3=A3o=20da=20busca=20de?= =?UTF-8?q?=20todos=20os=20meios=20de=20pagamento=20registrados=20no=20sis?= =?UTF-8?q?tema?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- html/contribuicao/configuracao/meio_pagamento.php | 13 ++++++------- .../src/controller/MeioPagamentoController.php | 14 ++++++++++++++ .../configuracao/src/dao/MeioPagamentoDAO.php | 12 ++++++++++++ 3 files changed, 32 insertions(+), 7 deletions(-) diff --git a/html/contribuicao/configuracao/meio_pagamento.php b/html/contribuicao/configuracao/meio_pagamento.php index c3b5d0e3..8baca759 100644 --- a/html/contribuicao/configuracao/meio_pagamento.php +++ b/html/contribuicao/configuracao/meio_pagamento.php @@ -64,12 +64,11 @@ $gatewayPagamentoController = new GatewayPagamentoController(); $gateways = $gatewayPagamentoController->buscaTodos(); -//carrega meios de pagamentos -$meiosPagamento = [ - ['id' => 1, 'meio' => 'Boleto único', 'id_plataforma' => 21], - ['id' => 2, 'meio' => 'Boleto mensal', 'id_plataforma' => 23], - ['id' => 3, 'meio' => 'Pix', 'id_plataforma' => 21], -]; +//carrega meios de pagamentos salvos no banco de dados da aplicação +require_once('./src/controller/MeioPagamentoController.php'); + +$meioPagamentoController = new MeioPagamentoController(); +$meiosPagamento = $meioPagamentoController->buscaTodos(); ?> @@ -238,7 +237,7 @@ - +
diff --git a/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php b/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php index cde8dbc1..9517b957 100644 --- a/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php +++ b/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php @@ -12,6 +12,7 @@ } require_once ROOT . '/html/contribuicao/configuracao/src/model/MeioPagamento.php'; +require_once ROOT . '/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php'; class MeioPagamentoController{ public function cadastrar(){ @@ -26,4 +27,17 @@ public function cadastrar(){ header("Location: ../../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(); + } + } } \ No newline at end of file diff --git a/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php b/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php index abc30784..9e1788c9 100644 --- a/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php +++ b/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php @@ -39,4 +39,16 @@ public function cadastrar($descricao, $gatewayId){ //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 * from contribuicao_meioPagamento"; + //executar + $resultado = $this->pdo->query($sqlBuscaTodos)->fetchAll(PDO::FETCH_ASSOC); + //retornar resultado + return $resultado; + } } \ No newline at end of file From ba2bdf0f5ddbc4fc88302aa8172c3fc7cde9b592 Mon Sep 17 00:00:00 2001 From: GabrielPintoSouza Date: Fri, 6 Sep 2024 10:13:34 -0300 Subject: [PATCH 16/19] =?UTF-8?q?Implementa=C3=A7=C3=A3o=20do=20m=C3=A9tod?= =?UTF-8?q?o=20excluirPorId=20na=20classe=20MeioPagamentoController?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/GatewayPagamentoController.php | 5 ++++- .../controller/MeioPagamentoController.php | 21 +++++++++++++++++++ .../configuracao/src/dao/MeioPagamentoDAO.php | 18 ++++++++++++++++ 3 files changed, 43 insertions(+), 1 deletion(-) diff --git a/html/contribuicao/configuracao/src/controller/GatewayPagamentoController.php b/html/contribuicao/configuracao/src/controller/GatewayPagamentoController.php index 40cac320..3c74b69e 100644 --- a/html/contribuicao/configuracao/src/controller/GatewayPagamentoController.php +++ b/html/contribuicao/configuracao/src/controller/GatewayPagamentoController.php @@ -46,11 +46,14 @@ public function buscaTodos() } } + /** + * Realiza os procedimentos necessários para remover um gateway de pagamento do sistema. + */ public function excluirPorId() { $gatewayId = trim($_POST['gateway-id']); - if (!$gatewayId || empty($gatewayId)) { + if (!$gatewayId || empty($gatewayId) || $gatewayId < 1) { //parar operação header("Location: ../../gateway_pagamento.php?msg=excluir-falha#mensagem-tabela"); exit(); diff --git a/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php b/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php index 9517b957..2de933e6 100644 --- a/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php +++ b/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php @@ -40,4 +40,25 @@ public function buscaTodos(){ 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: ../../meio_pagamento.php?msg=excluir-falha#mensagem-tabela"); + exit(); + } + + try{ + $meioPagamentoDao = new MeioPagamentoDAO(); + $meioPagamentoDao->excluirPorId($meioPagamentoId); + header("Location: ../../meio_pagamento.php?msg=excluir-sucesso#mensagem-tabela"); + }catch(Exception $e){ + header("Location: ../../meio_pagamento.php?msg=excluir-falha#mensagem-tabela"); + } + } } \ No newline at end of file diff --git a/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php b/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php index 9e1788c9..e0557bbf 100644 --- a/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php +++ b/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php @@ -51,4 +51,22 @@ public function buscaTodos(){ //retornar resultado return $resultado; } + + + 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(); + } + } } \ No newline at end of file From 006da9b4732e73951f64a745244e008c7b60124c Mon Sep 17 00:00:00 2001 From: GabrielPintoSouza Date: Fri, 6 Sep 2024 10:40:26 -0300 Subject: [PATCH 17/19] =?UTF-8?q?Implementa=C3=A7=C3=A3o=20da=20funcionali?= =?UTF-8?q?dade=20de=20editar=20um=20meio=20de=20pagamento=20do=20sistema?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../configuracao/meio_pagamento.php | 2 +- .../controller/GatewayPagamentoController.php | 3 ++ .../controller/MeioPagamentoController.php | 18 ++++++++++ .../src/dao/GatewayPagamentoDAO.php | 3 ++ .../configuracao/src/dao/MeioPagamentoDAO.php | 26 +++++++++++++- .../src/model/GatewayPagamento.php | 3 ++ .../configuracao/src/model/MeioPagamento.php | 34 +++++++++++++++++++ 7 files changed, 87 insertions(+), 2 deletions(-) diff --git a/html/contribuicao/configuracao/meio_pagamento.php b/html/contribuicao/configuracao/meio_pagamento.php index 8baca759..988ce8a3 100644 --- a/html/contribuicao/configuracao/meio_pagamento.php +++ b/html/contribuicao/configuracao/meio_pagamento.php @@ -189,7 +189,7 @@
-

Meio de pagamentos do sistema

+

Meios de pagamento do sistema

diff --git a/html/contribuicao/configuracao/src/controller/GatewayPagamentoController.php b/html/contribuicao/configuracao/src/controller/GatewayPagamentoController.php index 3c74b69e..86859a9d 100644 --- a/html/contribuicao/configuracao/src/controller/GatewayPagamentoController.php +++ b/html/contribuicao/configuracao/src/controller/GatewayPagamentoController.php @@ -69,6 +69,9 @@ public function excluirPorId() //echo 'O id do gateway que será excluído é: '.$gatewayId; } + /** + * Realiza os procedimentos necessários para alterar as informações de um gateway de pagamento do sistema + */ public function editarPorId(){ $gatewayId = $_POST['id']; $gatewayNome = $_POST['nome']; diff --git a/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php b/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php index 2de933e6..bbdcb12d 100644 --- a/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php +++ b/html/contribuicao/configuracao/src/controller/MeioPagamentoController.php @@ -61,4 +61,22 @@ public function excluirPorId(){ header("Location: ../../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: ../../meio_pagamento.php?msg=editar-sucesso#mensagem-tabela"); + }catch(Exception $e){ + header("Location: ../../meio_pagamento.php?msg=editar-falha#mensagem-tabela"); + } + } } \ No newline at end of file diff --git a/html/contribuicao/configuracao/src/dao/GatewayPagamentoDAO.php b/html/contribuicao/configuracao/src/dao/GatewayPagamentoDAO.php index 667ac270..feeeb641 100644 --- a/html/contribuicao/configuracao/src/dao/GatewayPagamentoDAO.php +++ b/html/contribuicao/configuracao/src/dao/GatewayPagamentoDAO.php @@ -53,6 +53,9 @@ public function buscaTodos(){ return $resultado; } + /** + * Remover o gateway de pagamento que possuí id equivalente no banco de dados da aplicação + */ public function excluirPorId($id){ //definir consulta sql $sqlExcluirPorId = "DELETE FROM contribuicao_gatewayPagamento WHERE id=:id"; diff --git a/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php b/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php index e0557bbf..26cf9e5b 100644 --- a/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php +++ b/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php @@ -52,7 +52,9 @@ public function buscaTodos(){ 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"; @@ -69,4 +71,26 @@ public function excluirPorId($id){ 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(); + } + } } \ No newline at end of file diff --git a/html/contribuicao/configuracao/src/model/GatewayPagamento.php b/html/contribuicao/configuracao/src/model/GatewayPagamento.php index a13680f8..601814f3 100644 --- a/html/contribuicao/configuracao/src/model/GatewayPagamento.php +++ b/html/contribuicao/configuracao/src/model/GatewayPagamento.php @@ -29,6 +29,9 @@ public function cadastrar(){ $gatewayPagamentoDao->cadastrar($this->nome, $this->endpoint, $this->token/*, $this->status*/); } + /** + * Altera os dados do sistema pelos novos fornecidos através dos atributos $nome e $endpoint e $token + */ public function editar(){ require_once '../dao/GatewayPagamentoDAO.php'; $gatewayPagamentoDao = new GatewayPagamentoDAO(); diff --git a/html/contribuicao/configuracao/src/model/MeioPagamento.php b/html/contribuicao/configuracao/src/model/MeioPagamento.php index f55072ae..93126183 100644 --- a/html/contribuicao/configuracao/src/model/MeioPagamento.php +++ b/html/contribuicao/configuracao/src/model/MeioPagamento.php @@ -20,6 +20,15 @@ public function cadastrar(){ $meioPagamentoDao->cadastrar($this->descricao, $this->gatewayId); } + /** + * 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 */ @@ -68,4 +77,29 @@ public function setGatewayId($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; + } } \ No newline at end of file From 09e7d1a4f561dafed31701dd195f2dbeb319408d Mon Sep 17 00:00:00 2001 From: GabrielPintoSouza Date: Fri, 6 Sep 2024 10:56:28 -0300 Subject: [PATCH 18/19] =?UTF-8?q?Exibi=C3=A7=C3=A3o=20do=20nome=20do=20gat?= =?UTF-8?q?eway=20e=20seu=20endpoint=20na=20tabela=20de=20meios=20de=20pag?= =?UTF-8?q?amento=20e=20nas=20op=C3=A7=C3=B5es=20das=20sele=C3=A7=C3=B5es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- html/contribuicao/configuracao/meio_pagamento.php | 6 +++--- html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php | 4 +++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/html/contribuicao/configuracao/meio_pagamento.php b/html/contribuicao/configuracao/meio_pagamento.php index 988ce8a3..99765f90 100644 --- a/html/contribuicao/configuracao/meio_pagamento.php +++ b/html/contribuicao/configuracao/meio_pagamento.php @@ -171,7 +171,7 @@
@@ -237,7 +237,7 @@ - +
@@ -282,7 +282,7 @@
diff --git a/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php b/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php index 26cf9e5b..5369d294 100644 --- a/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php +++ b/html/contribuicao/configuracao/src/dao/MeioPagamentoDAO.php @@ -45,7 +45,9 @@ public function cadastrar($descricao, $gatewayId){ */ public function buscaTodos(){ //definir consulta sql - $sqlBuscaTodos = "SELECT * from contribuicao_meioPagamento"; + $sqlBuscaTodos = "SELECT cmp.id, cmp.meio, cmp.id_plataforma, 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 From 841dee5b62d29ea0aede1a35eb0febcc4a177aac Mon Sep 17 00:00:00 2001 From: GabrielPintoSouza Date: Fri, 6 Sep 2024 11:01:20 -0300 Subject: [PATCH 19/19] =?UTF-8?q?Substitui=C3=A7=C3=A3o=20da=20p=C3=A1gina?= =?UTF-8?q?=20antiga=20de=20meio=5Fpagamento.php=20pela=20nova?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- html/contribuicao/php/meio_pagamento.php | 727 ----------------------- html/home.php | 2 +- html/menu.php | 2 +- 3 files changed, 2 insertions(+), 729 deletions(-) delete mode 100644 html/contribuicao/php/meio_pagamento.php diff --git a/html/contribuicao/php/meio_pagamento.php b/html/contribuicao/php/meio_pagamento.php deleted file mode 100644 index 28de8a95..00000000 --- a/html/contribuicao/php/meio_pagamento.php +++ /dev/null @@ -1,727 +0,0 @@ -pdo->query($sql_list); - $dados = $stmt_list->fetchAll(PDO::FETCH_ASSOC); - - $sql_select = "SELECT plataforma FROM contribuicao_gatewayPagamento"; - $stmt_select = $conexao->pdo->query($sql_select); - $plataformas = $stmt_select->fetchAll(PDO::FETCH_ASSOC); - - $retorno = array( - 'dados' => $dados, - 'plataformas' => $plataformas - ); - - header('Content-Type: application/json'); - echo json_encode($retorno); - exit; - } catch (PDOException $e) { - echo json_encode(['erro' => 'Erro ao buscar dados: ' . $e->getMessage()]); - exit; - } -} - -// Salvar dados no banco de dados -if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['salvar_dados'])) { - $plataforma = $_POST['plataforma'] ?? ''; - $meio = $_POST['meio'] ?? ''; - - if (empty($plataforma) || empty($meio)) { - echo 'Campos não podem estar vazios.'; - exit; - } - - $conexao = new Conexao(); - - try { - $sql_get_id = "SELECT id FROM contribuicao_gatewayPagamento WHERE plataforma = :plataforma"; - $stmt_get_id = $conexao->pdo->prepare($sql_get_id); - $stmt_get_id->bindParam(':plataforma', $plataforma, PDO::PARAM_STR); - $stmt_get_id->execute(); - $result = $stmt_get_id->fetch(PDO::FETCH_ASSOC); - - if (!$result) { - echo 'Plataforma selecionada inválida.'; - exit; - } - - $id_plataforma = $result['id']; - - $sql_check = "SELECT id_plataforma, meio FROM contribuicao_meioPagamento - WHERE id_plataforma = :id_plataforma - AND meio = :meio"; - - $stmt_check = $conexao->pdo->prepare($sql_check); - $stmt_check->bindParam(':id_plataforma', $id_plataforma, PDO::PARAM_INT); - $stmt_check->bindParam(':meio', $meio, PDO::PARAM_STR); - $stmt_check->execute(); - - $existing_data = $stmt_check->fetch(PDO::FETCH_ASSOC); - - if ($existing_data) { - echo 'conteudo_existente'; - exit; - } else { - $sql_insert = "INSERT INTO contribuicao_meioPagamento (id_plataforma, meio) - VALUES (:id_plataforma, :meio)"; - - $stmt_insert = $conexao->pdo->prepare($sql_insert); - $stmt_insert->bindParam(':id_plataforma', $id_plataforma, PDO::PARAM_INT); - $stmt_insert->bindParam(':meio', $meio, PDO::PARAM_STR); - - $stmt_insert->execute(); - - if ($stmt_insert->rowCount() > 0) { - echo 'sucesso'; - } else { - echo 'erro_inserir'; - } - } - } catch (PDOException $e) { - echo 'erro: ' . $e->getMessage(); - } -} - -// Lógica para excluir -if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['excluir_dados'])) { - require_once('conexao.php'); - - $meioExcluir = $_POST['meio']; - $plataformaExcluir = intval($_POST['plataforma']); - echo ($meioExcluir). "
"; - echo ($plataformaExcluir). "
"; - - $conexao = new Conexao(); - - try { - $sql_delete = "DELETE FROM contribuicao_meioPagamento - WHERE meio = :meio - AND id_plataforma = :id_plataforma"; - - - $stmt_delete = $conexao->pdo->prepare($sql_delete); - $stmt_delete->bindParam(':meio', $meioExcluir, PDO::PARAM_STR); - $stmt_delete->bindParam(':id_plataforma', $plataformaExcluir, PDO::PARAM_STR); - - $stmt_delete->execute(); - - if ($stmt_delete->rowCount() > 0) { - echo 'sucesso'; - } else { - echo 'erro_excluir'; - } - } catch (PDOException $e) { - echo 'erro: ' . $e->getMessage(); - } -} - -// Lógica para editar -if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['alterar_dados'])) { - require_once('conexao.php'); - - echo "
";
-    print_r($_POST); 
-    echo "
"; - echo "
"; - $meio_antigo = $_POST['meio'] ?? ""; - $plataforma_antiga = $_POST['plataforma'] ?? ""; - $meio_novo = $_POST['meio_novo'] ?? ''; - $plataforma_nova_nome = $_POST['plataforma_nova'] ?? ''; - - if (empty($meio_antigo) || empty($plataforma_antiga) || empty($meio_novo) || empty($plataforma_nova_nome)) { - echo 'Campos não podem estar vazios.'; - exit; - } - - $conexao = new Conexao(); - - try { - $stmt_verifica_plataforma = $conexao->pdo->prepare("SELECT id FROM contribuicao_gatewayPagamento WHERE plataforma = ?"); - $stmt_verifica_plataforma->execute([$plataforma_nova_nome]); - $plataforma_nova_id = $stmt_verifica_plataforma->fetchColumn(); - - if (!$plataforma_nova_id) { - echo "Erro: A plataforma especificada não existe na tabela contribuicao_gatewayPagamento."; - exit; - } - - $sql_alterar = "UPDATE contribuicao_meioPagamento - SET meio = :meio_novo, - id_plataforma = :plataforma_nova_id - WHERE meio = :meio_antigo - AND id_plataforma = :plataforma_antiga"; - - $stmt_alterar = $conexao->pdo->prepare($sql_alterar); - $stmt_alterar->bindParam(':meio_antigo', $meio_antigo, PDO::PARAM_STR); - $stmt_alterar->bindParam(':plataforma_antiga', $plataforma_antiga, PDO::PARAM_INT); - $stmt_alterar->bindParam(':meio_novo', $meio_novo, PDO::PARAM_STR); - $stmt_alterar->bindParam(':plataforma_nova_id', $plataforma_nova_id, PDO::PARAM_INT); - - $stmt_alterar->execute(); - - if ($stmt_alterar->rowCount() > 0) { - echo 'sucesso'; - } else { - echo 'erro_alterar'; - } - - echo "
". "Plataforma Nova ID: " . $plataforma_nova_id . "
"; - - } catch (PDOException $e) { - echo "Erro ao executar a consulta SQL: " . $e->getMessage(); - } -} - -?> - - - - - - Meio de pagamento - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
- -
- -
-
-
-
- - - - - - - - - - -
- -
- -
- - - - - - - - - - - - -
MeioPlataformaAtivoAção
-
-
- - - diff --git a/html/home.php b/html/home.php index 0f10103d..02e21599 100755 --- a/html/home.php +++ b/html/home.php @@ -717,7 +717,7 @@ function openItem(id){

Gateway de pagamentos

- +