added API support for garthering member and rank data
This commit is contained in:
@@ -13,10 +13,13 @@ const port = 3000;
|
|||||||
|
|
||||||
// Mount route modules
|
// Mount route modules
|
||||||
const applicationsRouter = require('./routes/applications');
|
const applicationsRouter = require('./routes/applications');
|
||||||
const ranksRouter = require('./routes/ranks');
|
const { userRanks, ranks} = require('./routes/ranks');
|
||||||
|
const users = require('./routes/users');
|
||||||
|
|
||||||
app.use('/application', applicationsRouter);
|
app.use('/application', applicationsRouter);
|
||||||
app.use('/ranks', ranksRouter);
|
app.use('/ranks', ranks);
|
||||||
|
app.use('/userRoles', userRanks);
|
||||||
|
app.use('/users', users);
|
||||||
|
|
||||||
app.listen(port, () => {
|
app.listen(port, () => {
|
||||||
console.log(`Example app listening on port ${port} `)
|
console.log(`Example app listening on port ${port} `)
|
||||||
|
|||||||
@@ -1,10 +1,30 @@
|
|||||||
const express = require('express');
|
const express = require('express');
|
||||||
const router = express.Router();
|
const r = express.Router();
|
||||||
|
const ur = express.Router();
|
||||||
|
|
||||||
|
const pool = require('../db');
|
||||||
|
|
||||||
// Placeholder router for rank-related routes.
|
// Placeholder router for rank-related routes.
|
||||||
// Implement rank endpoints here, for example:
|
// Implement rank endpoints here, for example:
|
||||||
// router.get('/', async (req, res) => { /* ... */ });
|
// router.get('/', async (req, res) => { /* ... */ });
|
||||||
// router.post('/change', async (req, res) => { /* ... */ });
|
// router.post('/change', async (req, res) => { /* ... */ });
|
||||||
|
|
||||||
module.exports = router;
|
//insert a new latest role for a user
|
||||||
|
ur.post('/', async (req, res) => {
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
r.get('/', async (req, res) => {
|
||||||
|
try {
|
||||||
|
const result = await pool.query('SELECT id, name, short_name, sort_id FROM ranks;');
|
||||||
|
res.json(result);
|
||||||
|
} catch (err) {
|
||||||
|
console.error(err);
|
||||||
|
res.status(500).json({ error: 'Internal server error' });
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
module.exports.ranks = r;
|
||||||
|
module.exports.userRanks = ur;
|
||||||
|
|
||||||
|
// TODO, implement get all ranks route with SQL stirng SELECT id, name, short_name, category, sort_id FROM ranks;
|
||||||
24
api/routes/users.js
Normal file
24
api/routes/users.js
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
const express = require('express');
|
||||||
|
const router = express.Router();
|
||||||
|
|
||||||
|
// DB pool (same as used in api/index.js)
|
||||||
|
const pool = require('../db');
|
||||||
|
|
||||||
|
//create a new user?
|
||||||
|
router.post('/', async (req, res) => {
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
//get all users
|
||||||
|
router.get('/', async (req, res) => {
|
||||||
|
try {
|
||||||
|
const result = await pool.query('SELECT * FROM view_member_rank_status_all;');
|
||||||
|
return res.status(200).json(result);
|
||||||
|
} catch (err) {
|
||||||
|
console.error('Error fetching users:', err);
|
||||||
|
return res.status(500).json({ error: 'Failed to fetch users' });
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
module.exports = router;
|
||||||
Reference in New Issue
Block a user