swd-be/routes/v1/schuljahr.js

52 lines
1.4 KiB
JavaScript

const express = require('express');
const router = express.Router();
var cors = require('cors');
const randToken = require('rand-token');
const DEBUG = true;
router.param('schuljahrId', function(req, res, next, id) {
req.schuljahrId = id;
let query = " select * from schueler where id in (SELECT schuelerid from schueler_schuljahr where schuljahrid in (select id from schuljahr where name = $1)); ";
if(DEBUG) console.log(query);
if(DEBUG) console.log(req.schuljahrId);
req.db.query(query, [req.schuljahrId], (err, rs) => {
if (err) {
return next(err)
}
req.schuljahr = rs.rows;
next();
})
});
/* GET recepies listing. */
router.get('/', function(req, res, next) {
let query = " select schuljahr.id as id, schuljahr.name, count(*) as schueler from schueler"+
" join schueler_schuljahr on schueler_schuljahr.schuelerid = schueler.id"+
" join schuljahr on schueler_schuljahr.schuljahrid = schuljahr.id"+
" group by schuljahr.id , schuljahr.name";
if(DEBUG) console.log(query);
req.db.query(query, (err, rs) => {
if (err){
console.log(query);
next(err);
} else {
let result = {};
result['schuljahr'] = rs.rows;
console.log(result);
res.status(200).json(result);
}
});
});
/* Methods with id */
router.get('/:schuljahrId', function(req, res, next) {
res.status(200).json(req.schuljahr);
});
module.exports = router;