todo-app: patch & delete tidi item
This commit is contained in:
parent
3d935af6f1
commit
04bce4b90f
@ -63,5 +63,38 @@ router.post('/item', requiredValidate('todoId', 'title'), async (req, res) => {
|
|||||||
res.send(getAnswer(null, item))
|
res.send(getAnswer(null, item))
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// closed = new Date().toISOString()
|
||||||
|
router.patch('/item/:itemId', async (req, res) => {
|
||||||
|
const { itemId } = req.params
|
||||||
|
const { title, done } = req.body
|
||||||
|
|
||||||
|
const item = await ItemModel.findById(itemId)
|
||||||
|
|
||||||
|
if (!item) {
|
||||||
|
throw new Error('item not found')
|
||||||
|
}
|
||||||
|
|
||||||
|
if (title) {
|
||||||
|
item.title = title
|
||||||
|
}
|
||||||
|
|
||||||
|
if (done) {
|
||||||
|
item.done = done
|
||||||
|
item.closed = done ? new Date().toISOString() : null
|
||||||
|
}
|
||||||
|
|
||||||
|
await item.save()
|
||||||
|
|
||||||
|
res.send(getAnswer(null, item))
|
||||||
|
})
|
||||||
|
|
||||||
|
router.delete('/item/:itemId', async (req, res) => {
|
||||||
|
const { itemId } = req.params
|
||||||
|
|
||||||
|
await ItemModel.findByIdAndDelete(itemId)
|
||||||
|
|
||||||
|
res.send(getAnswer(null, { ok: true }))
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
module.exports = router
|
module.exports = router
|
||||||
|
Loading…
Reference in New Issue
Block a user