G Gaia

Switch factory

CYTO-11 — Balakong Jaya CTSB CYTO-29 CTSB CYTOWELL-54 — Taming Jaya PIC/S CTWSB CYTOCNGZ-602 — Guangzhou CTCNGZ

Only factories you are granted appear here (Filament tenant menu).

Leo Lim

leo@navi.my · Owner / Admin

Profile settings Change password

Theme

Sign out
RetailSellR&DMakeBuyStockPlanItemsGMPAdminInsights

Retail insights

Data refreshed at 08:00 · 2026-07-07

Insights reads the nightly snapshot, not the live DB — figures can trail today's operations by up to a day.

July sales (MTD, MYR)

3,846.50

+6.9% vs Jun 1–7

June consolidation

✓ Posted

rolled into wholesale SO on Jul 1

Open consolidation (MYR)

1,337.40

July lines not yet posted

Active customers

5

ordered in the last 90 days

Below-floor approvals

1

waiting on owner

Monthly retail sales

MYR per month, Mar–Jul 2026 · July is month-to-date (7 days)

4.5k3k1.5k0 March — 2,410.00 MYR April — 3,128.50 MYR May — 2,894.00 MYR June — 4,215.80 MYR (consolidated ✓) July MTD (as of Jul 7) — 3,846.50 MYR 2,410.003,128.502,894.004,215.803,846.50 MarAprMayJunJul (MTD)

July already at 91% of June after one week — Aunty Mei's Jul 5 restock plus the Jul 6 walk-ins.

Payment mix

how the 16,494.80 MYR of Mar–Jul retail sales was settled, at snapshot

Bank transfer — 9,893.90 MYR (60.0%) Cash — 5,263.50 MYR (31.9%) Unpaid — 1,337.40 MYR (8.1%) 16,494.80 MYR · Mar–Jul
Bank transfer 9,893.90 60.0%
Cash 5,263.50 31.9%
Unpaid 1,337.40 8.1%

Unpaid equals the open July consolidation — it clears when the month is posted to a wholesale SO.

Customer book — Mar–Jul — ranked by revenue · cadence = median gap between orders · DUE TO REORDER when silent > 1.5× cadence
Customer Orders Revenue (MYR) Avg price vs floor Cadence Last order Status
Aunty Mei — Restoran Mei Kee 22 6,842.00 +8% every ~9 d 2026-07-05 Best payer — always cash
Kak Ros — Gerai Ros, Pasar Borong 14 4,120.50 +2% every ~14 d 2026-06-18 · 19 d ago DUE TO REORDER
Mr. Tan — Kedai Runcit Tan 9 2,731.80 −4% every ~21 d 2026-07-02 Below floor — approval pending
Puan Salmah — homestay bulk 7 1,905.00 +5% every ~30 d 2026-05-29 · 39 d ago DUE TO REORDER
Uncle Lim — walk-in regular 5 895.50 +12% irregular 2026-07-06 OK
5 customers 57 16,494.80 +5% avg

Project Gaia — static mockup in Filament v3 idiom. No backend. Figures reconcile to the seeded dataset (July 7 sales 3,846.50 MYR · open consolidation 1,337.40 · June posted); Mar–Jun monthly totals are illustrative.

Retail insights — field manifest

WidgetSource query (in words)
July sales tilefact_retail_sales (built from retail_sale_lines): sum of line totals in the current calendar month at the 02:00 cut; delta compares the same day-span of the prior month.
Consolidation tilesconsolidation runs — June's batch was posted into a wholesale SO on Jul 1 (✓); open = sum of July retail lines not yet consolidated.
Active customers / approvals tilesdim_customer (retail segment) with a sale in the last 90 days; below-floor = retail lines priced under the item's price floor still awaiting owner approval.
Monthly sales chartfact_retail_sales grouped by dim_week rolled up to month, Mar–Jul; current month flagged MTD.
Payment mix donutpayment method recorded on each retail sale; unpaid = lines with no payment reference at the cut (equals the open consolidation figure).
Customer book tabledim_customer × fact_retail_sales: order count, revenue, average unit price vs the item price floor, median days between orders; DUE TO REORDER when days since last order exceed 1.5× that median.

Engine notes

  • Insights is a nightly materialized star-schema snapshot — rebuilt 02:00, published 08:00. Fact tables are built from so_lines / retail_sale_lines / stock_movements / machine_usage_logs / maintenance_logs; dims: dim_customer, dim_item, dim_category, dim_site, dim_week. Pages read the snapshot, never the live operational DB.
  • Filament: custom Livewire pages with hand-rolled Blade/SVG chart components — NOT Resources. Read-only; "Refresh now" queues a re-materialization of this module's facts only, and charts hold the previous render at reduced opacity while it runs.
  • No new operational tables: Insights owns only its snapshot schema (insights_* tables), dropped and rebuilt nightly. Reorder flags and below-floor approvals link back to the Retail CRM screens for action.