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&DMakeBuyStockPlanItemsGMPOpsAdminInsights

Retail insights

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

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–9

June consolidation

✓ Posted

rolled into wholesale SO on Jul 1

Open consolidation (MYR)

998.00

July lines not yet posted (excl. B2B)

Active customers

5

ordered in the last 90 days

Owing (unpaid)

1,337.40

2 customers — Retail → CRM

Monthly retail sales

MYR per month, Mar–Jul 2026 · July is month-to-date (9 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 9) — 3,846.50 MYR 2,410.003,128.502,894.004,215.803,846.50 MarAprMayJunJul (MTD)

July already at 91% of June after just over a week — Aunty Mei's twice-weekly Double Root restocks plus Herbs & Health PJ's 1,080.00 STC30 order on Jul 3.

Payment mix

how the 16,494.80 MYR of Mar–Jul retail sales was settled, at snapshot — three chips, honest for 5 customers

Cash

5,263.50

31.9%

Transfer

9,893.90

60.0%

Unpaid

1,337.40

8.1%

Unpaid equals the current owing balance (Herbs & Health PJ + Farmasi Seri Taming) — it clears as they pay, independent of month-end consolidation.

Counter vs Shopee — July (MTD)

NVMSB counter sales (this module) vs the Shopee monthly channel entry on Retail → Sales

Counter 3,846.50 29.4%
Shopee 9,240.00 70.6%
Combined 13,086.50 MYR

Shopee is a monthly consolidated channel entry — no per-customer detail, no customer record; excluded from the B2C e-invoice consolidation since the marketplace issues its own.

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,000.00 +8% every ~7 d 2026-07-09 Best payer — always cash
Herbs & Health PJ 5 4,850.00 +5% every ~30 d 2026-07-03 Owing 1,080.00 — due 17 Jul
Kedai Pak Din 11 3,200.00 −3% every ~10 d 2026-07-09 Below floor — owner notified (soft floor)
Coach Rizal (gym) 4 1,244.80 +10% every ~30 d 2026-06-05 · 34 d ago DUE TO REORDER
Farmasi Seri Taming 8 1,200.00 +3% every ~21 d 2026-06-10 · 29 d ago DUE TO REORDER · owing 257.40 (overdue)
5 customers 50 16,494.80 +5% avg

Project Gaia — static mockup in Filament v3 idiom. No backend. Figures reconcile to the seeded dataset (July MTD sales 3,846.50 MYR · owing/unpaid 1,337.40 · June posted); Mar–Jun monthly totals are illustrative. Retail = NVMSB only; Shopee is a separate monthly channel entry (see Retail → Sales).

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 / Owing tilesdim_customer (retail segment) with a sale in the last 90 days; Owing = running AR balance across all unpaid retail_sales, same figure as Retail (Today strip) and Retail → CRM.
Monthly sales chartfact_retail_sales grouped by dim_week rolled up to month, Mar–Jul; current month flagged MTD.
Payment mix chipspayment method recorded on each retail sale, summed Mar–Jul; unpaid = the current running AR balance at the cut, not tied to consolidation status.
Counter vs Shopee splitfact_retail_sales (counter/NVMSB) vs channel_entries (channel='shopee') for the current month — the same two figures seeded on Retail → Sales' Shopee card.
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.