Files
psp_api/src/modules/partners/consumers/accounts/accounts.controller.ts
T

58 lines
1.8 KiB
TypeScript

import { PartnerInfo } from '@/common/decorators/partnerInfo.decorator'
import { Body, Controller, Get, Param, Patch } from '@nestjs/common'
import { ApiTags } from '@nestjs/swagger'
import { AccountsService } from './accounts.service'
import { UpdatePartnerConsumerAccountDto } from './dto/account.dto'
import type {
AccountsServiceFindAllResponseDto,
AccountsServiceFindOneResponseDto,
AccountsServiceUpdateResponseDto,
} from './dto/accounts-response.dto'
@ApiTags('PartnerConsumerAccounts')
@Controller('partner/consumers/:consumerId/accounts')
export class AccountsController {
constructor(private readonly accountsService: AccountsService) {}
@Get()
async findAll(
@PartnerInfo('id') partnerId: string,
@Param('consumerId') consumerId: string,
): Promise<AccountsServiceFindAllResponseDto> {
return this.accountsService.findAll(partnerId, consumerId)
}
@Get(':id')
async findOne(
@PartnerInfo('id') partnerId: string,
@Param('consumerId') consumerId: string,
@Param('id') id: string,
): Promise<AccountsServiceFindOneResponseDto> {
return this.accountsService.findOne(partnerId, consumerId, id)
}
// @Post()
// async create(
// @PartnerInfo('id') partnerId: string,
// @Param('consumerId') consumerId: string,
// @Body() data: CreateConsumerAccountDto,
// ) {
// return this.accountsService.create(partnerId, consumerId, data)
// }
@Patch(':id')
async update(
@PartnerInfo('id') partnerId: string,
@Param('consumerId') consumerId: string,
@Param('id') id: string,
@Body() data: UpdatePartnerConsumerAccountDto,
): Promise<AccountsServiceUpdateResponseDto> {
return this.accountsService.update(partnerId, consumerId, id, data)
}
// @Delete(':id')
// async delete(@Param('id') id: string) {
// return this.accountsService.delete(id)
// }
}