BETTERZON-94: Adding API endpoint to deactivate price listings as a vendor manager (#48)

This commit is contained in:
Patrick
2021-05-16 13:11:22 +02:00
committed by GitHub
parent b185e4e5e3
commit 061d1a46e0
3 changed files with 69 additions and 13 deletions
+24 -1
View File
@@ -34,7 +34,6 @@ vendorsRouter.get('/', async (req: Request, res: Response) => {
// GET vendors/managed
vendorsRouter.get('/managed', async (req: Request, res: Response) => {
console.log('here');
try {
// Authenticate user
const user_ip = req.connection.remoteAddress ?? '';
@@ -86,3 +85,27 @@ vendorsRouter.get('/search/:term', async (req: Request, res: Response) => {
res.status(500).send(JSON.stringify({'message': 'Internal Server Error. Try again later.'}));
}
});
// PUT /manage/deactivatelisting
vendorsRouter.put('/manage/deactivatelisting', async (req: Request, res: Response) => {
try {
// Authenticate user
const user_ip = req.connection.remoteAddress ?? '';
const user = await UserService.checkSessionWithCookie(req.cookies.betterauth, user_ip);
// Get required parameters
const vendor_id = req.body.vendor_id;
const product_id = req.body.product_id;
const success = await VendorService.deactivateListing(user.user_id, vendor_id, product_id);
if(success) {
res.sendStatus(200);
} else {
res.sendStatus(500);
}
} catch (e) {
console.log('Error handling a request: ' + e.message);
res.status(500).send(JSON.stringify({'message': 'Internal Server Error. Try again later.'}));
}
});