Compare commits

..

No commits in common. "979bf24767e3378fc5be9baf1a25c5d1fac452cd" and "949416d2a3ffa40786c7745ed04419cb51b6a434" have entirely different histories.

View File

@ -74,7 +74,7 @@ const VALIDATION_MESSAGES = {
},
}
const createOrder = async (req, res) => {
router.post('/create', async (req, res, next) => {
const bodyErrors = []
const { customer } = req.body
@ -120,6 +120,7 @@ const createOrder = async (req, res) => {
throw new Error(bodyErrors.join(', '))
}
try {
const order = await OrderModel.create({
phone: customer.phone,
carNumber: car.number,
@ -134,23 +135,31 @@ const createOrder = async (req, res) => {
})
res.status(200).send({ success: true, body: order })
}
const getOrder = async (req, res) => {
} catch (error) {
next(error)
}
})
router.get('/:id', async (req, res, next) => {
const { id } = req.params
if (!mongoose.Types.ObjectId.isValid(id)) {
throw new Error(VALIDATION_MESSAGES.orderId.invalid)
}
try {
const order = await OrderModel.findById(id)
if (!order) {
throw new Error(VALIDATION_MESSAGES.order.notFound)
}
res.status(200).send({ success: true, body: order })
}
} catch (error) {
next(error)
}
})
const updateOrder = async (req, res) => {
router.patch('/:id', async (req, res, next) => {
const { id } = req.params
if (!mongoose.Types.ObjectId.isValid(id)) {
throw new Error(VALIDATION_MESSAGES.orderId.invalid)
@ -170,10 +179,14 @@ const updateOrder = async (req, res) => {
if (!mongoose.Types.ObjectId.isValid(masterId)) {
bodyErrors.push(VALIDATION_MESSAGES.masterId.invalid)
} else {
try {
const master = await MasterModel.findById(masterId)
if (!master) {
bodyErrors.push(VALIDATION_MESSAGES.master.notFound)
}
} catch (error) {
next(error)
}
}
}
@ -188,6 +201,7 @@ const updateOrder = async (req, res) => {
throw new Error(bodyErrors.join(', '))
}
try {
const updateData = {}
if (status) {
updateData.status = status
@ -210,14 +224,18 @@ const updateOrder = async (req, res) => {
}
res.status(200).send({ success: true, body: order })
}
} catch (error) {
next(error)
}
})
const deleteOrder = async (req, res) => {
router.delete('/:id', async (req, res, next) => {
const { id } = req.params
if (!mongoose.Types.ObjectId.isValid(id)) {
throw new Error(VALIDATION_MESSAGES.orderId.invalid)
}
try {
const order = await OrderModel.findByIdAndDelete(id, {
new: true,
})
@ -225,11 +243,9 @@ const deleteOrder = async (req, res) => {
throw new Error(VALIDATION_MESSAGES.order.notFound)
}
res.status(200).send({ success: true, body: order })
}
router.post('/create', createOrder)
router.get('/:id', getOrder)
router.patch('/:id', updateOrder)
router.delete('/:id', deleteOrder)
} catch (error) {
next(error)
}
})
module.exports = router