Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const alunoModel = require('../../models/usuario/aluno/aluno.model');
const alunoModel = require('../../repository/usuario/aluno');

async function httpPost(req, res){

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const empresaModel= require('../../models/usuario/empresa/empresa.model');
const empresaModel= require('../../repository/usuario/empresa');

async function httpPost(req, res){

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const professorModel = require('../../models/usuario/professor/professor.model');
const professorModel = require('../../repository/usuario/professor');

async function httpPost(req, res) {
try {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const transacaoRepository = require('../../models/transacao/transacao.repository');
const transacaoRepository = require('../../repository/transacao');

const { getUserIdFromToken } = require('../../services/jwt-decoder');

Expand Down Expand Up @@ -50,8 +50,22 @@ async function httpGetAll(req, res){

}

async function httpGetById(req, res){
try{
const { id } = req.params;

const transacao = await transacaoRepository.findById(id);

return res.status(200).json(transacao);
} catch(error){
console.log(error);
return res.status(500).json({error: 'error ao encontrar transacao'});
}
}


module.exports = {
httpPost,
httpGetAll
httpGetAll,
httpGetById
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const userRepository = require('../../models/usuario/user.repository');
const userRepository = require('../../repository/usuario');
const { getUserIdFromToken } = require('../../services/jwt-decoder');

async function getOwnUserData(req, res) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const vantagemModel= require('../../models/vantagem/vantagem.repository');
const vantagemModel= require('../../repository/vantagem');

const { getUserIdFromToken } = require('../../services/jwt-decoder');

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
const { DataTypes } = require('sequelize');
const sequelize = require('../../config/sequelize');
const Vantagem = require('../vantagem/vantagem.sequelize'); // Importando o modelo Vantagem
const Vantagem = require('../vantagem'); // Importando o modelo Vantagem

// Definição do modelo `Cupom`
const Cupom = sequelize.define('Cupom', {
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
// models/transacao.js
const { DataTypes } = require('sequelize');
const sequelize = require('../../config/sequelize'); // Certifique-se de que o caminho está correto
const Usuario = require('../usuario/usuario.sequelize'); // Importando o modelo Usuario
const Vantagem = require('../vantagem/vantagem.sequelize'); // Importando o modelo Vantagens
const Cupom = require('../cupom/cupom.sequelize');
const Usuario = require('../usuario'); // Importando o modelo Usuario
const Vantagem = require('../vantagem'); // Importando o modelo Vantagens
const Cupom = require('../cupom');

const Transacao = sequelize.define('Transacao', {
id: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// models/alunos.js
const { DataTypes } = require('sequelize');
const sequelize = require('../../../config/sequelize');
const Usuario = require('../usuario.sequelize'); // Importando o modelo Usuario
const Usuario = require('../index'); // Importando o modelo Usuario

const Aluno = sequelize.define('Aluno', {
id: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// models/empresas.js
const { DataTypes } = require('sequelize');
const sequelize = require('../../../config/sequelize');
const Usuario = require('../usuario.sequelize');
const Usuario = require('../index');

const Empresa = sequelize.define('Empresa', {
id: {
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// models/professores.js
const { DataTypes } = require('sequelize');
const sequelize = require('../../../config/sequelize');
const Usuario = require('../usuario.sequelize'); // Importando o modelo Usuario
const Usuario = require('../index'); // Importando o modelo Usuario

const Professor = sequelize.define('Professor', {
id: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// models/vantagens.js
const { DataTypes } = require('sequelize');
const sequelize = require('../../config/sequelize'); // Certifique-se de que o caminho está correto
const Empresa = require('../usuario/empresa/empresa.sequelize'); // Importando o modelo Empresas
const Empresa = require('../usuario/empresa'); // Importando o modelo Empresas

const Vantagem = sequelize.define('Vantagens', {
id: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const Usuario = require('../usuario/usuario.sequelize');
const Transacao = require('./transacao.sequelize');
const Cupom = require('../cupom/cupom.sequelize');
const Vantagem = require('../vantagem/vantagem.sequelize');
const Usuario = require('../../models/usuario');
const Transacao = require('../../models/transacao');
const Cupom = require('../../models/cupom');
const Vantagem = require('../../models/vantagem');


const sendEmail = require('../../services/email-sender');
Expand Down Expand Up @@ -133,10 +133,19 @@ async function findAll(idUsuario, tipo) {
});
}

async function findById(id){
return Transacao.findByPk(id, {
include: [{
model: Vantagem,
required: false
}]
});
}

module.exports = {
create,
findAll
findAll,
findById
}


Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const Aluno = require('./aluno.sequelize');
const Usuario = require('../usuario.sequelize');
const Aluno = require('../../models/aluno');
const Usuario = require('../../models/usuario');
const bcrypt = require('bcryptjs');
const { Error } = require('sequelize');

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const Empresa = require('./empresa.sequelize');
const Usuario = require('../usuario.sequelize');
const Empresa = require('../../models/empresa');
const Usuario = require('../../models/usuario');
const bcrypt = require('bcryptjs');
const { Error } = require('sequelize');

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const Usuario = require('./usuario.sequelize');
const Usuario = require('../../models/usuario');

async function findOwnUser(userId){

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const Professor = require('./professor.sequelize');
const Usuario = require('../usuario.sequelize');
const Professor = require('../../models/professor');
const Usuario = require('../../models/usuario');
const bcrypt = require('bcryptjs');

const { Error } = require('sequelize');
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const Empresa = require('../usuario/empresa/empresa.sequelize');
const Vantagem = require('./vantagem.sequelize');
const Empresa = require('../../models/empresa');
const Vantagem = require('../../models/vantagem');
const { Error } = require('sequelize');


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ const {
httpPut,
httpDelete

} = require('./aluno.controller');
} = require('../../controller/aluno');

const alunoRouter = express.Router();

Expand Down
4 changes: 1 addition & 3 deletions lab-03/code/app/routes/auth/auth.router.js → lab-03/code/app/routes/auth/index.js
100755 → 100644
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
const express = require('express');
const {

httpLogin

} = require('./auth');
} = require('../../controller/auth');

const alunoRouter = express.Router();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ const {
httpPut,
httpDelete

} = require('./empresa.controller');
} = require('../../controller/empresa');

const empresaRouter = express.Router();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ const {
httpGetById,
httpPut,
httpDelete
} = require('./professor.controller');
} = require('../../controller/professor');

const professorRouter = express.Router();

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
const express = require('express');
const { httpPost, httpGetAll } = require('./transacao.controller');
const { httpPost, httpGetAll, httpGetById } = require('../../controller/transacao');

const router = express.Router();

// Rota para criar uma nova transação
router.post('/', httpPost);
router.get('/', httpGetAll);
router.get('/:id', httpGetById);
router.post('/', httpPost);


module.exports = router;
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ const {

getOwnUserData

} = require('./usuario.controller');
} = require('../../controller/usuario');

const router = express.Router();

router.get('/me', getOwnUserData);
router.get('/', getOwnUserData);

module.exports = router;
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ const {
httpGetAll,
httpGetById

} = require('./vantagem.controller');
} = require('../../controller/vantagem');

const vantagemRouter = express.Router();

Expand Down
1 change: 1 addition & 0 deletions lab-03/code/frontend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
"preview": "vite preview"
},
"dependencies": {
"axios": "^1.7.9",
"frontend": "file:",
"react": "^18.3.1",
"react-dom": "^18.3.1",
Expand Down
21 changes: 6 additions & 15 deletions lab-03/code/frontend/src/components/NavBar.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@ import { Link } from 'react-router-dom';
import { useUserContext } from '../hooks/UserContext';
import { useNavigate } from 'react-router-dom';
import { FaSignOutAlt } from 'react-icons/fa'; // Importando o ícone de logout
import { getUser } from '../services/usuario';

function Navbar() {
const { userType, setUserId, setUserType, setToken, userId, token, mudar } = useUserContext();
const { userType, setUserId, setUserType, setToken, userId, mudar } = useUserContext();
const navigate = useNavigate();
const [userInfo, setUserInfo] = useState(null);

Expand All @@ -24,27 +25,17 @@ function Navbar() {
// Função para buscar as informações do usuário logado
const fetchUserInfo = async () => {
try {
const response = await fetch(`http://localhost:3000/user/me`, {
headers: {
Authorization: `Bearer ${token}`,
},
});

if (response.ok) {
const data = await response.json();
setUserInfo(data);
} else {
console.error('Erro ao buscar informações do usuário');
}
const data = await getUser();
setUserInfo(data);
} catch (error) {
console.error('Erro ao buscar informações do usuário:', error);
console.error(error);
}
};

if (userId) {
fetchUserInfo();
}
}, [userId, token, mudar]);
}, [userId, mudar]);

return (
<nav className="bg-blue-600 p-4 shadow-md">
Expand Down
31 changes: 9 additions & 22 deletions lab-03/code/frontend/src/pages/Alunos/AlunosList.jsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
import React, { useEffect, useState } from "react";
import { useUserContext } from "../../hooks/UserContext";
import { FaGift } from "react-icons/fa";
import { FaGift } from "react-icons/fa";
import { createTransacao } from "../../services/transacao";
import { getAlunos } from "../../services/aluno";

function AlunoList() {
const { userType, token, setMudar, mudar } = useUserContext();
Expand All @@ -13,11 +15,7 @@ function AlunoList() {

const fetchAlunos = async () => {
try {
const response = await fetch("http://localhost:3000/alunos");
if (!response.ok) {
throw new Error("Erro ao buscar alunos");
}
const data = await response.json();
const data = await getAlunos(token);
setAlunos(data);
} catch (error) {
console.error("Erro ao buscar alunos:", error);
Expand All @@ -38,24 +36,13 @@ function AlunoList() {
return;
}
try {
const response = await fetch("http://localhost:3000/transacao", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
tipo: "doacao",
receptorUserId: alunoSelecionado.usuario.id,
valor: parseInt(valorDoacao),
desc: justificativa,
}),
await createTransacao({
tipo: "doacao",
receptorUserId: alunoSelecionado.usuario.id,
valor: parseInt(valorDoacao),
desc: justificativa,
});

if (!response.ok) {
throw new Error("Erro ao fazer a doação");
}

setValorDoacao("");
setJustificativa(""); // Limpar o estado da justificativa
setShowModal(false);
Expand Down
Loading