Como en el tutorial anterior, necesitamos crear un controlador para revelar el punto final para actualizar la dirección. Nota: Si ya tiene clases de controlador y servicio del tutorial anterior, puede guardar los archivos existentes y expandir las clases usando los nuevos métodos. Crear un business-partner.controller.ts
y agregue la siguiente implementación:
import { Controller, Body, Param, Put } from '@nestjs/common';
@Controller('business-partners')
export class BusinessPartnerController {
@Put('/:businessPartnerId/address/:addressId')
updateBusinessPartnerAddress(@Body() requestBody, @Param('businessPartnerId') businessPartnerId, @Param('addressId') addressId): string {
return `This is your request data:
businessPartnerId: ${businessPartnerId}
addressId: ${addressId}
request body: ${JSON.stringify(requestBody)}`
}
}
Crea un archivo llamado business-patner.service.ts
sa src
carpeta para aplicaciones. Luego copia el siguiente código en él:
import { Injectable } from '@nestjs/common';
import { BusinessPartnerAddress } from '@sap/cloud-sdk-vdm-business-partner-service';
@Injectable()
export class BusinessPartnerService {
updateBusinessPartnerAddress(address: BusinessPartnerAddress): Promise<BusinessPartnerAddress> {
return;
}
buildAddress(body: any, businessPartnerId: string, addressId: string): BusinessPartnerAddress {
const address = BusinessPartnerAddress.builder().fromJson(body);
address.businessPartner = businessPartnerId;
address.addressId = addressId;
return address;
}
}
Esto sigue a la implementación en los tutoriales anteriores. updateBusinessPartnerAddress()
todavía no hace nada útil, pero lo implementará en el siguiente paso. Finalmente, registre el controller
y service
en el módulo de aplicación raíz app.module.ts
:
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { BusinessPartnerController } from './business-partner.controller';
import { BusinessPartnerService } from './business-partner.service';
@Module({
imports: [],
controllers: [AppController, BusinessPartnerController],
providers: [AppService, BusinessPartnerService]
})
export class AppModule {}
Tenga en cuenta que usamos el PUT
método para actualizar la dirección de un socio comercial. Entonces tenemos que PUT
solicitud. Reinicie su servidor y ejecútelo PUT
pregunta por http://localhost:3000/business-partners/1/address/2
con algún cuerpo (p. ej. {"key": "Some test body."}
). El servidor debe responder de la siguiente manera:
This is your request data:
businessPartnerId: 1
addressId: 2
request body: {"key":"Some test body."}