/var/www/verywell.gr/server/delivery/api/controllers/tableReserv
Edit: /var/www/verywell.gr/server/delivery/api/controllers/tableReserv/removeOrder.js (1360B)
const { NotFound, BadRequest } = require('../../responseModels/errors')
const { isSet, isEmpty } = require('../../utils/validator.util')
const checkPermission = require('../../utils/checkPermission.util')
module.exports = function ({ db, logger }) {
return async (req, res, next) => {
logger.child({ path: req.path, request: req.body }).info()
let t1 = performance.now()
try {
const { uid, orderUid } = req.body
if (!isSet(uid) || isEmpty(uid))
throw new BadRequest({ code: 1033, lang: req.user?.languageCode })
if (!isSet(orderUid) || isEmpty(orderUid))
throw new BadRequest({ code: 1036, lang: req.user?.languageCode })
const result = await Promise.all([
db.tableReserv.findOne({ where: { uid: uid } }),
db.order.findOne({ where: { uid: orderUid } })
])
if (!result) throw new NotFound({ lang: req.user?.languageCode })
if (!result[0]) throw new NotFound({ code: 1034, lang: req.user?.languageCode })
if (!result[1]) throw new NotFound({ code: 1040, lang: req.user?.languageCode })
const tableReserv = result[0]
const order = result[1]
tableReserv.removeOrder(order)
await tableReserv.save()
await SERVICES.ReservService.EditReserv(tableReserv)
const time = performance.now() - t1
return res.status(200).json({ status: 'success', uid, time })
} catch (err) {
next(err)
}
}
}