Skip to content

Commit 48aa8ee

Browse files
committed
eployees back
1 parent 78ee8f7 commit 48aa8ee

File tree

2 files changed

+46
-0
lines changed

2 files changed

+46
-0
lines changed

importer-db-api/src/app.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ const semestersRouter = require('./routes/semesters')
1212
const kurkiRouter = require('./routes/kurki')
1313
const labtoolRouter = require('./routes/labtool')
1414
const kliksutinRouter = require('./routes/kliksutin')
15+
const employeesRouter = require('./routes/employees')
1516
const suotarRouter = require('./routes/suotar')
1617
const gradesRouter = require('./routes/grades')
1718
const archeologyRouter = require('./routes/archeology')
@@ -54,6 +55,7 @@ app.use('/semesters', semestersRouter)
5455
app.use('/kurki', kurkiRouter)
5556
app.use('/labtool', labtoolRouter)
5657
app.use('/kliksutin', kliksutinRouter)
58+
app.use('/employees', employeesRouter)
5759
app.use('/suotar', suotarRouter)
5860
app.use('/grades', gradesRouter)
5961
app.use('/archeology', archeologyRouter)
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
const express = require('express')
2+
3+
const models = require('../models')
4+
const { NotFoundError } = require('../errors')
5+
const logger = require('../utils/logger')
6+
7+
const router = express.Router()
8+
9+
/**
10+
* Person object by employee number
11+
*/
12+
router.get('/:id', async (req, res) => {
13+
try {
14+
const staffId = req.params.id
15+
if (!staffId) return res.send(null)
16+
const employee = await models.Person.findAll({
17+
where: {
18+
employeeNumber: staffId
19+
}
20+
})
21+
if (!employee) throw new NotFoundError(`Employee with id ${staffId} does not exist`)
22+
23+
return res.send(employee)
24+
} catch (e) {
25+
logger.error(e)
26+
res.status(500).json(e.toString())
27+
}
28+
})
29+
30+
/**
31+
* Is the person even an employee?
32+
* id is the sisuId.
33+
*/
34+
router.get('/:id/is_employee', async (req, res) => {
35+
const { id } = req.params
36+
37+
const employee = await models.Person.findByPk(id, {
38+
attributes: ['employeeNumber']
39+
})
40+
41+
res.send(!!employee.employeeNumber)
42+
})
43+
44+
module.exports = router

0 commit comments

Comments
 (0)