/** * Update or invalidate bodyshop cache * @param req * @param res * @returns {Promise} */ const updateBodyshopCache = async (req, res) => { const { sessionUtils: { updateOrInvalidateBodyshopFromRedis }, logger } = req; const { event } = req.body; const { new: newData } = event.data; try { if (newData && newData.id) { // Update cache with the full new data object await updateOrInvalidateBodyshopFromRedis(newData.id, newData); logger.logger.debug("Bodyshop cache updated successfully."); } else { // Invalidate cache if no valid data provided await updateOrInvalidateBodyshopFromRedis(newData.id); logger.logger.debug("Bodyshop cache invalidated successfully."); } res.status(200).json({ success: true }); } catch (error) { logger.log("bodyshop-cache-update-error", "ERROR", "api", "redis", { message: error?.message, stack: error?.stack }); res.status(500).json({ success: false, error: error.message }); } }; module.exports = updateBodyshopCache;