Skip to content
Snippets Groups Projects

feat: dashboard tim tesis endpoint

Merged Rinaldy Adin requested to merge story/dashboard-tim-tesis into development
Compare and
4 files
+ 261
20
Preferences
Compare changes
Files
4
import { Controller, Get, Query, Req, UseGuards } from "@nestjs/common";
import { DashboardService } from "./dashboard.service";
import { CustomAuthGuard } from "src/middlewares/custom-auth.guard";
import { RolesGuard } from "src/middlewares/roles.guard";
import {
ApiBearerAuth,
ApiCookieAuth,
ApiOkResponse,
ApiTags,
} from "@nestjs/swagger";
import { Request } from "express";
import { AuthDto } from "src/auth/auth.dto";
import { RoleEnum } from "src/entities/pengguna.entity";
import { CustomAuthGuard } from "src/middlewares/custom-auth.guard";
import { Roles } from "src/middlewares/roles.decorator";
import { AuthDto } from "src/auth/auth.dto";
import { Request } from "express";
import { RolesGuard } from "src/middlewares/roles.guard";
import {
DashboardDto,
GetDashboardDosbimQueryDto,
GetDashboardTimTesisReqQueryDto,
GetDashboardTimTesisRespDto,
JalurStatisticDto,
} from "./dashboard.dto";
import {
ApiBearerAuth,
ApiCookieAuth,
ApiOkResponse,
ApiTags,
} from "@nestjs/swagger";
import { DashboardService } from "./dashboard.service";
@ApiTags("Dashboard")
@ApiCookieAuth()
@@ -47,4 +49,14 @@ export class DashboardController {
(request.user as AuthDto).id,
);
}
@UseGuards(CustomAuthGuard, RolesGuard)
@Roles(RoleEnum.S2_TIM_TESIS, RoleEnum.ADMIN)
@ApiOkResponse({ type: GetDashboardTimTesisRespDto })
@Get("/tim-tesis")
async getDashboardTimTesis(
@Query() query: GetDashboardTimTesisReqQueryDto,
): Promise<GetDashboardTimTesisRespDto> {
return this.dashboardService.getDashboardTimTesis(query);
}
}