const router = require('express').Router() const { Project, Task } = require('../db/models') module.exports = router /* CREATE */ router.post('/', async (req, res, next) => { try { const task = await Task.create(req.body) if (req.body.projectId) { const project = await Project.findOne({ where: { id: req.body.projectId }, }) await task.setProject(project.id) } res.json(task) } catch (err) { next(err) } }) /* READ */ router.get('/', async (req, res, next) => { try { const tasks = await Task.findAll() res.send(tasks) } catch (err) { next(err) } }) router.get('/:id', async (req, res, next) => { try { const task = await Task.findByPk(req.params.id) res.json(task) } catch (err) { next(err) } }) /* UPDATE */ router.put('/:id', async (req, res, next) => { try { const task = await Task.findByPk(req.params.id) await task.update(req.body) res.json(task) } catch (err) { next(err) } }) /* DELETE */ router.post('/:id/delete', async (req, res, next) => { try { const task = await Task.findByPk(req.params.id) task.destroy({ force: true }) res.json(task) } catch (err) { next(err) } })