Skip to content

POST /tms/transloads/work-assignments/(?P\d+)/start

TMS > tms.transload

What it does

#^/tms/transloads/work-assignments/(?P<id>\d+)/start$# accepts POST and is declared in app/systems/TMS/transload/api_routes.php:495 as a regex pattern.

The route handler delegates to tmsTransloadApiWorkAssignmentStart(). That function is the owner of this behaviour; the route entry is only dispatch.

Call chain:

  1. → tmsTransloadApiWorkAssignmentStart() — app/systems/TMS/transload/work_queue_api_helper.php:319
  2. ↳ tmsTransloadApiWorkAssignmentRow() — app/systems/TMS/transload/work_queue_api_helper.php:267

Who calls it

No literal caller path was found in frontend/, public/ or new-system/. The endpoint may be called through a constructed path, a helper wrapper, or only by an external client. Treat the route table and owner function as the authority.

Input

Where Key
path id

Request bodies must not use TYPE, ACTION or USERNAME as contract fields.

Output

Key
EVENT_TIME
EVENT_TYPE
JOB_SOURCE_ID
JOB_SOURCE_TYPE
NOTE
SOURCE
STAFF_USER_ID
WORK_CONTEXT

Success is { "data": …, "requestId": "…" }. Failure is { "error": { "code", "message" }, "requestId": "…" }.

SQL executed

UPDATE T_LOADING_PLANNER SET JOB_STATUS='STARTED', JOB_START_TIME=?, JOB_ACCEPTED_USER=? WHERE CLIENT_ID=? AND ID=? AND JOB_STATUS='SCHEDULED' AND SPECIAL_INSTRUCTION='QUEUE_WORK_ASSIGNMENT' AND DELETED_AT IS NULL
SELECT ID FROM T_LOADING_PLANNER WHERE CLIENT_ID=? AND LOADER_NAME=? AND ID<>? AND SPECIAL_INSTRUCTION='QUEUE_WORK_ASSIGNMENT' AND JOB_STATUS='STARTED' AND DELETED_AT IS NULL LIMIT 1
SELECT * FROM T_LOADING_PLANNER WHERE CLIENT_ID=? AND ID=? AND SPECIAL_INSTRUCTION='QUEUE_WORK_ASSIGNMENT' AND DELETED_AT IS NULL LIMIT 1

Data

Tables reached from the owner function:

  • T_LOADING_PLANNER

Access

  • module-gated on tms.transload, so tenant module access applies

Validation and failure messages

  • Assignment is already started or unavailable.
  • Finish the current break before starting an assignment.
  • Clock in before starting an assignment.
  • Finish the current job before starting the next assignment.
  • Assignment was already started.

These strings come from the owner function and are the messages a client can receive. They are also the cheapest way to tell a rejected request from a broken one.