DTOs ProductoOfertaDto - bootcamp-uchile-2026/grupo-2-backend GitHub Wiki

ProductoOfertaDto

DTO de salida utilizado para representar los productos que poseen una oferta vigente en EcoTienda.

Utilizado por

GET /productos/ofertas

Página relacionada:

Carrusel de Ofertas

Tipo

DTO de salida.

Estructura

Campo Tipo Requerido Descripción
marca string Sí Marca asociada al producto
nombreProducto string Sí Nombre del producto
destacado boolean Sí Indica si el producto se encuentra destacado
precioOriginal number Sí Precio original del producto antes de aplicar el descuento
precioDescuento number Sí Precio final del producto con el descuento aplicado
descuentoPorcentaje number Sí Porcentaje de descuento aplicado al producto
imagenUrl string Sí URL de la imagen utilizada para representar el producto

Representación conceptual en TypeScript

export class ProductoOfertaDto {
  marca: string;
  nombreProducto: string;
  destacado: boolean;
  precioOriginal: number;
  precioDescuento: number;
  descuentoPorcentaje: number;
  imagenUrl: string;
}

Ejemplo

{
  "marca": "Totto",
  "nombreProducto": "Maleta de Viaje Mediana Trip Negra",
  "destacado": true,
  "precioOriginal": 62990,
  "precioDescuento": 28290,
  "descuentoPorcentaje": 55,
  "imagenUrl": "https://ejemplo.cl/imagenes/maleta-trip-negra.jpg"
}

Respuesta del servicio

El endpoint devuelve una lista de productos:

ProductoOfertaDto[]

Ejemplo:

[
  {
    "marca": "Totto",
    "nombreProducto": "Maleta de Viaje Mediana Trip Negra",
    "destacado": true,
    "precioOriginal": 62990,
    "precioDescuento": 28290,
    "descuentoPorcentaje": 55,
    "imagenUrl": "https://ejemplo.cl/imagenes/maleta-trip-negra.jpg"
  },
  {
    "marca": "Totto",
    "nombreProducto": "Maleta de Viaje Grande",
    "destacado": false,
    "precioOriginal": 98990,
    "precioDescuento": 62190,
    "descuentoPorcentaje": 37,
    "imagenUrl": "https://ejemplo.cl/imagenes/maleta-grande.jpg"
  }
]