Sari la conținut

Atelier (piese & pontaj)

Operațiunile de pe platforma atelierului, în jurul unei comenzi de service: cererile de piese de la mecanic către tejghea și pontajul mecanicilor.

Notă despre utilizator. Aceste endpoint-uri acționează în numele unui utilizator (mecanic). Când cererea este autentificată cu sesiune, utilizatorul este cel autentificat. Cu o cheie API completă (fără sesiune de utilizator), trimite user_id în body ca să indici mecanicul.

Cereri de piese

Mecanicul de la boxă cere o piesă; tejgheaua vede cererile deschise (ordonate după urgență) și le avansează statusul.

MetodăCaleDescriere
GET/api/v1/service/parts-requestsListă (nepaginată); filtre open, work_order_id.
POST/api/v1/service/work-orders/{id}/parts-requestsCreează o cerere pentru o comandă.
PUT/api/v1/service/parts-requests/{id}/statusAvansează statusul cererii.

Listare

ParametruTipNote
openbooleanImplicit true — doar cererile încă deschise.
work_order_idintegerFiltrează după comandă.

Rezultatele sunt ordonate după urgență (nowtodaythis_week), apoi după momentul cererii.

Creare cerere

CâmpTipObligatoriuNote
descriptionstring ≤ 255daCe piesă se cere.
quantitynumeric ≥ 0nuImplicit 1.
urgencyenumnunow | today | this_week. Implicit today.
wo_parts_line_idintegernuLeagă cererea de o linie de piese a comenzii.
bash
curl -X POST https://tenant.notsowms.ro/api/v1/service/work-orders/901/parts-requests \
  -H "Authorization: Bearer tenant.7c4a8d09ca3762af61e59520943dc26494f8941b" \
  -H "Content-Type: application/json" \
  -d '{ "description": "Set plăcuțe frână față MT-07", "quantity": 1, "urgency": "now" }'

Avansarea statusului

bash
curl -X PUT https://tenant.notsowms.ro/api/v1/service/parts-requests/210/status \
  -H "Authorization: Bearer tenant.7c4a8d09ca3762af61e59520943dc26494f8941b" \
  -H "Content-Type: application/json" \
  -d '{ "status": "delivered_to_bay" }'
CâmpTipObligatoriuValori
statusenumdapending | picked | delivered_to_bay | ordered | unavailable | cancelled.

Trecerea în delivered_to_bay setează automat delivered_at.

Pontaj mecanic (time clock)

Cronometrarea lucrului unui mecanic. Există cel mult o singură pontare deschisă per utilizator în orice moment.

MetodăCaleDescriere
GET/api/v1/service/time-clock/currentPontarea deschisă curentă (sau null).
POST/api/v1/service/time-clock/startPornește o pontare.
POST/api/v1/service/time-clock/stopOprește pontarea curentă.

Pornire

CâmpTipNote
user_idintegerMecanicul, dacă cererea nu e autentificată cu sesiune.
work_order_idintegerComanda la care se lucrează.
wo_labor_line_idintegerLinia de manoperă cronometrată.
notestext
bash
curl -X POST https://tenant.notsowms.ro/api/v1/service/time-clock/start \
  -H "Authorization: Bearer tenant.7c4a8d09ca3762af61e59520943dc26494f8941b" \
  -H "Content-Type: application/json" \
  -d '{ "user_id": 12, "work_order_id": 901 }'

Dacă mecanicul are deja o pontare deschisă, răspunsul este 422:

json
{ "error": "User already has an open time clock entry." }

Oprire

bash
curl -X POST https://tenant.notsowms.ro/api/v1/service/time-clock/stop \
  -H "Authorization: Bearer tenant.7c4a8d09ca3762af61e59520943dc26494f8941b" \
  -H "Content-Type: application/json" \
  -d '{ "user_id": 12 }'

Setează stopped_at și calculează duration_minutes. Dacă nu există o pontare deschisă pentru acel utilizator, răspunsul este 422.

Documentație API notso WMS