CROI · 都市更新投報試算 SaaS

把數週的人工投報 Excel,變成數小時、可審計、多租戶的雲端平台

計算引擎逐項回算兩家建設公司的六份實戰 Excel,全數一致;並已上線為多租戶 SaaS,客戶各自公司資料嚴格隔離。

正式站已上線 · croi.alljoint.tw

← 回精算

241 / 241
引擎回算 Excel 項目全數通過(容差 0.5%)
6
實戰參考案逆向驗證(兩家公司)
10 / 10
租戶隔離場景實測通過
3
角色權限層級(平台 / 主管 / 員工)
01

評估一塊地的流程

快篩 → 精算漏斗
已建
階段 1

初評快篩

地圖點選地塊,自動查使用分區,帶出容積 / 建蔽,秒出粗估投報,決定深入或放棄。

已建
階段 2

抓存檔資料

建檔時以座標抓分區圖資;分區證明、建照存根等佐證文件引導上傳保存(私有 bucket+跨租戶隔離),成為案件資料中心。

已建
階段 3

精算投報

法定死值自動帶入、市場假設可調,輸出完整投報、稅(含營業稅)、財務與敏感度。

已建
階段 4

規劃決策

情境並排比較(/compare)+出價上限與 Go / No-go 反解:反算土地預算上限、達標售價、損益兩平售價、可承受營建單價。

02

多租戶架構與資料隔離

RLS 為真正邊界
角色能做什麼看得到的案件
平台管理員(你)建立客戶公司與主管帳號、啟用 / 停用(付費控管)所有公司清單 — 但看不到任何客戶案件內容
客戶主管建立案件、新增員工帳號自己公司所有員工的案件
客戶員工建立與試算自己的案件只有自己建立的案件

跨公司零外洩

A 公司資料絕不流向 B 公司,由資料庫層 RLS 強制,非僅靠 API 授權。已實測 B 看 A 得 0 筆。

已驗證 ★

停用即斷線

公司未付費停用後,其所有帳號立即無法存取案件,同樣由 RLS 於資料庫層擋下。

已驗證

參考案不外洩

六份真實建商 Excel 為商業機密,只存在伺服器端內部驗證,不進客戶端、客戶只見去識別化模板。

已驗證
03

系統功能頁

快篩 · /(首頁)

地圖點選地塊 → 自動查分區 → 粗估投報 → 一鍵轉精算。

精算 · /calc

快篩地塊直接餵引擎重算;選模板、調市場假設,即時算出投報、成本結構、敏感度與出價上限/Go-No-go;可列印/存 PDF。

情境比較 · /compare

兩組市場/稅務假設並排,逐項比淨利、營收比與成本差額。

法規參數庫 · /regulation

版本化法規數值+法源,標明法定/慣例/估算,回應「不信任」痛點。

平台管理台 · /admin

建立客戶公司與主管、切換啟用 / 停用狀態、檢視成員數。

團隊管理 · /team

主管新增員工帳號、檢視公司成員與角色。

引擎驗證 · /verify

逐項比對引擎與原始 Excel(限平台管理員),即產品內回歸關卡。

分區查詢 API · /api/zone

後端代理台北市政府 ArcGIS,座標對面查使用分區,避開跨域並快取。

圖資抓取 API · /api/gis

建檔時以座標自動抓分區與出圖 PDF,存進案件成為地塊資料中心。

佐證文件 · /api/case-files

案件內上傳分區證明/建照存根等,私有 bucket+service_role,跨租戶隔離(E2E 實測 403)。

04

技術棧與安全

Next.js 15 · React 19純 TypeScript 計算引擎Supabase Postgres · Auth · RLSVercel 部署台北市 ArcGIS 圖資
  • RLS UPDATE 全帶 WITH CHECK擋下擁有者竄改他人欄位的提權漏洞。
  • 平台審核開通制訪客於 /apply 申請,管理員審核後建立帳號;杜絕未授權入口。
  • service_role 金鑰僅存伺服器端建帳號走後端路由並逐一驗權,不進前端。
  • 營業稅模組補上歷史 Excel 共同漏項(合建互易視同銷售 5%)。
05

下一步

  • 輪換憑證Vercel 與 Supabase 兩組 token 到後台重新產生。
  • 任意新地塊精算模板目前精算以典型結構為模板,待作者訪談校準逐案結構。
  • 佐證文件自動解析(選配)目前為人工抄錄關鍵數值+附件為憑;未來可加 OCR 輔助。
  • 買斷模板出價上限std-ur 為合建模板;買斷模板出現後即為真實地價上限反解。

CROI 系統總覽 · 引擎 241/241 · 多租戶已上線 · RLS 隔離已驗證