add new: queue monitoring get by slug
This commit is contained in:
@ -73,6 +73,33 @@ export class QueueMonitoringController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static async detailBySlug(req: Request, res: Response, next: NextFunction): Promise<void | Response> {
|
||||||
|
/*
|
||||||
|
#swagger.tags = ['Queue Monitoring']
|
||||||
|
#swagger.security = [{ "bearerAuth": [] }]
|
||||||
|
#swagger.parameters['slug'] = { in: 'path', type: 'string' }
|
||||||
|
*/
|
||||||
|
try {
|
||||||
|
const schema = Joi.object().keys({
|
||||||
|
slug: Joi.string().required().label("Queue Monitoring Slug"),
|
||||||
|
});
|
||||||
|
|
||||||
|
const param: any = await schema.validateAsync(req.params);
|
||||||
|
|
||||||
|
const queueMonitoring = await QueueMonitoringModel.list({ "QueueMonitoring.slug": param.slug }).then((q) =>
|
||||||
|
q.leftJoinAndSelect("QueueMonitoring.rooms", "rooms").leftJoinAndSelect("rooms.department", "department").getOne()
|
||||||
|
);
|
||||||
|
|
||||||
|
if (!queueMonitoring) throw { message: "Queue Monitoring Not Found" };
|
||||||
|
|
||||||
|
return ReturnHelper.successResponseAny(res, 200, Language.lang.success_view, queueMonitoring);
|
||||||
|
} catch (e: unknown) {
|
||||||
|
log.error(e);
|
||||||
|
const err = e as Error;
|
||||||
|
return ReturnHelper.errorResponse(res, 400, 401, Language.lang.failed_not_found, err.message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static async create(req: Request, res: Response, next: NextFunction): Promise<void | Response> {
|
static async create(req: Request, res: Response, next: NextFunction): Promise<void | Response> {
|
||||||
/*
|
/*
|
||||||
#swagger.tags = ['Queue Monitoring']
|
#swagger.tags = ['Queue Monitoring']
|
||||||
|
|||||||
@ -180,6 +180,7 @@ export class RoutePrivate {
|
|||||||
app.get('/api/queue-monitoring/list', QueueMonitoringController.list)
|
app.get('/api/queue-monitoring/list', QueueMonitoringController.list)
|
||||||
app.post('/api/queue-monitoring/create', QueueMonitoringController.create)
|
app.post('/api/queue-monitoring/create', QueueMonitoringController.create)
|
||||||
app.get('/api/queue-monitoring/detail/:id', QueueMonitoringController.detail)
|
app.get('/api/queue-monitoring/detail/:id', QueueMonitoringController.detail)
|
||||||
|
app.get('/api/queue-monitoring/:slug', QueueMonitoringController.detailBySlug)
|
||||||
app.put('/api/queue-monitoring/update/:id', QueueMonitoringController.update)
|
app.put('/api/queue-monitoring/update/:id', QueueMonitoringController.update)
|
||||||
app.delete('/api/queue-monitoring/delete/:id/:hard', QueueMonitoringController.delete)
|
app.delete('/api/queue-monitoring/delete/:id/:hard', QueueMonitoringController.delete)
|
||||||
app.put('/api/queue-monitoring/restore/:id', QueueMonitoringController.restore)
|
app.put('/api/queue-monitoring/restore/:id', QueueMonitoringController.restore)
|
||||||
|
|||||||
Reference in New Issue
Block a user