Make usage count optional in GET /tags

This commit is contained in:
Iván Ovejero 2021-04-12 15:07:06 +02:00
parent fded7b9ce7
commit 5047c10ee3

View file

@ -760,8 +760,11 @@ class App {
};
}));
// Retrieves all tags
this.app.get(`/${this.restEndpoint}/tags`, ResponseHelper.send(async (req: express.Request, res: express.Response): Promise<Array<{ id: number, name: string, usageCount: number }>> => {
// Retrieves all tags, with or without usage count
this.app.get(`/${this.restEndpoint}/tags`, ResponseHelper.send(async (req: express.Request, res: express.Response): Promise<Array<{ id: number, name: string, usageCount?: number }>> => {
const withUsageCount = req.query.withUsageCount === 'true';
if (withUsageCount) {
return await getConnection().createQueryBuilder()
.select('tag_entity.id', 'id')
.addSelect('tag_entity.name', 'name')
@ -771,6 +774,14 @@ class App {
.leftJoin('workflow_entity', 'workflow_entity', 'workflows_tags.workflowId = workflow_entity.id')
.groupBy('tag_entity.id')
.getRawMany();
}
return await getConnection().createQueryBuilder()
.select('tag_entity.id', 'id')
.addSelect('tag_entity.name', 'name')
.from('tag_entity', 'tag_entity')
.groupBy('tag_entity.id')
.getRawMany();
}));
// Creates a tag