ロードマップ
位置づけ: 全体を横断する計画ページ(2026-09-10 全面改訂)
- 範囲: A 共通基盤・認証・権限/B 顧客・商談/C 活動・タスク・架電・申請(テンプレート方式)/L データ抽出(CSV・参照API)/M ファイル保管/D マスタ残作業(済)/J データ移行/通知。催事・卸・見積・KPI・チャットは範囲外。
- 進め方(9/9 合意): 要件定義は Ouver 主導。モックを先に作り、田中さんが触って差分を返す。定例では「業務フロー → 設計」の照合を Ouver が案内。現場担当者は田中さんがピックしてスポット参加。
- 合格基準: 業務が回ること。10月中に設計書を確定し、11月末に現場投入、12月に研修・検証、年末休業中に移行、1月切替。
- 原則: 7月〜8月の定例で決まったことは再確認せずに実装する(「ヒアリング済みの相関的なものにほぼ網羅されている」=9/9 田中)。未決は勝手に足さない。
現在地(2026-09-10・本番 v0.3.1)
Section titled “現在地(2026-09-10・本番 v0.3.1)”| 領域 | 済 | 残 |
|---|---|---|
| A | Google ログイン、profiles(role/agency/dept)、論理削除、変更履歴、MasterScreen 定型、対応状況ダッシュボード、CI/CD | @valueecology.jp 以外の拒否、5段ロール、代理店の招待・発行UI、職能ロールのマスタ化 |
| B | 世帯・人物・商談・ステータス履歴・遷移ルール・楽観ロック・採番・重複警告・一覧/詳細 | 取消トースト、商材明細、工程マイルストーン、金額の「適用」ボタン |
| C | — | 活動ログ、タスク(前確の自動生成・連動)、架電ボード、太陽光調査設計タスク、申請(テンプレート) |
| L | マスタ・顧客一覧の列選択 CSV | 商談の項目選択 CSV、参照 API |
| M | 代理店の書類は Drive URL 文字列 | 添付(Storage)、アーカイブ |
| D | 6マスタ完成(権限ガード・採番統一・FK) | 施工店マスタ(登録のみ) |
| J | 一括 TSV 取込(マスタ) | legacy_id、対応表、ETL、リハーサル |
| 通知 | SES アダプタの土台 | Slack 一方向通知(台帳)、キュー |
週次の区切りで並べる。各行は「決定済み=そのまま実装」か「判断待ち」かを明示する。
第1週(9/10〜9/17): レビュー導線を作り、商談を日常で回せるようにする
Section titled “第1週(9/10〜9/17): レビュー導線を作り、商談を日常で回せるようにする”| # | 作業 | 根拠 | 状態 |
|---|---|---|---|
| 1-1 | 田中さん用アカウント(hq)と共有環境のサンプルデータ(世帯・人物・商談を各10件程度、ステータス散らし) | 9/9 進め方、8/26 共有環境 | 決定済み |
| 1-2 | 質問シート 案1版(範囲・画面ごとに「触ってほしい所」「確認したい点」を用意) | 8/20 質問シート運用 | 決定済み |
| 1-3 | 定例資料「業務フロー → 設計」照合版(アポ〜完工の業務フローに、実装済み画面と未実装を対応付ける) | 9/9 定例の型 | 決定済み |
| 1-4 | 活動ログ(DealNote: date/author/text、商談詳細のタイムライン) | 7/8、crm-core §DealNote | 決定済み |
| 1-5 | 案件タスク(DealTask: 前確/太陽光調査設計、status 6値、due、result、driveUrl、gate)+新規案件で前確タスク自動生成+担当割当でアポ→前確、OK→商談、NG→失注(理由必須)、不出→再架電 | 7/8、tasks.md | 決定済み |
| 1-6 | 架電ボード /calls(未完の前確タスクを期限超過/本日/以降で並べ、担当割当と結果記録。モバイルは tel: 発信)。担当候補は未完タスク数の少ない順に提示、割振は人 | 7/8、tasks.md | 決定済み |
| 1-7 | 工程マイルストーン(現調・着工・完工・連携・設備認定・入金の6項目、未/進行/完了+日付。商談ごと jsonb) | 7/8「横持ち→縦持ち」、9/9「完工まで追う」 | 見積の案1に明示なし。小さいので含めて進める(判断 D1) |
| 1-8 | @valueecology.jp 以外の Google ログイン拒否(現状は hq 付与のみで拒否が TODO) | architecture.md | 決定済み |
| 1-9 | 取消トースト(元に戻す)の共通化。失注・前確NG など外部作用のみ確認ダイアログ | 7/8 誤操作ガード | 決定済み |
第1週の終わりに v0.4.0 を打ち、次回定例で「顧客登録 → 商談 → 前確架電 → 商談 → 成約 → 工程」を田中さんに通してもらう。
第2週(9/18〜9/24): 何を売ったかを持ち、データを外に出せるようにする
Section titled “第2週(9/18〜9/24): 何を売ったかを持ち、データを外に出せるようにする”| # | 作業 | 根拠 | 状態 |
|---|---|---|---|
| 2-1 | 商材明細(DealItem: PV/BT/EQ/IH/AC/付帯、maker/model/spec/warranty/supplier/deliveryDate。商品マスタの型番連携) | 7/8「横持ち→縦持ち」 | 決定済み |
| 2-2 | 商談の項目選択 CSV 出力(顧客・人物・商談・明細・工程を横持ちに展開、権限 canExport=社内のみ) | 8/26、9/2 | 決定済み |
| 2-3 | 参照 API v1(読み取り専用。APIキー(ヘッダ)+レート制限。/api/v1/customers /deals /activities、JSON、更新日で差分取得) | 9/2、9/9「API で抽出して GAS で自作」 | 形は Ouver 提案で進める(判断 D3) |
| 2-4 | Slack 一方向通知の台帳+送信(Incoming Webhook。まず前確の依頼・結果・不出再架電、成約、保留の再連絡) | 7/8 台帳、integrations.md | 決定済み。Webhook URL は VE から受領 |
| 2-5 | 施工店マスタ(登録のみ。type 自社/他社、tool CRMチャット/ANDPAD/LINE、area) | 8/20 | 決定済み |
| 2-6 | legacy_id 列の新設と「旧コード→新コード対応表」の叩き台 | migration-plan.md | 決定済み |
第2週の終わりに v0.5.0。
第3週(9/25〜10/1): 申請と外部ユーザー
Section titled “第3週(9/25〜10/1): 申請と外部ユーザー”| # | 作業 | 根拠 | 状態 |
|---|---|---|---|
| 3-1 | 申請テンプレート(必要書類の組合せをマスタで管理し、案件登録時にパターン選択。初期値は試作の9種と APPLICATION_DOC_MASTER。公的書類は取得日から90日で期限、期限順の /applications) | 9/2、crm-core §Application | 9/10 ヒアリング結果を反映してから(判断 D2) |
| 3-2 | 添付ファイル(申請書類の写真・PDF を Supabase Storage に署名付き URL で保管。案件フォルダは Drive リンクのまま) | architecture.md、integrations.md | 置き場の確定待ち(判断 D4)。Storage 側の実装は先行可 |
| 3-3 | 代理店の招待制アカウント発行・変更 UI(inviteUserByEmail、契約終了で一括無効化) | 8/26、architecture.md | 決定済み |
| 3-4 | 5段ロールプリセット(ouver_admin/管理者/営業/事務・発注申請/代理店)+機能単位のオンオフ | 8/26 | 段の中身は Ouver 提案で進める(判断 D5) |
| 3-5 | 太陽光調査設計タスク(依頼→候補負荷順→割当→Slack→Drive 成果物→営業へ通知) | tasks.md | 決定済み |
第3週の終わりに v0.6.0。ここまでで「アポ獲得から完工まで顧客を追う」の骨格が揃う。
第4〜6週(10月): 契約後と設計書確定
Section titled “第4〜6週(10月): 契約後と設計書確定”| # | 作業 | 根拠 | 状態 |
|---|---|---|---|
| 4-1 | 契約後チェック(サンキューコール、ローン審査、審査確認コール、団信。成約時に自動生成) | 7月 P4/P5、crm-core §PostContract | 案1に含めるか要判断(D1) |
| 4-2 | 施工フラグ(施工店・ツール・依頼書・現調・日程・写真格納・完了報告・完工書・連携) | 7月 P4/P5 | 同上 |
| 4-3 | 決済・入金予定(現金/ローン、2社間/3社間、完工書回収日+営業日で入金予定、超過強調) | 7月 P4/P5、ローン会社マスタの使い道 | 同上 |
| 4-4 | 自社案件の発注(発注期限=着工日−リードタイム、納品確認欄なし) | 7月 P4/P5 | 同上 |
| 4-5 | 設計書の確定(10月中)。質問シートの残件を消化し「明記部分=責任範囲」を固める | 8/19 | — |
| 4-6 | 移行リハーサル準備(旧BT DB のスキーマ・品質調査、対応表レビュー、クレンジング疑義リスト) | migration-plan.md | 旧DBアクセスの受領待ち |
11月〜1月
Section titled “11月〜1月”- 11月: 現場投入(11月末)、移行リハーサル複数回、研修資料。
- 12月: 研修・検証、データ凍結(年末休業初日)、本移行。
- 1月: 年始営業初日に切替。旧DBは読み取り専用で保持。
判断待ち(提案付き)
Section titled “判断待ち(提案付き)”止まらないよう、それぞれに Ouver の既定案を置く。反対がなければ既定案で進める。
| ID | 論点 | 決める人 | 既定案 |
|---|---|---|---|
| D1 | 「完工まで追う」の範囲。工程マイルストーンは案1に含めるか。契約後チェック・施工・決済・発注(7月に業務理解済み)を案1に含めるか、追加見積か | 市原 → 田中 | 工程マイルストーンは含める(小)。契約後チェック以降は「案1+α」として10月に判断。見積書の A/B/C/D 記号対応の確定とセット |
| D2 | 申請テンプレートの粒度(申請種別単位か案件パターン単位か、年度切替の扱い) | 市原(9/10 ヒアリング反映)→ 田中 | 申請種別ごとに必要書類テンプレート、案件には複数申請を紐付け。年度は書類マスタの有効期間で表現 |
| D3 | 参照 API の形(認証・エンドポイント・レート・公開範囲) | 市原 提案 → 田中 | APIキー(ヘッダ)+読み取り専用+更新日差分。ダッシュボードは VE 側 GAS |
| D4 | ファイルの置き場(Drive 継続 か CRM/Storage か)、アーカイブ閾値 | 市原 → 田中(GAS 閲覧権限の付与) | CRM が管理する書類(申請)は Storage、案件フォルダは Drive リンク。GAS 精査後に確定 |
| D5 | 5段ロールの中身、代理店の閲覧範囲、URL 直打ちは 404 | 市原 提案 → 田中 | ouver_admin/管理者/営業/事務・発注申請/代理店。外部ロールは金額列を消す方式 |
| D6 | 通知の実送信手段(Slack/メール/LINE の会社別振り分け) | 市原 | Slack Incoming Webhook 1本から。メール・LINE は後 |
| D7 | 在庫の持ち方(8/20=個数入力 vs 試作=3状態) | 田中 | 8/20 の決定どおり個数。実装を要確認 |
| D8 | 並行運用の有無(移行計画=なし vs 9/2=現行運用と併用) | 田中・市原 | 切替日まで併用、切替後は旧DB読み取り専用 |
| D9 | 催事・卸を物理削除したことのクライアント共有 | 市原 | 次回定例で共有(退避先あり) |
| D10 | Supabase のプラン(free は7日で自動停止) | 市原 | 現場投入前に Pro へ |
VE から受け取るもの
Section titled “VE から受け取るもの”- Slack Incoming Webhook(2-4)
- GCP の OAuth 設定(Google ログインの本番有効化)
- GAS の閲覧権限(Drive 格納の精査、D4)
- 旧BT社 DB へのアクセス(4-6)と、7月の待ち物(納期回答メールのサンプル、契約書類フォルダの完成形、経理2シート)
- 9/10 申請ヒアリングの内容(3-1)
- 現場担当者のスポット参加(前確担当・申請担当を優先)