32 lines
1.3 KiB
JavaScript
32 lines
1.3 KiB
JavaScript
const db = require('../db')
|
|
|
|
const SpecializationControllerInterface = require('./interfaces/specialization.controller.interface')
|
|
|
|
class SpecializationController extends SpecializationControllerInterface {
|
|
async createSpecialization(req, res) {
|
|
const {title} = req.body
|
|
const newSpecialization = await db.query('INSERT INTO specialization (title) VALUES ($1) RETURNING *', [title])
|
|
res.json(newSpecialization.rows[0])
|
|
}
|
|
async getSpecializations(req, res) {
|
|
const specializations = await db.query('SELECT * FROM specialization')
|
|
res.json(specializations.rows)
|
|
}
|
|
async getOneSpecialization(req, res) {
|
|
const id = req.params.id
|
|
const specializations = await db.query('SELECT * FROM specialization WHERE id=$1', [id])
|
|
res.json(specializations.rows[0])
|
|
}
|
|
async updateSpecialization(req, res) {
|
|
const {id, title} = req.body
|
|
const newSpecialization = await db.query('UPDATE specialization SET title=$1 WHERE id=$2 RETURNING *', [title, id])
|
|
res.json(newSpecialization.rows[0])
|
|
}
|
|
async deleteSpecialization(req, res) {
|
|
const id = req.params.id
|
|
const specializations = await db.query('DELETE FROM specialization WHERE id=$1', [id])
|
|
res.json(specializations.rows[0])
|
|
}
|
|
}
|
|
|
|
module.exports = new SpecializationController() |