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

CRM — deals pipeline

9 deals · pipeline value 823,000 MYR
Company Contact Deal Producing entity Stage Est. value Owner Next action Last activity

Project Gaia — static mockup in Filament v3 idiom. No backend. Companies echo the real customer prefixes in the Katana data (YGMSB, ROYKL, TSLSB…); deals are illustrative.

CRM — field manifest

FieldFilament componentTypeSourceFK target
Company / ContactTextColumn::url() / TextColumnFK + stringstored: deals.customer_id (nullable pre-conversion), deals.contact_namecustomers.id
DealTextColumnstringstored: deals.title
Producing entityTextColumn badgeFKstored: deals.factory_id — CRM is visible to sales across granted factories, deals pin the producer earlyfactories.id
StageSelectColumn badge; tab filterenumstored: Lead → Sampling → Quoted → Won / Lost; Won gets Action "Create SO" prefilled
Est. valueTextColumn::numeric()->summarize(Sum)moneystored: deals.est_value
OwnerSelectColumn → usersFKstored: deals.owner_idusers.id
Next action / Last activityTextColumn; activity log relation manager on detailstring + date / relationstored: deals.next_action, deals.next_action_date, deal_activities (type, note, at, by)deal_activities
New deal (CreateAction slideOver)Filament CreateAction, slideOverform → insertcreate writes deals(customer_id nullable, contact_name, title, factory_id, stage default lead, est_value, owner_id, next_action, next_action_date) + first deal_activities row (type=note)deals / deal_activities

Engine notes

  • Deliberately simplified: one deals table + one activity log. No email sync, no scoring, no kanban — list view per the house UX rule.
  • Sampling stage links to R&D: sample requests reference a formulation/trial, so lab work and deals stay connected.
  • Won → "Create SO" action jumps into the factory tenant's SO form with customer + entity prefilled (the existing NaVi flow, one click shorter) → so-new.html prefilled.
  • + Deal opens the CreateAction slide-over: creating a deal inserts a deals row (customer_id nullable until Won) plus its first deal_activities note row in one transaction.

Deal

New deal

Not saved

deals.customer_id nullable pre-conversion — converts on Won.

deals pin the producer early.

MYR

Posts a deal_activities row (type=note) alongside the new deal.