Approve from Anywhere: Fleet Parts Requests
When COVID kept managers out of the office, I replaced a paper sign-off with an Oracle APEX app the fleet manager could approve from Slack on his phone.
CONTEXT
BHN Logistics is the logistics company of the Tolaram group in Nigeria. Its warehouse repairs trucks, and every repair needs parts from inventory.
THE CHALLENGE
Parts were released against a paper request signed by the fleet manager. During COVID he couldn't be in the office all the time, so every request waited for a signature and trucks stayed off the road.
WHAT I BUILT
- RequestRequesters raise a parts request in Oracle APEX and attach documents or photos, stored in the database.
- Slack and emailPL/SQL calls the Slack API, so the fleet manager gets an interactive message on his phone with Approve, Reject and View. The same request also arrives by email with matching buttons.
- Approve or rejectApprove or Reject (with remarks) calls a PHP script, which updates the record through a PL/SQL procedure. View opens the request in APEX.
- Warehouse boardA big-screen status board in the warehouse refreshes every 2 minutes, so requesters see the moment a request is approved and go straight to inventory.
APEX 19 had no built-in approvals, so the whole flow was built in PL/SQL packages.
RELIABILITY
- Two approval channels, Slack and email, so a missed notification doesn't block a request.
- Every status change goes through one PL/SQL procedure, so the app, Slack and email can't disagree.
- Each approval link carries a token tied to that approver and request, so it can't be used by anyone else.
ARCHITECTURE · AS BUILT
OUTCOME
Approvals no longer depended on the manager being on site, which saved significant time for the warehouse. The system was in use until the company moved to SAP.
SKILLS SHOWN
← Back to all projectsLet's talk.
Work, photography collaborations, or just hello.