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
6 changes: 6 additions & 0 deletions config/routes.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,10 @@ router.post('/exercises', exercisesController.store)
// Obtiene detalles del ejercicio
router.get('/exercises/:id', exercisesController.details)

// Actualiza el ejercicio
router.put('/exercises/:id', exercisesController.update)

// Elimina el ejercicio
router.delete('/exercises/:id', exercisesController.delete)

export default router
118 changes: 77 additions & 41 deletions controllers/ExercisesController.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,46 +2,82 @@
import db from '../config/database'

class ExercisesController {
static index(req, res){
var sql = "select * from exercise"
db.all(sql, (err, exercises) => {
if (err) {
res.status(500).json({'error': err.message});
return;
}
res.json(exercises)
});
}

static store(req, res){
const { title, description, img, leftColor, rightColor } = req.body
const SQL = 'INSERT INTO exercise (title, description, img, leftColor, rightColor) VALUES (?,?,?,?,?)'
const params = [title, description, img, leftColor, rightColor]
db.run(SQL, params, function (err) {
if (err){
res.status(500).json({'error': err.message})
return;
}
req.body.id = this.lastID
res.json({
'exercise': req.body
})
})
}

static details(req, res){
var sql = "select * from exercise where id = ?"

db.get(sql, req.params.id, (err, exercise) => {
if (err) {
res.status(500).json({'error': err.message});
return;
}
res.json({
exercise
})
});
}
static index(req, res){
var sql = "SELECT * FROM exercise";
db.all(sql, (err, exercises) => {
if (err) {
res.status(500).json({'error': err.message});
return;
}
res.json(exercises)
});
}

static store(req, res){
const { title, description, img, leftColor, rightColor } = req.body;
const SQL = 'INSERT INTO exercise (title, description, img, leftColor, rightColor) VALUES (?,?,?,?,?)';
const params = [title, description, img, leftColor, rightColor];

let a = db.run(SQL, params, function (err) {
if (err){
res.status(500).json({'error': err.message});
return;
}
res.req.body.id = this.lastID;
res.json({
'exercise': res.req.body
});
});
}

static details(req, res){
var sql = "SELECT * FROM exercise WHERE id = ?"

db.get(sql, req.params.id, (err, exercise) => {
if (err) {
res.status(500).json({'error': err.message});
return;
}
res.json({
exercise
});
});
}

static update(req, res){
const { title, description, img, leftColor, rightColor, id } = req.body;
const SQL = ` UPDATE exercise
SET title = ? ,
description = ? ,
img = ? ,
leftColor = ?,
rightColor = ?
WHERE id = ?`
const params = [title, description, img, leftColor, rightColor, id];
db.run(SQL, params, (err) => {
if (err){
res.status(500).json({'error': err.message});
return;
}
res.json({
'exercise': res.req.body
});
});
}

static delete(req, res){
const SQL = " DELETE FROM exercise WHERE id = ? "

db.run(SQL, req.params.id, function (err) {
if (err){
res.status(500).json({'error': err.message});
return;
}
res.json({
'msg': 'deleted'
});
});
}
}

export default ExercisesController
export default ExercisesController;
9 changes: 3 additions & 6 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,18 @@ import cors from 'cors'

const app = express()
const corsOptions = {
origin: '*'
origin: '*'
}

app.use(bodyParser.urlencoded({extended: false}))
app.use(bodyParser.json())

app.use('/api',cors(corsOptions), routes)


app.get('/', (req, res) => res.send('Welcome to FitnessAPI'))


const server = app.listen(process.env.PORT || 8000, () => {
console.log(`http://localhost:${server.address().port}`)
console.log(`http://localhost:${server.address().port}`)
})


export default app
export default app