feat: adiciona endpoint placa-8122 e remove newrelic/pm2

Simplifica start:prod e ajusta consultas de ofertas para 10x (codplpagmax=42), com melhorias de sanitização e imports.
This commit is contained in:
2026-01-28 09:19:11 -03:00
parent b13e2775b4
commit 83a1fd78be
11 changed files with 689 additions and 1462 deletions

View File

@@ -0,0 +1,127 @@
import { ApiProperty } from '@nestjs/swagger';
/**
* DTO para resposta de placa 8122
*/
export class Placa8122ResponseDto {
@ApiProperty({
description: 'Código do produto',
example: 12345,
})
codprod: number;
@ApiProperty({
description: 'Descrição do produto',
example: 'PRODUTO EXEMPLO',
})
descricao: string;
@ApiProperty({
description: 'Marca do produto',
example: 'MARCA EXEMPLO',
})
marca: string;
@ApiProperty({
description: 'Unidade do produto',
example: 'UN',
})
unidade: string;
@ApiProperty({
description: 'Preço de venda 1',
example: 99.9,
})
pvenda1: number;
@ApiProperty({
description: 'Preço fixo promocional',
example: 79.9,
})
precofixo: number;
@ApiProperty({
description: 'Parte decimal do preço',
example: '99',
})
dec: string;
@ApiProperty({
description: 'Preço truncado',
example: 79,
})
preco: number;
@ApiProperty({
description: 'Percentual de desconto',
example: 20,
})
percdesconto: number;
@ApiProperty({
description: 'Data de fim da vigência',
example: '2024-12-31',
})
dtfimvigencia: Date;
@ApiProperty({
description: 'Código do plano de pagamento máximo',
example: 42,
})
codplpagmax: number;
@ApiProperty({
description: 'Mensagem para débito',
example: 'DEBITO',
required: false,
})
mensagem2: string | null;
@ApiProperty({
description: 'Mensagem para à vista',
example: 'À VISTA | R$',
required: false,
})
mensagem3: string | null;
@ApiProperty({
description: 'Mensagem para 10x',
example: '10X DE',
required: false,
})
mensagem4: string | null;
@ApiProperty({
description: 'Mensagem 6',
example: 'OU R$',
required: false,
})
mensagem6: string | null;
@ApiProperty({
description: 'Mensagem 7',
example: 'NO CARTÃO',
required: false,
})
mensagem7: string | null;
@ApiProperty({
description: 'Mensagem 8',
example: 'TOTAL: R$',
required: false,
})
mensagem8: string | null;
@ApiProperty({
description: 'Valor das parcelas',
example: 15.99,
})
parcelas: number;
@ApiProperty({
description: 'Data de início da vigência',
example: '2024-11-19',
})
inicio: Date;
}