todo-app: patch & delete tidi item

This commit is contained in:
Primakov Alexandr Alexandrovich 2025-01-19 22:47:47 +03:00
parent 3d935af6f1
commit 04bce4b90f

View File

@ -63,5 +63,38 @@ router.post('/item', requiredValidate('todoId', 'title'), async (req, res) => {
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