コンテンツにスキップ

ValueOS 差分・項目突合

7/29 定例会で「ValueAuth(案件・受注・請求・入金・タスクの5本柱)のイメージに寄せたい」との要望が出た。「ValueAuth」という別リポは存在せず、同じ5本柱を持つ ValueOS(正本 = github.com/stanaka-blip/valueos)がその実体(茗荷さん確認済み・2026-08-05)。以降 ValueOS を唯一の基準とする。

ValueOS現行 CRM モック
構成Next.js App Router + Supabase(実DB)TanStack Start + Zustand(モック・ローカル永続化)
主眼単一 cases 軸で 受発注→請求→入金販売店目線 deals商社別軸 wholesale(7/29 新設)
明細case_products(案件配下・発注/請求共通)案件の items(卸案件)/見積の明細
決済区分case_settlements.settlement_type(前金/売掛/3社間決済/カード/その他・2026-08-01正規化)+card_brand/approval_number/card_statusWholesaleCase.settlement(前金/掛売/三社間/カード/その他)+承認番号
ワークフローlib/workflow/WorkflowEngine.tsSETTLEMENT_RULES(決済区分別)から canOrder/canInvoice・現在フェーズを判定wholesaleFlow=決済区分別に canOrder/canInvoice・次アクションを機械判定(同等)

差分表(機能領域別・実装状況を更新)

Section titled “差分表(機能領域別・実装状況を更新)”
領域ValueOS現行 CRM状況
決済区分case_settlements.settlement_type(前金/売掛/3社間決済/カード/その他)+card_brand/approval_number/card_statussettlement(5値・カード/承認番号含む)実装済(同等)
発注/請求ワークフローWorkflowEngine.ts(canOrder/canInvoice/現在フェーズを決済区分別ルールで判定)wholesaleFlow(canOrder/canInvoice/次アクション/担当)実装済(同等・当方は FLOW+バケツ表示を拡張)
販売店発注フォームapp/cases/new 等(内部入力)/dealer-order(販売店入力→受付番号→案件化)実装済
卸価格dealer_sales_prices(dealer×product×期間)/master-wholesale-price(仕入先×商品/パッケージ×反映日)実装済(※軸は dealer でなく仕入先。下記突合参照)
商社別軸案件単一 cases/wholesale(別軸・4ビュー切替)実装済
タスクtasks(case_id/status/due/assignee/priority)WholesaleTask(同項目・案件紐付)実装済(本セッション)
経営ダッシュボード売上/粗利/未入金+業務アラート/wholesale サマリー(5本柱+バケツ/決済区分別)実装済(受発注KPIあり)
発注(order)エンティティorders(order_no/date/amount/status) 独立卸案件のフラグ ordered に集約:番号/日付/金額の個別保持なし
請求(invoice)エンティティinvoices(invoice_no/date/due/amount/status) 独立フラグ invoiced に集約:請求書番号/期日/金額なし
入金(payment)エンティティpayments(date/amount/status・一部入金) 独立フラグ paymentReceived(全額)に集約:分割入金・残高消込なし
マスタ経理項目supplier: 締め日/支払サイト/発注方法、products/packages: 既定仕入先(default_supplier_id)、dealer: 与信枠未保持:経理・与信の項目が薄い

項目突合(フィールド対応・ValueOS → 現行 CRM)

Section titled “項目突合(フィールド対応・ValueOS → 現行 CRM)”

出典は ValueOS のアプリコード(insert/型定義。DBスキーマ生成物は同リポに無いため enum は「アプリが送出/表示する値」)。

① 案件 cases ↔ WholesaleCase(商社別軸)/ deals

Section titled “① 案件 cases ↔ WholesaleCase(商社別軸)/ deals”
ValueOS cases現行 CRM突合
case_no(VE-…自動採番)idW-0001…一致
dealer_id → dealersdealer(販売店名文字列)概ね一致(当方は名称直持ち)
order_type(材料のみ/材工/工事のみ/見積相談)なし要検討:発注種別
status(20値の一気通貫)settlement+工程フラグ→wholesaleFlow.bucket表現差(当方は決済別ワークフローで導出)
assigned_userwholesaleFlow.assignee(工程から導出)当方は工程担当を自動割当
priorityなし(案件優先度)要検討
customer_name/phone/site_address/construction_*なし(卸案件は施主情報を持たない)別軸ゆえ意図的に非保持
departmentなし要検討(マネフォ部門連携で使う可能性)
ValueOS orders現行 CRM突合
order_no / order_date / expected_delivery_date / delivered_dateなし(ordered bool のみ):発注書番号・発注日・納期の個別保持なし
order_amount明細合計 wholesaleTotal で代替概ね可
status(未発注/発注済/納期回答待ち/納期確定/一部納品/納品済)ordered/delivered の2フラグ:納期回答・一部納品の中間状態なし

③ 請求 invoices ↔ フラグ invoiced

Section titled “③ 請求 invoices ↔ フラグ invoiced”
ValueOS invoices現行 CRM突合
invoice_no / invoice_date / due_dateなし:請求書番号・請求日・支払期日なし
invoice_amountwholesaleTotal で代替概ね可
status(未請求/作成済/請求済/入金待ち/一部入金/入金済)invoiced bool:請求書ライフサイクルなし

④ 入金 payments ↔ フラグ paymentReceived

Section titled “④ 入金 payments ↔ フラグ paymentReceived”
ValueOS payments現行 CRM突合
payment_date / payment_amountなし(全額入金 bool):分割入金・入金日なし
status(確認待ち/入金確認済/取消)paymentReceived bool:確認待ち/取消なし・残高消込なし

⑤ タスク tasks ↔ WholesaleTask(本セッション実装)

Section titled “⑤ タスク tasks ↔ WholesaleTask(本セッション実装)”
ValueOS tasks現行 CRM WholesaleTask突合
case_id(null可)caseId(W-XXXX/null)一致
titletitle一致
status(未対応/対応中/完了)status(同)一致
due_datedueDate一致
assigned_userassignee一致
priority(高/中/低)priority(同)一致
memomemo一致

→ タスクは ValueOS とフィールド完全一致。将来 Supabase 移行時もそのまま対応可能。

⑥ マスタ(当方に無い経理項目=要検討)

Section titled “⑥ マスタ(当方に無い経理項目=要検討)”
ValueOS現行 CRM突合
suppliers: supplier_type/order_method/closing_day/payment_site/credit_limit仕入先は name/type のみ要検討:締め日・支払サイト・発注方法・与信
dealers: payment_type/credit_limit/default_profit_amount販売店は催事 companies に集約要検討:与信枠
products/packages: default_supplier_id(案件登録時の仕入先自動解決用。dealers の列ではない)明細ごとに仕入先を指定(既定値なし)要検討:既定仕入先の自動解決
dealer_sales_prices: dealer×product×期間卸金額は 仕入先×商品/パッケージ×期間軸差:ValueOS は販売店別、当方は仕入先別+パッケージ対応。用途で使い分け/将来は両軸
supplier_purchase_prices: product×supplier×期間(is_active/日付で有効1件)価格表(部材の仕切)/仕切原価概念一致。発注原価との接続は今後

現行 CRM のみが持つ機能(ValueOS に無い/薄い)

Section titled “現行 CRM のみが持つ機能(ValueOS に無い/薄い)”

催事運営(shifts)/顧客CRM(households)/架電(前確)/チャット/活動/見積(quotes)/手数料条件/価格照合/パッケージ(部材×必須/選択/オプション区分)/決済区分別ワークフローの FLOW(STEP順)+バケツ表示/店舗・施工店・ローン会社マスタ/申請。→ ValueOS は施主情報を持つ単一案件軸、当方は前段CRM+別軸の商社/卸。統合すれば 前段(CRM)+後段(ERP) の一本化。

次アクション(残差の埋め方・優先度)

Section titled “次アクション(残差の埋め方・優先度)”
  1. 【中】発注/請求/入金の「エンティティ化」:現状は卸案件のフラグ。ValueOS 同様に 番号・日付・金額・ステータスを個別に持てば、発注書/請求書の出力・分割入金・残高消込に対応できる。まずは請求・入金から(未収管理が実務直結)。
  2. 【中】マスタの経理項目:suppliers に締め日/支払サイト、dealers に与信枠、products/packages に既定仕入先(default_supplier_id 相当)。→ 発注タイミング・与信チェックの自動化に効く。
  3. 【低】案件の付帯項目:order_type・priority・department(マネフォ部門連携の布石)。
  4. 【将来】 Supabase 移行(ValueOS と同スキーマ方向)、マネフォ連携(PL/CF)、SaaS化。

※ ValueOS も WorkflowEngine.tsSETTLEMENT_RULES)で決済区分別に canOrder/canInvoice を機械判定している。当方 wholesaleFlow の方針(決済区分別に canOrder/canInvoice を機械判定・FLOW+バケツ表示で拡張)は維持・発展させる。