You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
92 lines
1.8 KiB
Python
92 lines
1.8 KiB
Python
from pydantic import BaseModel
|
|
from typing import Dict, Any, Optional, Literal
|
|
|
|
# Deifição de como vou pedir os parâmetros de cada item.
|
|
|
|
class ChatRequest(BaseModel):
|
|
message: str
|
|
user_id: Optional[int] = None
|
|
|
|
class ChatResponse(BaseModel):
|
|
response: str
|
|
|
|
|
|
class ToolCreate(BaseModel):
|
|
name: str
|
|
description: str
|
|
parameters: Dict[str, Any]
|
|
|
|
|
|
class ToolResponse(BaseModel):
|
|
id: int
|
|
name: str
|
|
description: str
|
|
parameters: Dict[str, Any]
|
|
|
|
class Config:
|
|
from_attributes = True
|
|
|
|
|
|
class ConsultarEstoqueRequest(BaseModel):
|
|
preco_max: Optional[float] = None
|
|
categoria: Optional[str] = None
|
|
ordenar_preco: Optional[Literal["asc", "desc"]] = None
|
|
limite: Optional[int] = None
|
|
|
|
|
|
class ValidarClienteVendaRequest(BaseModel):
|
|
cpf: str
|
|
valor_veiculo: float
|
|
|
|
|
|
class HidratarClienteMockRequest(BaseModel):
|
|
cpf: str
|
|
user_id: Optional[int] = None
|
|
|
|
|
|
class AvaliarVeiculoTrocaRequest(BaseModel):
|
|
modelo: str
|
|
ano: int
|
|
km: int
|
|
|
|
|
|
class AgendarRevisaoRequest(BaseModel):
|
|
placa: str
|
|
data_hora: str
|
|
modelo: str
|
|
ano: int
|
|
km: int
|
|
revisao_previa_concessionaria: bool
|
|
user_id: Optional[int] = None
|
|
|
|
|
|
class ListarAgendamentosRevisaoRequest(BaseModel):
|
|
user_id: Optional[int] = None
|
|
placa: Optional[str] = None
|
|
status: Optional[str] = None
|
|
limite: Optional[int] = 20
|
|
|
|
|
|
class CancelarAgendamentoRevisaoRequest(BaseModel):
|
|
protocolo: str
|
|
motivo: Optional[str] = None
|
|
user_id: Optional[int] = None
|
|
|
|
|
|
class EditarDataRevisaoRequest(BaseModel):
|
|
protocolo: str
|
|
nova_data_hora: str
|
|
user_id: Optional[int] = None
|
|
|
|
|
|
class CancelarPedidoRequest(BaseModel):
|
|
numero_pedido: str
|
|
motivo: str
|
|
user_id: Optional[int] = None
|
|
|
|
|
|
class RealizarPedidoRequest(BaseModel):
|
|
cpf: str
|
|
vehicle_id: int
|
|
user_id: Optional[int] = None
|