withdraw.admin.controller.ts 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. import { IPaginationOptions } from 'nestjs-typeorm-paginate'
  2. import { Body, Controller, Post, Req } from '@nestjs/common'
  3. import { WithdrawApplyDto } from './dto/withdraw-apply.dto'
  4. import { WithdrawService } from './withdraw.service'
  5. import { ApiBearerAuth, ApiTags } from '@nestjs/swagger'
  6. import { HasRoles } from '../auth/roles.decorator'
  7. import { Role } from '../model/role.enum'
  8. import { PageRequest } from '../common/dto/page-request'
  9. import { Withdraw } from './entities/withdraw.entity'
  10. @ApiTags('withdraw.admin')
  11. @ApiBearerAuth()
  12. @HasRoles(Role.Admin)
  13. @Controller('/admin/withdraw')
  14. export class WithdrawAdminController {
  15. constructor(private readonly withdrawService: WithdrawService) {}
  16. @Post()
  17. async list(@Body() page: PageRequest<Withdraw>) {
  18. return await this.withdrawService.findAll(page)
  19. }
  20. @Post('/finish')
  21. async apply(@Body() { id }) {
  22. return await this.withdrawService.finishWithdraw(id)
  23. }
  24. @Post('/reject')
  25. async reject(@Body() { id }) {
  26. return await this.withdrawService.rejectWithdraw(id)
  27. }
  28. }