diff --git a/BD/wegia001.sql b/BD/wegia001.sql
index f2a9fdf3..e1547543 100755
--- a/BD/wegia001.sql
+++ b/BD/wegia001.sql
@@ -807,20 +807,13 @@ CREATE TABLE `wegia`.`contribuicao_meioPagamento` (
-- Table `wegia`.`contribuicao_conjuntoRegras`
-- -----------------------------------------------------
CREATE TABLE `wegia`.`contribuicao_conjuntoRegras` (
- `id_meio` INT NOT NULL,
- `id_regra` INT NOT NULL,
- `value` VARCHAR(45) NULL,
- PRIMARY KEY (`id_meio`, `id_regra`),
- CONSTRAINT `fk_contribuicao_meioPagamento_meio`
- FOREIGN KEY (`id_meio`)
- REFERENCES `wegia`.`contribuicao_meioPagamento` (`id`)
- ON DELETE NO ACTION
- ON UPDATE NO ACTION,
- CONSTRAINT `fk_contribuicao_regras_regra`
- FOREIGN KEY (`id_regra`)
- REFERENCES `wegia`.`contribuicao_regras` (`id`)
- ON DELETE NO ACTION
- ON UPDATE NO ACTION
+ `id` INT AUTO_INCREMENT PRIMARY KEY,
+ `id_meioPagamento` INT,
+ `id_regra` INT,
+ `valor` DECIMAL(10, 2),
+ CONSTRAINT `fk_contribuicao_meioPagamento` FOREIGN KEY (`id_meioPagamento`) REFERENCES `wegia`.`contribuicao_meioPagamento`(`id`),
+ CONSTRAINT `fk_contribuicao_regras` FOREIGN KEY (`id_regra`) REFERENCES `wegia`.`contribuicao_regras`(`id`),
+ CONSTRAINT `unico_meioPagamento_regra` UNIQUE (`id_meioPagamento`, `id_regra`)
) ENGINE = InnoDB;
diff --git a/BD/wegia002.sql b/BD/wegia002.sql
index 7db38607..5efada47 100755
--- a/BD/wegia002.sql
+++ b/BD/wegia002.sql
@@ -107,6 +107,7 @@ INSERT INTO `recurso` (`id_recurso`, `descricao`) VALUES
('51', 'Criar ficha médica'),
('52', 'Ficha do paciente'),
('6', 'Módulo Pet'),
+('7', 'Módulo Contribuição'),
('61', 'Cadastrar Pet'),
('62', 'Saúde Pet'),
('9', 'Configurações'),
@@ -119,7 +120,8 @@ INSERT INTO `modulos_visiveis` (`id_recurso`, `visivel`) VALUES
(3, 1),
(4, 1),
(5, 1),
-(6, 1);
+(6, 1),
+(7, 1);
INSERT INTO `permissao` (`id_cargo`, `id_acao`, `id_recurso`) VALUES
(1, 7, 1),
diff --git a/classes/Saude.php b/classes/Saude.php
index 58139f98..e607746f 100644
--- a/classes/Saude.php
+++ b/classes/Saude.php
@@ -2,6 +2,9 @@
require_once 'Atendido.php';
// require_once 'Pessoa.php';
+error_reporting(E_ALL);
+ini_set('display_errors', 1);
+
class Saude extends Atendido
{
private $texto;
diff --git a/classes/memorando/Memorando.php b/classes/memorando/Memorando.php
index 4f78ea94..84fc5a6a 100755
--- a/classes/memorando/Memorando.php
+++ b/classes/memorando/Memorando.php
@@ -2,6 +2,7 @@
class Memorando
{
+ //Atributos
private $id_memorando;
private $id_pessoa;
private $id_status_memorando;
@@ -13,51 +14,61 @@ public function __construct($titulo)
$this->titulo = $titulo;
}
+ //Retorna o id de um memorando
public function getId_memorando()
{
return $this->id_memorando;
}
+ //Retorna o id de uma pessoa
public function getId_pessoa()
{
return $this->id_pessoa;
}
+ //Retorna o id do status do memorando
public function getId_status_memorando()
{
return $this->id_status_memorando;
}
+ //Retorna um título de um memorando
public function getTitulo()
{
return $this->titulo;
}
+ //Retorna a data de um memorando
public function getData()
{
return $this->data;
}
+ //Define o id de um memorando
public function setId_memorando($id_memorando)
{
$this->id_memorando = $id_memorando;
}
+ //Define o id de uma pessoa
public function setId_pessoa($id_pessoa)
{
$this->id_pessoa = $id_pessoa;
}
+ //Define o id de status do memorando
public function setId_status_memorando($id_status_memorando)
{
$this->id_status_memorando = $id_status_memorando;
}
+ //Define o título do memorando
public function setTitulo($titulo)
{
$this->titulo = $titulo;
}
+ //Define a data do memorando
public function setData($data = null)
{
if ($data) {
diff --git a/classes/memorando/index.php b/classes/memorando/index.php
new file mode 100644
index 00000000..6ba50656
--- /dev/null
+++ b/classes/memorando/index.php
@@ -0,0 +1,5 @@
+open('anexo_zip.zip', ZIPARCHIVE::CREATE) == TRUE)
- {
- $zip->addFile($arq['tmp_name'][$i], $nome.".".$extensao);
- }
- var_dump($zip);
- $caminho=$zip->filename;
- $zip->close();
- $arquivo_zip = file_get_contents($caminho);
- unlink('anexo_zip.zip');*/
- /*$fp = fopen($_FILES['anexo']['tmp_name'][$i], "rb");
- $conteudo = fread($fp, $tamanho_arquivo);
- $conteudo = addslashes($conteudo);
- fclose($fp);*/
-
$anexo_tmpName = $arq['tmp_name'];
$arquivo = file_get_contents($anexo_tmpName[$i]);
$arquivo1 = $arq['name'][$i];
- $tamanho = strlen($arquivo1);
+ //$tamanho = strlen($arquivo1);
$pos = strpos($arquivo1, ".") + 1;
$extensao = substr($arquivo1, $pos, strlen($arquivo1) + 1);
$nome = substr($arquivo1, 0, $pos - 1);
@@ -91,6 +80,7 @@ public function incluir($anexo, $lastId)
$AnexoControle = new AnexoControle;
$arquivo_zip = $AnexoControle->comprimir($arquivo);
+ //Insere um novo anexo
try {
$anexo = new Anexo();
$anexo->setId_despacho($lastId);
@@ -101,6 +91,7 @@ public function incluir($anexo, $lastId)
echo "Erro ao tentar inserir anexo: " . $e->getMessage();
}
+ //Cria um novo despacho
try {
$anexoDAO = new AnexoDAO();
$anexoDAO->incluir($anexo);
diff --git a/controle/memorando/DespachoControle.php b/controle/memorando/DespachoControle.php
index b3403c55..d60a5e30 100755
--- a/controle/memorando/DespachoControle.php
+++ b/controle/memorando/DespachoControle.php
@@ -103,6 +103,7 @@ public function verificarDespacho()
}
}
+ //Busca um despacho pelo id
public function getPorId(int $id){
try{
if($id < 1){
diff --git a/controle/memorando/MemorandoControle.php b/controle/memorando/MemorandoControle.php
index 3daa141d..8852760b 100755
--- a/controle/memorando/MemorandoControle.php
+++ b/controle/memorando/MemorandoControle.php
@@ -28,7 +28,7 @@ public function listarTodos()
$_SESSION['memorando']=$memorandos;
}
- //LIstar memorando pelo Id
+ //Listar memorando pelo Id
public function listarTodosId($id_memorando)
{
extract($_REQUEST);
@@ -37,7 +37,7 @@ public function listarTodosId($id_memorando)
$_SESSION['memorandoId'] = $memorandos;
}
- //LIstar memorandos inativos
+ //Listar memorandos inativos
public function listarTodosInativos()
{
extract($_REQUEST);
@@ -46,6 +46,7 @@ public function listarTodosInativos()
$_SESSION['memorandoInativo'] = $memorandos;
}
+ //Lista memorandos inativos pelo id
public function listarIdTodosInativos()
{
extract($_REQUEST);
@@ -60,8 +61,6 @@ public function incluir()
$memorando = $this->verificarMemorando();
$memorandoDAO = new MemorandoDAO();
-
-
try
{
$lastId = $memorandoDAO->incluir($memorando);
diff --git a/controle/memorando/StatusMemorandoControle.php b/controle/memorando/StatusMemorandoControle.php
index 68ced7b0..4ecf61a0 100644
--- a/controle/memorando/StatusMemorandoControle.php
+++ b/controle/memorando/StatusMemorandoControle.php
@@ -6,7 +6,8 @@
class StatusMemorandoControle{
/**
- * Retorna um objeto do tipo StatusMemorando que é equivalente ao dado armazenado no banco de dados que possuí o id passado como parâmetro, caso não exista um objeto equivalente retorna null.
+ * Retorna um objeto do tipo StatusMemorando que é equivalente ao dado armazenado no banco de dados que possuí o id passado como
+ * parâmetro, caso não exista um objeto equivalente retorna null.
*/
public function getPorId(int $id){
try{
diff --git a/controle/memorando/index.php b/controle/memorando/index.php
new file mode 100644
index 00000000..6ba50656
--- /dev/null
+++ b/controle/memorando/index.php
@@ -0,0 +1,5 @@
+setId_memorando($id_memorando);
$memorando->setId_status_memorando(2);
$MemorandoDAO2 = new MemorandoDAO();
- $id_status_memorando = 2;
+ //$id_status_memorando = 2;
$MemorandoDAO2->alterarIdStatusMemorando($memorando);
}
@@ -104,7 +107,7 @@ public function incluir(Despacho $despacho)
$memorando->setId_memorando($id_memorando);
$memorando->setId_status_memorando(3);
$MemorandoDAO2 = new MemorandoDAO();
- $id_status_memorando = 3;
+ //$id_status_memorando = 3;
$MemorandoDAO2->alterarIdStatusMemorando($memorando);
}
} catch (PDOException $e) {
@@ -113,6 +116,7 @@ public function incluir(Despacho $despacho)
return $lastId;
}
+ //Função para pegar o id do despacho
public function getPorId(int $id){
$sql = 'SELECT * FROM despacho WHERE id_despacho=:idDespacho';
$pdo = Conexao::connect();
diff --git a/dao/memorando/UsuarioDAO.php b/dao/memorando/UsuarioDAO.php
index a967fca8..75ce67ea 100755
--- a/dao/memorando/UsuarioDAO.php
+++ b/dao/memorando/UsuarioDAO.php
@@ -16,9 +16,9 @@ public function obterUsuario($usuario)
$x++;
}
}
- catch(PDOExeption $e)
+ catch(PDOException $e)
{
- echo 'Error:' . $e->getMessage;
+ echo 'Error:' . $e->getMessage();
}
return $Usuario;
}
diff --git a/dao/memorando/index.php b/dao/memorando/index.php
new file mode 100644
index 00000000..6ba50656
--- /dev/null
+++ b/dao/memorando/index.php
@@ -0,0 +1,5 @@
+prepare("SELECT nome, sobrenome FROM pessoa WHERE registro_geral = :rg");
$pd->bindValue(":rg", $rg);
$pd->execute();
diff --git a/dao/pet/PetDAO.php b/dao/pet/PetDAO.php
index aebe2e99..7218538e 100644
--- a/dao/pet/PetDAO.php
+++ b/dao/pet/PetDAO.php
@@ -1,5 +1,6 @@
prepare("SELECT id_pet_foto FROM pet WHERE id_pet =:id_pet");
diff --git a/dao/pet/exibir_cor.php b/dao/pet/exibir_cor.php
index 0262dfdd..40dfbf3d 100644
--- a/dao/pet/exibir_cor.php
+++ b/dao/pet/exibir_cor.php
@@ -1,7 +1,6 @@
query($sql);
$resultado = array();
@@ -9,5 +8,4 @@
$resultado[] = array('id_cor'=>$row['id_pet_cor'],'cor'=>$row['descricao']);
}
echo json_encode($resultado);
-
?>
\ No newline at end of file
diff --git a/dao/pet/exibir_especie.php b/dao/pet/exibir_especie.php
index 8938f213..77c02b35 100644
--- a/dao/pet/exibir_especie.php
+++ b/dao/pet/exibir_especie.php
@@ -1,13 +1,33 @@
-query($sql);
- $resultado = array();
- while ($row = $stmt->fetch()) {
- $resultado[] = array('id_especie'=>$row['id_pet_especie'],'especie'=>$row['descricao']);
- }
- echo json_encode($resultado);
-
-?>
\ No newline at end of file
+query($sql);
+
+ // Array para armazenar os resultados
+ $resultado = array();
+
+ // Fetch os resultados e sanitizar os dados
+ while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
+ $id_especie = htmlspecialchars($row['id_pet_especie'], ENT_QUOTES, 'UTF-8');
+ $especie = htmlspecialchars($row['descricao'], ENT_QUOTES, 'UTF-8');
+
+ $resultado[] = array('id_especie' => $id_especie, 'especie' => $especie);
+ }
+
+ // Retornar os resultados em formato JSON
+ header('Content-Type: application/json');
+ echo json_encode($resultado);
+
+} catch (PDOException $e) {
+ // Tratamento de erros de conexão
+ echo json_encode(array('error' => 'Erro ao conectar ao banco de dados: ' . $e->getMessage()));
+}
+?>
diff --git a/dao/pet/exibir_raca.php b/dao/pet/exibir_raca.php
index 115d43e5..1b999243 100644
--- a/dao/pet/exibir_raca.php
+++ b/dao/pet/exibir_raca.php
@@ -1,13 +1,27 @@
-query($sql);
- $sql = 'select * from pet_raca';
- $stmt = $pdo->query($sql);
- $resultado = array();
- while ($row = $stmt->fetch()) {
- $resultado[] = array('id_raca'=>$row['id_pet_raca'],'raca'=>$row['descricao']);
- }
- echo json_encode($resultado);
+ if (!$stmt) {
+ throw new Exception('Erro ao executar a consulta SQL.');
+ }
-?>
\ No newline at end of file
+ $resultado = array();
+ while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
+ $resultado[] = array('id_raca' => $row['id_pet_raca'], 'raca' => $row['descricao']);
+ }
+
+ echo json_encode($resultado);
+} catch (PDOException $e) {
+ // Tratamento de erros específicos do PDO
+ echo json_encode(array('error' => 'Erro de banco de dados: ' . $e->getMessage()));
+} catch (Exception $e) {
+ // Tratamento de erros genéricos
+ echo json_encode(array('error' => 'Erro: ' . $e->getMessage()));
+}
+?>
diff --git a/html/atendido/Cadastro_Atendido.php b/html/atendido/Cadastro_Atendido.php
index c5b1a394..39c6c3d3 100755
--- a/html/atendido/Cadastro_Atendido.php
+++ b/html/atendido/Cadastro_Atendido.php
@@ -24,13 +24,19 @@
$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");
+$stmt = mysqli_prepare($conexao, "SELECT * FROM funcionario WHERE id_pessoa=?");
+mysqli_stmt_bind_param($stmt, 'i', $id_pessoa);
+mysqli_stmt_execute($stmt);
+$resultado = mysqli_stmt_get_result($stmt);
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=12");
+ $stmt = mysqli_prepare($conexao, "SELECT * FROM permissao WHERE id_cargo=? and id_recurso=12");
+ mysqli_stmt_bind_param($stmt, 'i', $id_cargo);
+ mysqli_stmt_execute($stmt);
+ $resultado = mysqli_stmt_get_result($stmt);
if (!is_bool($resultado) and mysqli_num_rows($resultado)) {
$permissao = mysqli_fetch_array($resultado);
if ($permissao['id_acao'] < 7) {
diff --git a/html/atendido/cadastro_atendido_pessoa_existente.php b/html/atendido/cadastro_atendido_pessoa_existente.php
index b5b18430..7c7c97c5 100644
--- a/html/atendido/cadastro_atendido_pessoa_existente.php
+++ b/html/atendido/cadastro_atendido_pessoa_existente.php
@@ -21,15 +21,20 @@
header("Location: " . WWW . "index.php");
}
-$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");
+$stmt = mysqli_prepare($conexao, "SELECT * FROM funcionario WHERE id_pessoa=?");
+mysqli_stmt_bind_param($stmt, 'i', $id_pessoa);
+mysqli_stmt_execute($stmt);
+$resultado = mysqli_stmt_get_result($stmt);
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=3");
+ $stmt = mysqli_prepare($conexao, "SELECT * FROM permissao WHERE id_cargo=? and id_recurso=3");
+ mysqli_stmt_bind_param($stmt, 'i', $id_cargo);
+ mysqli_stmt_execute($stmt);
+ $resultado = mysqli_stmt_get_result($stmt);
if (!is_bool($resultado) and mysqli_num_rows($resultado)) {
$permissao = mysqli_fetch_array($resultado);
if ($permissao['id_acao'] == 1) {
@@ -59,6 +64,9 @@
require_once "../../dao/Conexao.php";
$pdo = Conexao::connect();
$cpf = $_GET['cpf'];
+if (!preg_match('/^\d{11}$/', $cpf)) {
+ die('CPF inválido.');
+}
$atendido = new AtendidoDAO;
$informacoesFunc = $atendido->listarPessoaExistente($cpf);
$id_pessoaForm = $atendido->listarIdPessoa($cpf);
diff --git a/html/atendido/cadastro_ocorrencia.php b/html/atendido/cadastro_ocorrencia.php
index d4403f20..e35b05b6 100644
--- a/html/atendido/cadastro_ocorrencia.php
+++ b/html/atendido/cadastro_ocorrencia.php
@@ -23,13 +23,19 @@
$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");
+$stmt = mysqli_prepare($conexao, "SELECT * FROM funcionario WHERE id_pessoa=?");
+mysqli_stmt_bind_param($stmt, 'i', $id_pessoa);
+mysqli_stmt_execute($stmt);
+$resultado = mysqli_stmt_get_result($stmt);
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=3");
+ $stmt = mysqli_prepare($conexao, "SELECT * FROM permissao WHERE id_cargo=? and id_recurso=3");
+ mysqli_stmt_bind_param($stmt, 'i', $id_cargo);
+ mysqli_stmt_execute($stmt);
+ $resultado = mysqli_stmt_get_result($stmt);
if(!is_bool($resultado) and mysqli_num_rows($resultado)){
$permissao = mysqli_fetch_array($resultado);
if($permissao['id_acao'] == 1){
diff --git a/html/atendido/docfamiliar_upload.php b/html/atendido/docfamiliar_upload.php
index caaf6f9e..3c3f66ec 100644
--- a/html/atendido/docfamiliar_upload.php
+++ b/html/atendido/docfamiliar_upload.php
@@ -15,25 +15,33 @@
// A tabela funcioanrio_docs requer id_dependente, id_docdependente, extensao_arquivo, nome_arquivo e arquivo
$arquivo = $_FILES["arquivo"];
$nome_arquivo = $arquivo["name"];
- $extensao_arquivo = explode(".", $arquivo["name"])[1];
+ $extensao_arquivo = strtolower(pathinfo($nome_arquivo, PATHINFO_EXTENSION));
$arquivo_b64 = base64_encode(file_get_contents($arquivo['tmp_name']));
- try {
- $pdo = Conexao::connect();
- $prep = $pdo->prepare("INSERT INTO funcionario_dependentes_docs (id_dependente, id_docdependentes, extensao_arquivo, nome_arquivo, arquivo)
- VALUES ( :idf , :idd , :ext , :n , COMPRESS(:a) )");
-
- $prep->bindValue(":idf", $id_dependente);
- $prep->bindValue(":idd", $id_docdependente);
- $prep->bindValue(":ext", $extensao_arquivo);
- $prep->bindValue(":n", $nome_arquivo);
- $prep->bindValue(":a", $arquivo_b64);
-
- $prep->execute();
-
- header("Location: ../profile_dependente.php?id_dependente=$id_dependente");
- } catch (PDOException $e) {
- echo("Houve um erro ao realizar o upload do documento:
$e");
+ // Tipos de arquivos permitidos
+ $tipos_permitidos = ['pdf', 'jpg', 'jpeg', 'png', 'doc', 'docx'];
+
+ // Verifica se a extensão do arquivo é permitida
+ if (in_array($extensao_arquivo, $tipos_permitidos)) {
+ try {
+ $pdo = Conexao::connect();
+ $prep = $pdo->prepare("INSERT INTO funcionario_dependentes_docs (id_dependente, id_docdependentes, extensao_arquivo, nome_arquivo, arquivo)
+ VALUES ( :idf , :idd , :ext , :n , COMPRESS(:a) )");
+
+ $prep->bindValue(":idf", $id_dependente);
+ $prep->bindValue(":idd", $id_docdependente);
+ $prep->bindValue(":ext", $extensao_arquivo);
+ $prep->bindValue(":n", $nome_arquivo);
+ $prep->bindValue(":a", $arquivo_b64);
+
+ $prep->execute();
+
+ header("Location: ../profile_dependente.php?id_dependente=$id_dependente");
+ } catch (PDOException $e) {
+ echo("Houve um erro ao realizar o upload do documento:
$e");
+ }
+ } else {
+ echo "Tipo de arquivo não permitido. Apenas arquivos PDF, JPG, JPEG, PNG, DOC e DOCX são aceitos.";
}
}else {
header("Location: ../informacao_funcionario.php");
diff --git a/html/atendido/documento.php b/html/atendido/documento.php
index 55afd505..400175e2 100644
--- a/html/atendido/documento.php
+++ b/html/atendido/documento.php
@@ -11,23 +11,47 @@ class DocumentoAtendido {
// Constructor
+ // function __construct($id)
+ // {
+ // $id = (int) $id;
+ // $this->setid_fundocs($id);
+ // try {
+ // $pdo = Conexao::connect();
+ // $query = $pdo->query("SELECT arquivo_extensao, arquivo_nome, arquivo FROM atendido_documentacao WHERE idatendido_documentacao = $id ;");
+ // $query = $query->fetch(PDO::FETCH_ASSOC);
+ // $this->setDocumento(base64_decode(gzuncompress($query["arquivo"])));
+ // $this->setExtensao($query["arquivo_extensao"]);
+ // $this->setNome($query["arquivo_nome"]);
+ // } catch (PDOException $e) {
+ // $this->setException("Houve um erro ao consultar o documento no banco de dados: $e");
+ // }
+ // }
+
function __construct($id)
{
$id = (int) $id;
$this->setid_fundocs($id);
try {
$pdo = Conexao::connect();
- $query = $pdo->query("SELECT arquivo_extensao, arquivo_nome, arquivo FROM atendido_documentacao WHERE idatendido_documentacao = $id ;");
- $query = $query->fetch(PDO::FETCH_ASSOC);
- $this->setDocumento(base64_decode(gzuncompress($query["arquivo"])));
- $this->setExtensao($query["arquivo_extensao"]);
- $this->setNome($query["arquivo_nome"]);
+ $prep = $pdo->prepare("SELECT arquivo_extensao, arquivo_nome, arquivo FROM atendido_documentacao WHERE idatendido_documentacao = :id;");
+ $prep->bindValue(':id', $id, PDO::PARAM_INT);
+ $prep->execute();
+ $query = $prep->fetch(PDO::FETCH_ASSOC);
+
+ if ($query) {
+ $this->setDocumento(base64_decode(gzuncompress($query["arquivo"])));
+ $this->setExtensao($query["arquivo_extensao"]);
+ $this->setNome($query["arquivo_nome"]);
+ } else {
+ $this->setException("Documento não encontrado.");
+ }
} catch (PDOException $e) {
- $this->setException("Houve um erro ao consultar o documento no banco de dados: $e");
+ $this->setException("Houve um erro ao consultar o documento no banco de dados: " . $e->getMessage());
}
}
+
// Getters & Setters
public function getid_fundocs()
@@ -93,14 +117,30 @@ public function setNome($nome)
// Metodos
+ // function delete(){
+ // try {
+ // $pdo = Conexao::connect();
+ // $query = $pdo->query("DELETE FROM atendido_documentacao WHERE idatendido_documentacao = ".$this->getid_fundocs()." ;");
+ // $query = $query->fetch(PDO::FETCH_ASSOC);
+ // } catch (PDOException $e) {
+ // $this->setException("Houve um erro ao remover o documento do banco de dados: $e");
+ // }
+ // }
+
function delete(){
try {
$pdo = Conexao::connect();
- $query = $pdo->query("DELETE FROM atendido_documentacao WHERE idatendido_documentacao = ".$this->getid_fundocs()." ;");
- $query = $query->fetch(PDO::FETCH_ASSOC);
+ $prep = $pdo->prepare("DELETE FROM atendido_documentacao WHERE idatendido_documentacao = :id;");
+ $prep->bindValue(':id', $this->getid_fundocs(), PDO::PARAM_INT);
+ $prep->execute();
+
+ if ($prep->rowCount() > 0) {
+ // Deletado com sucesso
+ } else {
+ $this->setException("Documento não encontrado para exclusão.");
+ }
} catch (PDOException $e) {
- $this->setException("Houve um erro ao remover o documento do banco de dados: $e");
+ $this->setException("Houve um erro ao remover o documento do banco de dados: " . $e->getMessage());
}
- }
-
+ }
}
diff --git a/html/atendido/documento_upload.php b/html/atendido/documento_upload.php
index e4273a07..16241fbd 100644
--- a/html/atendido/documento_upload.php
+++ b/html/atendido/documento_upload.php
@@ -17,39 +17,44 @@
// $idatendido, $id_docfuncional e $arquivo
var_dump($_POST);
extract($_POST);
-
- // A tabela atendido_ocorrencia_docs requer idatendido_ocorrencia_doc atentido_ocorrencia_idatentido_ocorrencias data arquivo_nome arquivo_extensao arquivo
+
$arquivo = $_FILES["arquivo"];
+ if ($arquivo['error'] !== UPLOAD_ERR_OK) {
+ die("Houve um erro no upload do arquivo. Código de erro: " . $arquivo['error']);
+ }
$arquivo_nome = $arquivo["name"];
- $extensao_nome = explode(".", $arquivo["name"])[1];
- $arquivo_b64 = base64_encode(file_get_contents($arquivo['tmp_name']));
-
- try {
- $pdo = Conexao::connect();
- $prep = $pdo->prepare("INSERT INTO atendido_documentacao( atendido_idatendido, atendido_docs_atendidos_idatendido_docs_atendidos, data, arquivo_nome, arquivo_extensao, arquivo)
- VALUES ( :atendido_idatendido , :atendido_docs_atendidos_idatendido_docs_atendidos , :data, :arquivo_nome , :arquivo_extensao, :arquivo )");
-
- //$prep->bindValue(":ida", $idatendido);
- //$prep->bindValue(":idd", $atentido_ocorrencia_idatentido_ocorrencias);
- $prep->bindValue(":atendido_idatendido", $idatendido);
- $prep->bindValue(":atendido_docs_atendidos_idatendido_docs_atendidos", $id_docfuncional);
- $prep->bindValue(":arquivo_nome", $arquivo_nome);
- $prep->bindValue(":arquivo_extensao", $extensao_nome);
- $prep->bindValue(":arquivo", gzcompress($arquivo_b64));
-
- $dataDocumento = date('Y/m/d');
- $prep->bindValue(":data", $dataDocumento);
-
- $prep->execute();
-
- header("Location: Profile_Atendido.php?idatendido=$idatendido");
- } catch (PDOException $e) {
- echo("Houve um erro ao realizar o upload do documento:
$e");
+ $extensao_nome = strtolower(pathinfo($arquivo["name"], PATHINFO_EXTENSION));
+ $arquivo_b64 = base64_encode(file_get_contents($arquivo['tmp_name']));
+
+ $tipos_permitidos = ['pdf', 'jpg', 'jpeg', 'png', 'doc', 'docx'];
+
+ if (in_array($extensao_nome, $tipos_permitidos)) {
+ try {
+ $pdo = Conexao::connect();
+ $prep = $pdo->prepare("INSERT INTO atendido_documentacao( atendido_idatendido, atendido_docs_atendidos_idatendido_docs_atendidos, data, arquivo_nome, arquivo_extensao, arquivo)
+ VALUES ( :atendido_idatendido , :atendido_docs_atendidos_idatendido_docs_atendidos , :data, :arquivo_nome , :arquivo_extensao, :arquivo )");
+
+ //$prep->bindValue(":ida", $idatendido);
+ //$prep->bindValue(":idd", $atentido_ocorrencia_idatentido_ocorrencias);
+ $prep->bindValue(":atendido_idatendido", $idatendido);
+ $prep->bindValue(":atendido_docs_atendidos_idatendido_docs_atendidos", $id_docfuncional);
+ $prep->bindValue(":arquivo_nome", $arquivo_nome);
+ $prep->bindValue(":arquivo_extensao", $extensao_nome);
+ $prep->bindValue(":arquivo", gzcompress($arquivo_b64));
+
+ $dataDocumento = date('Y/m/d');
+ $prep->bindValue(":data", $dataDocumento);
+
+ $prep->execute();
+
+ header("Location: Profile_Atendido.php?idatendido=$idatendido");
+ } catch (PDOException $e) {
+ error_log("Erro de PDO: " . $e->getMessage());
+ echo("Houve um erro ao realizar o upload do documento:
$e");
+ }
+ } else {
+ echo "Tipo de arquivo não permitido. Apenas arquivos PDF, JPG, JPEG, PNG, DOC e DOCX são aceitos.";
}
-
-
}else {
header("Location: Informacao_Atendido.php");
-}
-
-
+}
\ No newline at end of file
diff --git a/html/atendido/familiar_listar.php b/html/atendido/familiar_listar.php
index dee22337..cc2c1760 100644
--- a/html/atendido/familiar_listar.php
+++ b/html/atendido/familiar_listar.php
@@ -14,16 +14,24 @@
$pdo = Conexao::connect();
$id_funcionario = $_POST["id_funcionario"];
-$dependente = $pdo->query("SELECT
+$stmt = $pdo->prepare("SELECT
p.nome AS nome, p.cpf AS cpf, par.descricao AS parentesco
FROM funcionario_dependentes fdep
LEFT JOIN funcionario f ON f.id_funcionario = fdep.id_funcionario
LEFT JOIN pessoa p ON p.id_pessoa = fdep.id_pessoa
LEFT JOIN funcionario_dependente_parentesco par ON par.id_parentesco = fdep.id_parentesco
-WHERE fdep.id_funcionario = $id_funcionario;");
-$dependente = $dependente->fetchAll(PDO::FETCH_ASSOC);
-$dependente = json_encode($dependente);
+WHERE fdep.id_funcionario = :id_funcionario");
-echo $dependente;
+$stmt->bindParam(':id_funcionario', $id_funcionario, PDO::PARAM_INT);
-die();
\ No newline at end of file
+$stmt->execute();
+
+$dependentes = $stmt->fetchAll(PDO::FETCH_ASSOC);
+
+foreach ($dependentes as &$dependente) {
+ $dependente['cpf'] = substr($dependente['cpf'], 0, 3) . '.***.***-' . substr($dependente['cpf'], -2);
+}
+
+echo json_encode($dependentes);
+
+exit();
\ No newline at end of file
diff --git a/html/cadastro_destino.php b/html/cadastro_destino.php
index 31e9380e..b10388fa 100755
--- a/html/cadastro_destino.php
+++ b/html/cadastro_destino.php
@@ -99,28 +99,28 @@ function validarCPF(strCPF) {
}
function FormataCnpj(campo, teclapres) {
- var tecla = teclapres.keyCode;
- var vr = new String(campo.value);
- vr = vr.replace(".", "");
- vr = vr.replace("/", "");
- vr = vr.replace("-", "");
- tam = vr.length + 1;
- if (tecla != 14) {
- if (tam == 3)
- campo.value = vr.substr(0, 2) + '.';
- if (tam == 6)
- campo.value = vr.substr(0, 2) + '.' + vr.substr(2, 5) + '.';
- if (tam == 10)
- campo.value = vr.substr(0, 2) + '.' + vr.substr(2, 3) + '.' + vr.substr(6, 3) + '/';
- if (tam == 15)
- campo.value = vr.substr(0, 2) + '.' + vr.substr(2, 3) + '.' + vr.substr(6, 3) + '/' + vr.substr(9, 4) + '-' + vr.substr(13, 2);
- }
+var tecla = teclapres.keyCode;
+var vr = campo.value.replace(/\D/g, ''); // Remove todos os caracteres não numéricos
+var tam = vr.length;
+
+if (tecla != 8) { // Ignora o backspace
+ if (tam <= 2) {
+ campo.value = vr; // Ex: 12
+ } else if (tam <= 5) {
+ campo.value = vr.substr(0, 2) + '.' + vr.substr(2); // Ex: 12.345
+ } else if (tam <= 8) {
+ campo.value = vr.substr(0, 2) + '.' + vr.substr(2, 3) + '.' + vr.substr(5); // Ex: 12.345.678
+ } else if (tam <= 12) {
+ campo.value = vr.substr(0, 2) + '.' + vr.substr(2, 3) + '.' + vr.substr(5, 3) + '/' + vr.substr(8); // Ex: 12.345.678/9012
+ } else {
+ campo.value = vr.substr(0, 2) + '.' + vr.substr(2, 3) + '.' + vr.substr(5, 3) + '/' + vr.substr(8, 4) + '-' + vr.substr(12, 2); // Ex: 12.345.678/9012-34
+ }
+}
}
function validarCNPJ(cnpj) {
cnpj = cnpj.replace(/[^\d]+/g, '');
-
if (cnpj == '') return false;
if (cnpj.length != 14)
return false;
@@ -178,6 +178,20 @@ function exibirCNPJ(cnpj) {
document.getElementById("enviar").disabled = false;
}
}
+ function permitirSomenteCNPJ(e) {
+ var tecla = e.key;
+
+ // Permite números (0-9), "/", "-", ".", e teclas de controle como Backspace, Delete, Tab, etc.
+ var regex = /^[0-9\/\.\-]$/;
+
+ // Se a tecla não for permitida, cancela o evento
+ if (!regex.test(tecla) && !['Backspace', 'Tab', 'ArrowLeft', 'ArrowRight', 'Delete'].includes(tecla)) {
+ e.preventDefault();
+
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Cadastro de um novo Gateway
+
+
+
+
+
+
+
+ Gateway cadastrado com sucesso!
+
+
+
+
+ Falha no cadastro do gateway.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Gateways do Sistema
+
+
+
+
+
+
+
+ Gateway excluído com sucesso!
+
+
+
+
+ Falha na exclusão do gateway.
+
+
+
+
+ Gateway editado com sucesso!
+
+
+
+
+ Falha na edição do gateway.
+
+
+
+
+
+
+
+ Não foi possível encontrar nenhum gateway cadastrado no sistema.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+