6.6. Flujo consulta listado
Este documento actualiza el servicio legacy listado (sin request) que devolvía un catálogo tipo:
{
"ResultCollection": [
{ "f_id": 14056146, "f_desc": "No cuenta con sello" },
{ "f_id": 14056147, "f_desc": "Sello revisado - coincide y bien colocado" },
{ "f_id": 14056148, "f_desc": "Sello revisado - coincide y mal colocado" },
{ "f_id": 14056149, "f_desc": "Sello revisado - no coincide y bien colocado" },
{ "f_id": 14056150, "f_desc": "Sello revisado - no coincide y mal colocado" },
{ "f_id": 14056151, "f_desc": "Sello revisado - se encuentra roto" }
]
}
y lo mapea al nuevo endpoint, además del mapeo a tablas de catálogo en BD.
1) Nuevo servicio equivalente
Servicio: Quality Assurance Service (v1)
Base URL: https://api.alpura.mx/quality/v1
Endpoint: POST /seals/evaluations
Descripción: Devuelve el catálogo de evaluaciones de sellos y/o el resultado de una evaluación según input.
Aunque el legacy no requería cuerpo, el endpoint nuevo requiere un
requestBodymínimo coninput(puedes enviar""si solo quieres el catálogo).
1.1 Request (mínimo)
POST /seals/evaluations
Content-Type: application/json
{ "input": "" }
1.2 Response (equivalente al legacy)
{
"o_estatus": "OK",
"o_descripcion": "Catálogo de evaluaciones",
"ResultCollection": [
{ "f_id": 14056146, "f_desc": "No cuenta con sello" },
{ "f_id": 14056147, "f_desc": "Sello revisado - coincide y bien colocado" },
{ "f_id": 14056148, "f_desc": "Sello revisado - coincide y mal colocado" },
{ "f_id": 14056149, "f_desc": "Sello revisado - no coincide y bien colocado" },
{ "f_id": 14056150, "f_desc": "Sello revisado - no coincide y mal colocado" },
{ "f_id": 14056151, "f_desc": "Sello revisado - se encuentra roto" }
]
}
2) Mapeo a Base de Datos (Catálogo)
Estas listas suelen residir en tablas de catálogos flexibles (EBS-like). Para este caso, el catálogo de evaluaciones de sellos se modela con:
ALP_FND_FLEX_VALUE_SETS— conjunto (e.g.,SEAL_EVALUATION_CODES)ALP_FND_FLEX_VALUES— valores (IDs/códigos)ALP_FND_FLEX_VALUES_TL— textos/descr. (multilenguaje)
2.1 Mapeo de campos
| Campo (API) | Tabla.Columna | Descripción |
|---|---|---|
f_id | ALP_FND_FLEX_VALUES.FLEX_VALUE_ID | Identificador del valor de catálogo |
f_desc | ALP_FND_FLEX_VALUES_TL.DESCRIPTION o FLEX_VALUE_MEANING | Descripción legible (elige uno según tu estándar) |
| (opcional) código | ALP_FND_FLEX_VALUES.FLEX_VALUE | Código interno del catálogo |
| (scoping) set | ALP_FND_FLEX_VALUE_SETS.FLEX_VALUE_SET_NAME | Nombre del conjunto (e.g., SEAL_EVALUATION_CODES) |
Si trabajas con múltiples idiomas, filtra
ALP_FND_FLEX_VALUES_TL.LANGUAGE = 'ES'(o el que aplique).
3) SQL de referencia (catálogo de evaluaciones de sellos)
Ajusta
:VALUE_SET_NAMEal nombre real del conjunto configurado para evaluaciones de sellos.
SELECT
v.FLEX_VALUE_ID AS f_id,
NVL(t.DESCRIPTION, t.FLEX_VALUE_MEANING) AS f_desc,
v.FLEX_VALUE AS codigo
FROM ALP_FND_FLEX_VALUES v
JOIN ALP_FND_FLEX_VALUE_SETS s
ON s.FLEX_VALUE_SET_ID = v.FLEX_VALUE_SET_ID
LEFT JOIN ALP_FND_FLEX_VALUES_TL t
ON t.FLEX_VALUE_ID = v.FLEX_VALUE_ID
WHERE s.FLEX_VALUE_SET_NAME = :VALUE_SET_NAME
AND (t.LANGUAGE = :LANG OR :LANG IS NULL);
Sugerencia de VALUE_SET_NAME: SEAL_EVALUATION_CODES (o el alias que uses actualmente en tu instancia).