| 12345678910111213141516171819202122232425262728293031 |
- import { PhoneLoginDto } from './dto/login.dto'
- import { Body, Controller, Get, Param, Post } from '@nestjs/common'
- import { AuthService } from './auth.service'
- import { ApiTags } from '@nestjs/swagger'
- import { Public } from './public.decorator'
- import { HasRoles } from './roles.decorator'
- import { Role } from '../model/role.enum'
- @ApiTags('auth')
- @Controller('/auth')
- export class AuthController {
- constructor(private readonly authService: AuthService) {}
- @Public()
- @Post('/phoneLogin')
- async phoneLogin(@Body() loginDto: PhoneLoginDto) {
- return await this.authService.loginByPhone(loginDto)
- }
- @Public()
- @Post('/admin/login')
- async login(@Body() { username, password }) {
- return await this.authService.loginAdmin(username, password)
- }
- @Get('/admin/user/:userId/token')
- @HasRoles(Role.Admin)
- async getToken(@Param('userId') userId: string) {
- return await this.authService.getToken(Number(userId))
- }
- }
|