Skip to content

Commit

Permalink
Criação da função cadastrarSocio em util.js [Issue #767]
Browse files Browse the repository at this point in the history
  • Loading branch information
GabrielPintoSouza committed Nov 28, 2024
1 parent b44f668 commit b5b74e5
Show file tree
Hide file tree
Showing 4 changed files with 91 additions and 45 deletions.
6 changes: 6 additions & 0 deletions html/apoio/controller/SocioController.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@
require_once '../helper/Util.php';
class SocioController
{

public function criarSocio(){
$request = $_REQUEST;
echo json_encode(['mensagem' => 'Recebido com sucesso', 'data' => $request]);
}

/**
* Extraí o documento de um sócio da requisição e retorna os dados pertecentes a esse sócio.
*/
Expand Down
1 change: 1 addition & 0 deletions html/apoio/controller/control.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
[
'exibirBoletosPorCpf',
'buscarPorDocumento',
'criarSocio',
];

//Blocks execution for unauthorized access
Expand Down
2 changes: 1 addition & 1 deletion html/apoio/public/js/boleto.js
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ function buscarSocio() {
function decidirAcao() {
switch (acao) {
case 'boleto': gerarBoleto(); break;
case 'cadastrar': console.log('Cadastrar Sócio'); break;//colocar chamada para função de cadastrar sócio
case 'cadastrar': cadastrarSocio(); break;//colocar chamada para função de cadastrar sócio
case 'atualizar': console.log('Atualizar Sócio'); break;//colocar chamada para função de atualizar sócio
default: console.log('Ação indefinida');
}
Expand Down
127 changes: 83 additions & 44 deletions html/apoio/public/js/util.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,8 @@ function configurarMudancaOpcao(funcao) {
*/
function configurarConsulta(funcao) {
const btnConsulta = document.getElementById("consultar-btn");
btnConsulta.addEventListener("click", function () {
btnConsulta.addEventListener("click", function (ev) {
ev.preventDefault();
funcao();
})
}
Expand Down Expand Up @@ -146,9 +147,9 @@ function verificarValor(valor) {
function configurarAvancaValor(funcao) {
const btnAvancaValor = document.getElementById('avanca-valor');

btnAvancaValor.addEventListener('click', () => {
btnAvancaValor.addEventListener('click', (ev) => {
const valor = document.getElementById('valor').value;

ev.preventDefault();
if (!funcao(valor)) {
alert('O valor informado está abaixo do mínimo permitido.');
return;
Expand All @@ -161,53 +162,58 @@ function configurarAvancaValor(funcao) {
/**
* Configura o comportamento do botão volta-valor
*/
function configurarVoltaValor(){
function configurarVoltaValor() {
const btnVoltaValor = document.getElementById('volta-valor');

btnVoltaValor.addEventListener('click', ()=>{
btnVoltaValor.addEventListener('click', (ev) => {
ev.preventDefault();
alternarPaginas('pag1', 'pag2');
});
}

function configurarVoltaCpf(){
function configurarVoltaCpf() {
const btnVoltaCpf = document.getElementById('volta-cpf');
btnVoltaCpf.addEventListener('click', ()=>{
btnVoltaCpf.addEventListener('click', (ev) => {
ev.preventDefault();
alternarPaginas('pag2', 'pag3');
});
});
}

function configurarVoltaContato(){
function configurarVoltaContato() {
const btnVoltaContato = document.getElementById('volta-contato');
btnVoltaContato.addEventListener('click', ()=>{
btnVoltaContato.addEventListener('click', (ev) => {
ev.preventDefault();
alternarPaginas('pag3', 'pag4');
});
}

function configurarAvancaContato(funcao){
function configurarAvancaContato(funcao) {
const btnAvancaContato = document.getElementById('avanca-contato');
btnAvancaContato.addEventListener('click', ()=>{
if(!funcao()){
btnAvancaContato.addEventListener('click', (ev) => {
ev.preventDefault();
if (!funcao()) {
return;
}

alternarPaginas('pag4', 'pag3');
})
}

function configurarAvancaEndereco(funcao){
function configurarAvancaEndereco(funcao) {
const btnAvancaEndereco = document.getElementById('avanca-endereco');
btnAvancaEndereco.addEventListener('click', ()=>{
if(!funcao()){
btnAvancaEndereco.addEventListener('click', (ev) => {
ev.preventDefault();
if (!funcao()) {
return;
}

alternarPaginas('pag5', 'pag4');
});
}

function configurarAvancaTerminar(funcao){
function configurarAvancaTerminar(funcao) {
const btnAvancaTerminar = document.getElementById('avanca-terminar');
btnAvancaTerminar.addEventListener('click', (ev)=>{
btnAvancaTerminar.addEventListener('click', (ev) => {
ev.preventDefault();
btnAvancaTerminar.disabled = true;
btnAvancaTerminar.classList.add('disabled');
Expand All @@ -219,122 +225,155 @@ function configurarAvancaTerminar(funcao){
/**
* Verifica se alguma propriedade de um objeto do tipo Socio está vazia
*/
function verificarSocio({bairro, cep, cidade, complemento, documento, email, estado, id, logradouro, nome, numeroEndereco, telefone}){
function verificarSocio({ bairro, cep, cidade, complemento, documento, email, estado, id, logradouro, nome, numeroEndereco, telefone }) {
//verificar propriedades
if(!bairro || bairro.length < 1){
if (!bairro || bairro.length < 1) {
return false;
}

if(!cep || cep.length < 1){
if (!cep || cep.length < 1) {
return false;
}

if(!cidade || cidade.length < 1){
if (!cidade || cidade.length < 1) {
return false;
}

/*if(!complemento || complemento.length < 1){
return false;
}*/

if(!documento || documento.length < 1){
if (!documento || documento.length < 1) {
return false;
}

if(!email || email.length < 1){
if (!email || email.length < 1) {
return false;
}

if(!estado || estado.length < 1){
if (!estado || estado.length < 1) {
return false;
}

if(!id || id.length < 1){
if (!id || id.length < 1) {
return false;
}

if(!logradouro || logradouro.length < 1){
if (!logradouro || logradouro.length < 1) {
return false;
}

if(!nome || nome.length < 1){
if (!nome || nome.length < 1) {
return false;
}

if(!numeroEndereco || numeroEndereco.length < 1){
if (!numeroEndereco || numeroEndereco.length < 1) {
return false;
}

if(!telefone || telefone.length < 1){
if (!telefone || telefone.length < 1) {
return false;
}

return true;
}

function verificarEndereco(){
function cadastrarSocio() {
const form = document.getElementById('formulario');
const formData = new FormData(form);

const documento = pegarDocumento();

formData.append('nomeClasse', 'SocioController');
formData.append('metodo', 'criarSocio');
formData.append('documento_socio', documento);

fetch("../controller/control.php", {
method: "POST",
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error("Erro na requisição: " + response.status);
}
return response.json(); // Converte a resposta para JSON
})
.then(resposta => {
if (resposta.mensagem) {
console.log(resposta.mensagem);
} else {
alert("Ops! Ocorreu um problema durante o seu cadastro, se o erro persistir contate o suporte.");
}

})
.catch(error => {
console.error("Erro:", error);
});
}

function verificarEndereco() {
const cep = document.getElementById('cep').value;
const rua = document.getElementById('rua').value;
const numeroEndereco = document.getElementById('numero');
const bairro = document.getElementById('bairro');
const uf = document.getElementById('uf');
const cidade = document.getElementById('cidade');

if(!cep || cep.length != 9){
alert ('O CEP informado não está no formato válido');
if (!cep || cep.length != 9) {
alert('O CEP informado não está no formato válido');
return false;
}

if(!rua || rua.length < 1){
if (!rua || rua.length < 1) {
alert('A rua não pode estar vazia.');
return false;
}

if(!numeroEndereco || numeroEndereco.length < 1){
if (!numeroEndereco || numeroEndereco.length < 1) {
alert('O número de endereço não pode estar vazio.');
return false;
}

if(!bairro || bairro.length < 1){
if (!bairro || bairro.length < 1) {
alert('O bairro não pode estar vazio.');
return false;
}

if(!uf || uf.length < 1){
if (!uf || uf.length < 1) {
alert('O estado não pode estar vazio.');
return false;
}

if(!cidade || cidade.length < 1){
if (!cidade || cidade.length < 1) {
alert('A cidade não pode estar vazia.');
return false;
}

return true;
}

function verificarContato(){
function verificarContato() {
const nome = document.getElementById('nome').value;
const dataNascimento = document.getElementById('data_nascimento').value;
const email = document.getElementById('email').value;
const telefone = document.getElementById('telefone').value;

if(!nome || nome.length < 3){
if (!nome || nome.length < 3) {
alert('O nome não pode estar vazio.');
return false;
}

if(!dataNascimento){
if (!dataNascimento) {
alert('A data de nascimento não pode estar vazia');
return false;
}

if(!email){
if (!email) {
alert('O e-mail não pode estar vazio.');
return false;
}

if(!telefone){
if (!telefone) {
alert('O telefone não pode estar vazio.');
return false;
}
Expand All @@ -346,7 +385,7 @@ function verificarContato(){
* Recebe como parâmetro um objeto do tipo Socio e preenche os campos do formulário automaticamente
* @param {*} param0
*/
function formAutocomplete({bairro, cep, cidade, complemento, documento, email, estado, id, logradouro, nome, numeroEndereco, telefone}){
function formAutocomplete({ bairro, cep, cidade, complemento, documento, email, estado, id, logradouro, nome, numeroEndereco, telefone }) {

//Definir elementos do HTML
const nomeObject = document.getElementById('nome');
Expand Down

0 comments on commit b5b74e5

Please sign in to comment.