This commit is contained in:
@@ -4,6 +4,7 @@ import { FileInterceptor, type File } from '@nest-lab/fastify-multer';
|
||||
import { AuthGuard } from 'src/modules/auth/guards/auth.guard';
|
||||
import { UserService } from '../providers/user.service';
|
||||
import { UpdateUserDto } from '../dto/update-user.dto';
|
||||
import { CreateUserDto } from '../dto/create-user.dto';
|
||||
import { CreateUserAddressDto } from '../dto/create-user-address.dto';
|
||||
import { UpdateUserAddressDto } from '../dto/update-user-address.dto';
|
||||
import { UserId } from 'src/common/decorators/user-id.decorator';
|
||||
@@ -184,6 +185,36 @@ export class UsersController {
|
||||
return this.userService.findPaginated(restId, query);
|
||||
}
|
||||
|
||||
@UseGuards(AdminAuthGuard)
|
||||
@ApiBearerAuth()
|
||||
@Permissions(Permission.MANAGE_USERS)
|
||||
@ApiHeader(API_HEADER_SLUG)
|
||||
@ApiOperation({ summary: 'Create a new user for the restaurant' })
|
||||
@ApiBody({ type: CreateUserDto })
|
||||
@Post('admin/users')
|
||||
async createUser(
|
||||
@RestId() restId: string,
|
||||
@Body(new ValidationPipe({ transform: true, whitelist: true })) dto: CreateUserDto,
|
||||
) {
|
||||
return this.userService.createUserForRestaurant(restId, dto);
|
||||
}
|
||||
|
||||
@UseGuards(AdminAuthGuard)
|
||||
@ApiBearerAuth()
|
||||
@Permissions(Permission.MANAGE_USERS)
|
||||
@ApiHeader(API_HEADER_SLUG)
|
||||
@ApiOperation({ summary: 'Update a user (admin)' })
|
||||
@ApiParam({ name: 'userId', description: 'User ID' })
|
||||
@ApiBody({ type: UpdateUserDto })
|
||||
@Patch('admin/users/:userId')
|
||||
async adminUpdateUser(
|
||||
@Param('userId') userId: string,
|
||||
@RestId() restId: string,
|
||||
@Body(new ValidationPipe({ transform: true, whitelist: true })) dto: UpdateUserDto,
|
||||
) {
|
||||
return this.userService.adminUpdateUser(userId, restId, dto);
|
||||
}
|
||||
|
||||
@UseGuards(AdminAuthGuard)
|
||||
@ApiBearerAuth()
|
||||
@Permissions(Permission.MANAGE_USERS)
|
||||
|
||||
Reference in New Issue
Block a user