Lab trials
Project Gaia — static mockup in Filament v3 idiom. No backend. Material names/costs reference the real raw-material pool; trials are illustrative.
Switch factory
CYTO-11 — Balakong Jaya CTSB CYTO-29 CTSB CYTOWELL-54 — Taming Jaya PIC/S CTWSB CYTOCNGZ-602 — Guangzhou CTCNGZOnly factories you are granted appear here (Filament tenant menu).
Project Gaia — static mockup in Filament v3 idiom. No backend. Material names/costs reference the real raw-material pool; trials are illustrative.
Lab trial
Series TRL-{yy}-{seq} — next after TRL-26-015.
FK formulation_versions.id — lines below prefill from the formulation, editable per trial.
Trial materials + result are ALSO written to the request progress log (type Trial, trial # auto-increments).
Units locked to the admin units list — staff never type units; conversions hard-coded.
DatePicker — snapshot, defaults to today.
Trial materials
| # | Material | Qty | UoM admin units | Avg cost MYR / uom | Est. line cost | |
|---|---|---|---|---|---|---|
| free text — not in item master | MYR |
Est. total: MYR
On create: writes lab_trials + lab_trial_lines and appends a Trial entry to the linked request log. No stock movement.
| Field | Filament component | Type | Source | FK target |
|---|---|---|---|---|
| Trial # | TextColumn (series TRL-{yy}-{seq}) | string | stored: lab_trials.code | — |
| Formulation / Ver | TextColumn::url() | FK | stored: lab_trials.formulation_version_id | formulation_versions.id |
| Batch size | TextColumn | qty + uom | stored: lab_trials.batch_qty | — |
| Trial materials | Repeater lines → derived summary | relation | stored: lab_trial_lines (variant_id nullable, qty, uom) — quantity notes only; no batch pick, no stock movement (founder decision) | variants (nullable) |
| Est. cost | TextColumn::numeric() | money | derived: Σ qty × current moving-average — an estimate for costing reference; nothing is posted or expensed | — |
| Materials used (log only) | TextColumn chip "Logged" | static | quantities recorded in the linked R&D request's progress log — trial consumption is NOT stock-tracked; the shared-pool reservation concept (Reserved / Issued) is dropped (founder decision) | rnd_progress_log |
| Result | TextColumn badge + notes on detail | enum + text | stored: lab_trials.result, .notes | — |
| Create trial (slide-over) | CreateAction::slideOver() | action | stored: lab_trials (code, formulation_version_id, rnd_request_id nullable, batch_qty, uom, trial_date, by_user_id, result enum, scheduled_date, notes) | formulation_versions.id · rnd_requests.id · users.id |
| Trial line (repeater) | Repeater rows in the slide-over | relation | stored: lab_trial_lines (variant_id nullable, free_text, qty, uom) — qty in admin-locked units, never typed; no batch, no stock movement | variants (nullable) · units (admin-locked) |