lecoffre-back/src/app/api/idnot/OfficeController.ts

38 lines
1.1 KiB
TypeScript

import { Response, Request } from "express";
import { Controller, Get } from "@ControllerPattern/index";
import ApiController from "@Common/system/controller-pattern/ApiController";
import { Service } from "typedi";
import IdNotService from "@Services/common/IdNotService/IdNotService";
import userHandler from "@App/middlewares/OfficeMembershipHandlers/UserHandler";
import authHandler from "@App/middlewares/AuthHandler";
@Controller()
@Service()
export default class UserController extends ApiController {
constructor (private idNotService: IdNotService) {
super();
}
@Get("/api/v1/idnot/office/:uid/office-memberships", [authHandler, userHandler])
protected async getOfficeMemberships(req: Request, response: Response) {
try {
const uid = req.params["uid"];
if (!uid) {
this.httpBadRequest(response, "uid is required");
return;
}
const officeMemberships = await this.idNotService.getOfficeMemberships(uid);
this.httpSuccess(response, officeMemberships);
} catch (error) {
console.log(error);
this.httpInternalError(response);
return;
}
}
}