From 86ff849fea82d050d58ed5f72c9e062d196715d4 Mon Sep 17 00:00:00 2001 From: Andres Alvarez Date: Sun, 11 May 2025 20:22:41 -0400 Subject: [PATCH 1/2] Add promo type to product dto --- src/products/dto/product.dto.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/products/dto/product.dto.ts b/src/products/dto/product.dto.ts index 940bf17..deb1532 100644 --- a/src/products/dto/product.dto.ts +++ b/src/products/dto/product.dto.ts @@ -12,6 +12,7 @@ import { CategoryResponseDTO } from 'src/category/dto/category.dto'; import { ResponsePresentationDTO } from './presentation.dto'; import { PaginationQueryDTO } from 'src/utils/dto/pagination.dto'; import { Expose, Transform, Type } from 'class-transformer'; +import { ResponsePromoDTO } from 'src/discount/dto/promo.dto'; export class AddCategoryDTO { @IsString() @@ -83,6 +84,11 @@ export class ProductPresentationDTO extends BaseDTO { @Type(() => ProductDTO) product: ProductDTO; + @Expose() + @Type(() => ResponsePromoDTO) + @ApiProperty({ type: ResponsePromoDTO }) + promo: ResponsePromoDTO; + @Expose() @ApiProperty({ description: 'Stock quantity in all branches' }) stock: number; From 5e5b3a94d8767c833a68c086ceb2b98cca0869fd Mon Sep 17 00:00:00 2001 From: Andres Alvarez Date: Sun, 11 May 2025 20:23:02 -0400 Subject: [PATCH 2/2] Add left join with promo --- src/products/products.service.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/products/products.service.ts b/src/products/products.service.ts index d01381e..2281a8c 100644 --- a/src/products/products.service.ts +++ b/src/products/products.service.ts @@ -113,6 +113,15 @@ export class ProductsService { categories: 'product.categories', presentation: 'product_presentation.presentation', }, + leftJoinAndSelect: { + promo: 'product_presentation.promo', + }, + }, + order: { + createdAt: 'DESC', + product: { + priority: 'ASC', + }, }, where, skip: (page - 1) * limit,