ERP Simulation Diagram
sequenceDiagram
Note over OrderManager: Receive Order for Widgets, Gadgets, Gizmos
OrderManager->>Database: Create Order record, status `verified`
OrderManager->>GoogleSheet: Append row to `orders`, `verified` = TRUE
OrderManager->>WidgetFactory: POST req, production order
OrderManager->>GadgetFactory: POST req, production order
OrderManager->>GizmoFactory: POST req, production order
Note over WidgetFactory: Schedule production order
Note over GadgetFactory: Schedule production order
Note over GizmoFactory: Schedule production order
WidgetFactory->>OrderManager: POST res, PO received
GadgetFactory->>OrderManager: POST res, PO received
GizmoFactory->>OrderManager: POST res, PO received
OrderManager->>Database: Update Order record, status `in_production`
OrderManager->>GoogleSheet: Modify row in `orders`, `in_production` = TRUE
Note over WidgetFactory: Execute production order
Note over GadgetFactory: Execute production order
Note over GizmoFactory: Execute production order
WidgetFactory->>OrderManager: Webhook, order completed
GadgetFactory->>OrderManager: Webhook, order completed
GizmoFactory->>OrderManager: Webhook, order completed
OrderManager->>Database: Update Order record, status `completed`
OrderManager->>GoogleSheet: Modify row in `orders`, `completed` = TRUE
Published on 09 Jan 2024
all tags
100daysofcode activerecord android annoyances api apt arch array artix atom az3w backend bash blog browser bug callback career ci-cd cli cloud code coding config configuration cp crud cryptography css csv database db design devops django docker email erp feelsgood filter fugitive gif gist git gnome gnome pomodoro grep hebrew http ide isbn-fetcher iso javascript job search js kanban kindle koans learning linkedin linux logger manjaro map markdown microservices mobi mtp neovim nodejs nvchad packages panda pastbin patch portfolio post postgres pytest python rails reduce refactoring reflections rest routes rspec ruby salesforce script scripting security sed shell sql string_replacement study tdd terminal testing tmux ttd version_control vim vim sort walkthrough webdev workflow zsh