CodeBiting / onion-cargo-loading-service

Servei per determinar quin contenidor fer servir i com s'han de disposar els elements a dins
MIT License
1 stars 4 forks source link

Demanar contenidor mes petit per posar productes #38

Closed jordidh closed 1 year ago

jordidh commented 1 year ago

Obectiu

Implementar una nova crida per tal de que els clients puguin demanar el contenidor mes petit a on hi cap una serie de productes.

Solució

Implementar una nova crida en la API container per tal de que els clients puguin passar un array de productes i se'ls hi retorni el contenidor mes petit a on hi caben.

URL: [GET] /container/smallest

Hem de passar:

L'array de productes serà del tipus:

const PRODUCT_SET_02 = [  // 2 productes iguals
  { "code":"selfpackaging-2536", "x":62, "y":62, "z":151, "volume":0.580444, "allowedRotations": ["x", "y"] },
  { "code":"selfpackaging-2536", "x":62, "y":62, "z":151, "volume":0.580444, "allowedRotations": ["x", "y"] },
];

Funcionalitat:

  1. Validar paràmetres. 1.1 Si no troba el clientId retornar un 404 amb un missatge d'error explicatiu (ApiResult) 1.2 Si el paràmetre amb els producte no té el format correcte donar un error 400 amb un missatge d'error explicatiu (ApiResult)
  2. Obtenir els contenidors configurats per el clientId passat
  3. Cridar a la funció findPickingBox
  4. Retornar el contenidor trobat per la funció, si no en troba retornar un 404 amb un missatge d'error explicatiu (ApiResult)
jordidh commented 1 year ago

Hem d'afegir mes contenidors de test a la BD per poder completar els tests unitaris