add : reseller
This commit is contained in:
@@ -1,29 +1,60 @@
|
||||
import { Controller, Get, Post, Body } from '@nestjs/common';
|
||||
import { Controller, Get, Post, Body, Delete } from '@nestjs/common';
|
||||
import { ResellerService } from './reseller.service';
|
||||
import { ApiOperation } from '@nestjs/swagger';
|
||||
import { PermissionsDec } from '../../common/decorators/permission.decorator';
|
||||
import { PermissionEnum } from '../users/enums/permission.enum';
|
||||
import { CreateResellerDto } from './dto/create-reseller.dto';
|
||||
|
||||
import { AuthGuards } from '../../common/decorators/auth-guard.decorator';
|
||||
import { AdminRoute } from '../../common/decorators/admin.decorator';
|
||||
import { ResellerRoute } from '../../common/decorators/reseller.decorator';
|
||||
import { UserDec } from '../../common/decorators/user.decorator';
|
||||
import { CreateResellerAgentDto } from './dto/create-reseller-agent.dto';
|
||||
|
||||
@Controller('reseller')
|
||||
@AuthGuards()
|
||||
export class ResellerController {
|
||||
constructor(
|
||||
private readonly resellerService: ResellerService,
|
||||
|
||||
) { }
|
||||
|
||||
|
||||
@ApiOperation({ summary: "create Reseller ==> admin route" })
|
||||
@AdminRoute()
|
||||
@PermissionsDec(PermissionEnum.RESELLER)
|
||||
@Post("reseller")
|
||||
@Post()
|
||||
createReseller(@Body() dto: CreateResellerDto) {
|
||||
return this.resellerService.create(dto)
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "get Resellers ==> admin route" })
|
||||
@AdminRoute()
|
||||
@PermissionsDec(PermissionEnum.RESELLER)
|
||||
@Get("reseller")
|
||||
@Get()
|
||||
getResellers() {
|
||||
return this.resellerService.findAll()
|
||||
}
|
||||
|
||||
// =========== Reseller-->Agent =============
|
||||
|
||||
@ApiOperation({ summary: "get Reseller agents ==> reseller route" })
|
||||
@ResellerRoute()
|
||||
@Get('agents')
|
||||
getResellerAgents(@UserDec("id") userId: string) {
|
||||
return this.resellerService.finResellerAgents(userId)
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "Create Reseller agent ==> reseller route" })
|
||||
@ResellerRoute()
|
||||
@Post('agents')
|
||||
createResellerAgent(@UserDec("id") userId: string, @Body() dto: CreateResellerAgentDto) {
|
||||
return this.resellerService.createResellerAgent(userId, dto.userId)
|
||||
}
|
||||
|
||||
@ApiOperation({ summary: "Remove Reseller agent ==> reseller route" })
|
||||
@ResellerRoute()
|
||||
@Delete('agents')
|
||||
deleteResellerAgent(@UserDec("id") userId: string, @Body() dto: CreateResellerAgentDto) {
|
||||
return this.resellerService.removeResellerAgent(userId, dto.userId)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user