Saltar al contenido

Reutilizar el servicio Java

Ahora definirá los servicios, que deberían revelar las entidades que ha especificado en su modelo de dominio:

  1. Dentro de ~/projects/bookstore/srv carpeta, cree un archivo llamado services.cds.

  2. Agregue el siguiente código al services.cds archivo y asegúrese de Salvar el archivo:

    using { sap.capire.bookstore as db } from '../db/schema';

    // Define Books Service
    service BooksService {
        @readonly entity Books as projection   on db.Books { *, category as genre } excluding { category, createdBy, createdAt, modifiedBy, modifiedAt };
        @readonly entity Authors as projection on db.Authors;
    }

    // Define Orders Service
    service OrdersService {
        entity Orders as projection on db.Orders;
        entity OrderItems as projection on db.OrderItems;
    }

    // Reuse Admin Service
    using { AdminService } from '@sap/capire-products';
    extend service AdminService with {
        entity Authors as projection on db.Authors;
    }

El es services.cds el archivo define tres servicios:

  • BooksService

  • OrdersService

  • AdminService

El es BooksService utilizado para proporcionar una vista de solo lectura de la Books y Authors detalles. Esta entidad no se puede modificar a través de este servicio.

El es OrdersService permite ver, crear y eliminar comandos.

El es AdminService reutilizados del producto servicio. Pero el Authors entidad para él. Se puede utilizar para crear, actualizar y eliminar productos y autores.

Se considera una buena práctica definir los servicios con un caso de uso en mente. Por ejemplo, el AdminService destinado a administrar Productos, Autores y Categorías, y la BooksService está destinado a revelar un catálogo de libros y autores, para ocultar datos administrativos como tiempos de creación y modificaciones al usuario final.

Hecho

Inicie sesión para responder la pregunta