src/partnership/partnership.controller.ts
partnership
Methods |
deletePartNership | ||||||
deletePartNership(params: IsParameterWithIdOfTable)
|
||||||
Decorators :
@Delete(':id')
|
||||||
Defined in src/partnership/partnership.controller.ts:67
|
||||||
Parameters :
Returns :
any
|
getPartnership |
getPartnership()
|
Decorators :
@Public()
|
Defined in src/partnership/partnership.controller.ts:18
|
Returns :
any
|
getPartnershipByIdOrSlug | ||||
getPartnershipByIdOrSlug(params)
|
||||
Decorators :
@Public()
|
||||
Defined in src/partnership/partnership.controller.ts:25
|
||||
Parameters :
Returns :
any
|
Async getThreeRandomsPartnership |
getThreeRandomsPartnership()
|
Decorators :
@Public()
|
Defined in src/partnership/partnership.controller.ts:35
|
Returns :
Promise<any>
|
savePartnership | ||||||
savePartnership(modelPartnership: PartnershipValidation)
|
||||||
Decorators :
@UseInterceptors(undefined)
|
||||||
Defined in src/partnership/partnership.controller.ts:45
|
||||||
Parameters :
Returns :
any
|
updatePartnership | |||||||||
updatePartnership(modelPartnership: PartnershipValidation, params)
|
|||||||||
Decorators :
@UseInterceptors(undefined)
|
|||||||||
Defined in src/partnership/partnership.controller.ts:52
|
|||||||||
Parameters :
Returns :
any
|
import { Body, Controller, Get, Param, Post, Put, UseInterceptors,Delete } from '@nestjs/common';
import { PartnershipService } from './partnership.service';
import { FileInterceptor } from '@nestjs/platform-express';
import { PartnershipValidation } from 'src/database/validation/partnership-validation';
import { IsParameterWithIdOfTable } from 'src/database/validation/parameter-validation';
import { Public } from 'src/auth/auth.controller';
import { generateRandomnumber } from 'src/utils/utils';
import { SkipThrottle } from '@nestjs/throttler';
@SkipThrottle()
@Controller('partnership')
export class PartnershipController {
constructor(private partnershipService:PartnershipService){}
//Exponer punto para el listado de todas los Partnerships
@Public()
@Get()
getPartnership():any{
return this.partnershipService.findAllPartnerships();
}
//Exponer punto para obtener un registro por su id o slug de la tabla Partnership
@Public()
@Get('search/:id')
getPartnershipByIdOrSlug(@Param() params):any{
const isNumeric = n => !isNaN(n);
let parameter = { name:"", value:params.id}
isNumeric(params.id) ? parameter.name = "id": parameter.name = "slug";
return this.partnershipService.findPartnershipsByIdorSlug(parameter);
}
//Exponer punto para obtener 3 registros aleatorios
@Public()
@Get('random')
async getThreeRandomsPartnership():Promise<any>{
/*const totalRows = await this.partnershipService.getTotalRows();
const aleatoryRows = generateRandomnumber(totalRows,4)
return this.partnershipService.getFourRandomRows(aleatoryRows)*/
return this.partnershipService.findAllPartnerships();
}
//Exponer punto para almacenamiento de un nuevo Partnership
@UseInterceptors(FileInterceptor(''))
@Post()
savePartnership(@Body() modelPartnership:PartnershipValidation):any{
return this.partnershipService.savePartnership(modelPartnership);
}
//Exponer punto para actualizar un Partnership mediante su id
@UseInterceptors(FileInterceptor(''))
@Put(':id')
updatePartnership(@Body() modelPartnership:PartnershipValidation, @Param() params):any{
return this.partnershipService.updatePartnership(params.id, modelPartnership);
}
//Metodo generador de numeros aleatorios
/*generateRandomnumber(total:number){
const nums = [];
while(nums.length !== 4) {
nums.push(Math.floor(Math.random() * total) + 1);
}
return nums;
}*/
//Exponer punto para remover una partnership mediante su id
@Delete(':id')
deletePartNership(@Param() params:IsParameterWithIdOfTable){
return this.partnershipService.deletePartNership(params.id);
}
}