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> {
|
||||
/*
|
||||
#swagger.tags = ['Queue Monitoring']
|
||||
|
||||
Reference in New Issue
Block a user