Atualizações em data-consult e products

This commit is contained in:
joelson brito
2025-11-10 12:39:31 -03:00
parent b8630adf92
commit 054cc2f3bb
8 changed files with 396 additions and 150 deletions

View File

@@ -1,14 +1,14 @@
/* eslint-disable prettier/prettier */
/* eslint-disable @typescript-eslint/no-unused-vars */
import { Body, Controller, Get, Param, Post,UseGuards } from '@nestjs/common';
import { Body, Controller, Get, Param, Post, Query, UseGuards } from '@nestjs/common';
import { ProductsService } from './products.service';
import { ExposedProduct } from 'src/core/models/exposed-product.model';
import { JwtAuthGuard } from 'src/auth/guards/jwt-auth.guard';
import { ExposedProductDto } from './dto/exposed-product.dto';
import { ProductValidationDto } from './dto/ProductValidationDto';
import { ProductEcommerceDto } from './dto/product-ecommerce.dto';
import { ApiTags, ApiOperation, ApiParam, ApiBody, ApiResponse, ApiBearerAuth } from '@nestjs/swagger';
import { ApiTags, ApiOperation, ApiParam, ApiQuery, ApiBody, ApiResponse, ApiBearerAuth } from '@nestjs/swagger';
import { ProductDetailQueryDto } from './dto/product-detail-query.dto';
import { ProductDetailResponseDto } from './dto/product-detail-response.dto';
import { RotinaA4QueryDto } from './dto/rotina-a4-query.dto';
@@ -37,6 +37,7 @@ export class ProductsController {
@ApiOperation({ summary: 'Valida produto pelo filtro (código, EAN ou descrição)' })
@ApiParam({ name: 'storeId', type: String, description: 'ID da loja' })
@ApiParam({ name: 'filtro', type: String, description: 'Filtro de busca (código, EAN ou descrição)' })
@ApiQuery({ name: 'tipoBusca', required: false, enum: ['codauxiliar', 'codprod', 'descricao', 'todos'], description: 'Tipo de busca específica (opcional). Padrão: busca em todos os campos' })
@ApiResponse({
status: 200,
description: 'Produto encontrado com sucesso.',
@@ -46,8 +47,9 @@ export class ProductsController {
async productValidation(
@Param('storeId') storeId: string,
@Param('filtro') filtro: string,
@Query('tipoBusca') tipoBusca?: 'codauxiliar' | 'codprod' | 'descricao' | 'todos',
): Promise<ProductValidationDto> {
return this.productsService.productsValidation(storeId, filtro);
return this.productsService.productsValidation(storeId, filtro, tipoBusca);
}