1- import { Body , Controller , Delete , Get , HttpCode , Param , Post , UseGuards } from "@nestjs/common" ;
1+ import { Body , Controller , Delete , Get , HttpCode , HttpStatus , Param , Post , UseGuards } from "@nestjs/common" ;
22import { UserEntity } from "./models/entities/user.entity" ;
33import { LoginPayload } from "./models/payloads/login.payload" ;
44import { User } from "./decorators/user.decorator" ;
55import { LoginDto } from "./models/dto/login.dto" ;
66import { ApiBearerAuth } from "@nestjs/swagger" ;
77import { UsersService } from "./users.service" ;
88import { AuthGuard } from "@nestjs/passport" ;
9- import { HttpStatusCode } from "axios" ;
109import { EpisodeProgressionDto } from "./models/dto/episode-progression.dto" ;
1110
1211@Controller ( "user" )
@@ -64,7 +63,7 @@ export class UsersController{
6463 }
6564
6665 @Delete ( "progression" )
67- @HttpCode ( HttpStatusCode . NoContent )
66+ @HttpCode ( HttpStatus . NO_CONTENT )
6867 @UseGuards ( AuthGuard ( "jwt" ) )
6968 @ApiBearerAuth ( )
7069 async deleteAllProgressions ( @User ( ) user : UserEntity ) : Promise < void > {
@@ -84,4 +83,27 @@ export class UsersController{
8483 async deleteEpisodeProgression ( @User ( ) user : UserEntity , @Param ( "episode_id" ) episodeId : number ) : Promise < void > {
8584 await this . usersService . deleteEpisodeProgression ( user , episodeId ) ;
8685 }
86+
87+ @Get ( "likes/webtoons" )
88+ @UseGuards ( AuthGuard ( "jwt" ) )
89+ @ApiBearerAuth ( )
90+ async getLikedWebtoons ( @User ( ) user : UserEntity ) : Promise < number [ ] > {
91+ return await this . usersService . getLikedWebtoons ( user ) ;
92+ }
93+
94+ @Post ( "likes/webtoon/:webtoon_id" )
95+ @HttpCode ( HttpStatus . NO_CONTENT )
96+ @UseGuards ( AuthGuard ( "jwt" ) )
97+ @ApiBearerAuth ( )
98+ async likeWebtoon ( @User ( ) user : UserEntity , @Param ( "webtoon_id" ) webtoonId : number ) : Promise < void > {
99+ await this . usersService . likeWebtoon ( user , webtoonId ) ;
100+ }
101+
102+ @Delete ( "likes/webtoon/:webtoon_id" )
103+ @HttpCode ( HttpStatus . NO_CONTENT )
104+ @UseGuards ( AuthGuard ( "jwt" ) )
105+ @ApiBearerAuth ( )
106+ async unlikeWebtoon ( @User ( ) user : UserEntity , @Param ( "webtoon_id" ) webtoonId : number ) : Promise < void > {
107+ await this . usersService . unlikeWebtoon ( user , webtoonId ) ;
108+ }
87109}
0 commit comments