Work orders
A React block (a whole screen) in Beamline's Construction app.
A maintenance work order that coordinates subtasks: the children's progress drawn by status with cancelled ones counted apart, the parent completed on its own with what it does to the open children said first, and parts, labour and other costs rolled up from the children with each line's source and a missing rate said as unknown, never $0; a new subtask checked against existing tasks before a duplicate is made; an AI brief with this asset's history apart from similar assets', each fact with its record and stale once the order is edited; a spoken completion note whose summary points at the transcript lines behind each field, submitting and knowledge-base indexing kept as separate statuses; and inspection outcomes by period, where an order counted in two outcomes is said and each bar opens its exact orders.
Use it for
- Running a maintenance job split into subtasks with costs from each.
- Reviewing an AI summary or brief against the records it came from.
Not for
- Counting stock (inventory-counts).
- General project tasks (project-signals).
Anatomy
- header: the mark, the order's number and title, the view (Subtasks · Brief · Completion note · Inspections)
- subtasks: progress in words and a bar by status, the children (asset, assignee and whether it came from the parent, status), New subtask with existing tasks offered, what completing the parent does, Complete the parent
- costs: the total with costs not known, Parts · Labour · Other each opening its lines and their subtask; By subtask: each subtask's cost on one scale (not known said, the cancelled one listed, not counted)
- brief: Write it again, when and from which version (or stale), this asset's facts, similar assets' facts apart, each with its record
- completion note: summary fields with the transcript lines each came from, Note and knowledge-base statuses, Submit note; the numbered transcript
- inspections: Period; completed orders with Passed · Flagged · Failed bars and the overlap said, beside the orders themselves (every one with its outcomes, or those of the pressed outcome)
States
- mixed statuses; cancelled counted apart
- every subtask done, parent open
- parent completed
- possible existing tasks; none
- a rate missing (unknown total); none recorded
- no brief; writing; stale; failed (previous kept)
- no similar assets
- a field nothing supports; transcription failed; submitted, indexing pending
- no inspections; overlapping outcomes; drill-down
Keyboard
- the views are a radio group
- each cost kind and each outcome is a button that opens its lines
- From transcript lines lights them on focus as well as on hover
- Complete the parent asks once more before it acts
Motion
Transcript lines light with a colour fade; outcome bars scale from their start. Nothing moves at rest.
Props
| Prop | Type | Default | Description |
|---|---|---|---|
order | ParentOrder | — | The parent and its subtasks, each with status, asset, assignee (inherited or explicit) and cost lines. |
version | number | — | The order's current version (each edit raises it); a brief from an older one is stale. |
currency | string | — | ISO 4217 code ("USD"). |
onFindTasks | (name: string) => Promise<TaskCandidate[]> | — | Existing tasks that may match what is typed. |
onCompleteParent | (orderId: string) => Promise<unknown> | — | Complete the parent: open subtasks complete with it, cancelled ones stay. |
brief | WorkBrief | null | — | Your model's brief: this asset's facts, similar assets', the version it was written from. |
onRefreshBrief | () => Promise<WorkBrief> | — | Write the brief again; resolve with the new one. Reject: the previous one stays, said. |
note / defaultNote | CompletionNote | — | Transcript, summary fields with the lines behind them, statuses. |
onSubmitNote | (n: CompletionNote) => Promise<unknown> | — | Submit the note (doesn't complete the order). |
inspections | InspectionPeriod[] | — | Completed orders by period, each with one or more outcomes. |
defaultOrder | ParentOrder | — | |
onOrderChange | ((o: ParentOrder) => void) | — | |
note | CompletionNote | — | |
defaultNote | CompletionNote | — | |
onNoteChange | ((n: CompletionNote) => void) | — | |
timeZone | string | — | |
defaultView | "brief" | "completion" | "inspections" | "subtasks" | — | |
canManage | boolean | — | |
product | string | — | |
className | string | — | Classes on the documented visual root; no override by default. |
ref | Ref<HTMLDivElement> | — | Receives the documented native target or imperative handle; omitted by default. |
Built from
Dependencies
lucide-react
Import
import { WorkOrders } from "@beamline/work-orders";
Get it
Work orders is part of Beamline UI. Install the parts you need in your React app as compiled packages or editable source. Get Beamline · Connect your agent
More in Construction
- Submittal register: The documents a trade owes a project before its material is bought, on the clocks that matter: a log whose rows each draw their way to site on one shared…
- Change orders: Change orders against a contract, with the money drawn where it stands: one bar of the original contract, each approved change, a line at the current…
- Inspection review: A unit's inspection, reviewed in three views. Findings: rooms and features with their condition, answers, notes and photos, and each feature's…
- Action center: Everything waiting on a person across projects: a strip of every open item on the days ahead, one lane per kind of owing (You submit, You answer, Tasks…
- Company access: A project's companies as one board: No company first (office access waits for a company, and says so), then each company with its code and its people…
- Condition checklist: An inspection by area. Each item marked good (success), soon (warning) or needs work now (danger), or not checked yet and kept apart below; what was…
- Corrective actions: A corrective action raised from a failed inspection answer, for food safety, facilities or quality teams. The answer, its photo and note are pinned above…
- Quality checks: Quality checks by picture and the control points that make them. A check asks for one photo: an upload that fails keeps its file with Try again, and…
- Maintenance plan: Maintenance of shared equipment. The instruments, most urgent first, each with its most pressing kind and how due it is (overdue, due soon, fine, never…
- Maintenance plans: An operations team's maintenance plans. The queue lists every asset-plan pair (one machine can appear under two plans) with its last service, next due…
- Equipment register: A business's machines and vehicles: a register filtered by status (in use, in repair, sold, each counted) with each machine's photo or type icon…
- Asset workspace: One physical asset: a machine, vehicle or piece of plant. Its header keeps the system id apart from the name and serial, with type, site, status and the…
- Asset packs: Packs of assets (sounds, presets, fonts), the providers they come from and the storage they take. Download and install are two phases with their own…
- Instrument use: Shared instruments. The slot search reads as one sentence (how long, which instrument type, the dates and the working hours with the lab's time zone)…
- Job booking: A customer books a home or field-service job on the company's own site, phone first. Services with how many units, each unit adding its time and price…
- Job booking setup: Online booking for a field-service company, set up from three sides that feed one booking form. Services: each priced and timed per unit with whether it…
- Rental availability: A rental shop's availability: a product's month for the quantity a customer wants (each day available, some left with the count, booked out or not known…
- Rooms & equipment: A salon's or clinic's rooms and equipment and what its services need of them: resources by group at each location, how many appointments each holds at…
- System pages: The four pages a product shows when the normal one cannot: page not found (search and the likely places), something broke (try again, an error id to…