← ポータル ← 会員管理 ← サポーター → 要約版 → 組織図

🎯 担当者自動算出ロジック

スタッフ別関係値スコアから「担当者」を機械的に算出する仕様
📄 ドキュメント ID: primary-owner-logic 🚧 status: draft 📅 作成: 2026-05-30 🔗 関連: user-levels, members 📂 正本: docs/requirements/primary-owner-logic.md

関係人口 担当者自動算出ロジック

目的: 画面上で見える「担当者」を、スタッフ別関係値スコアから説明可能な形で自動表示する。
理事向けの短い説明は 要約版 を先に見てください。
ここは「なぜそうなるか」を細かく確認したい人向けの詳細版です。

1. 要求 (Why)

関係者・ステークホルダー

2. 要件 (What — 受け入れ基準)

2.1 スコア体系

2.2 担当者カテゴリ

カテゴリ該当者定義
CORE
(基本担当 3 名)
小澤 / 藤原 / 佐々生担当者候補の中心グループ
PRESIDENT
(負担軽減対象 1 名)
鈴木鈴木しか候補がない場合に表示
OTHER_DIR
(他理事・5 名)
渡部 / 畠中 / 中村 / 吉田 / 正樹CORE で候補が出ない時の次候補

※ 瀬川は 2026-05-30 元理事化のため算出対象外(既に削除済)

2.3 算出アルゴリズム

Step 1: 既に担当者がある場合はそれを優先する
Step 2: 9 名のスタッフ評価を読む
Step 3: Z と空欄は候補外にする
Step 4: S > A > B > C の順で最上位を採用する
Step 5: 同点なら候補を / 区切りで複数表示する
Step 6: 1 人も候補がいなければ「未定」

2.4 補足

2.5 算出タイミング

方式説明対象
A (保存時即時算出)members.html の保存ボタン押下時、サーバー側で算出 → 画面に「担当者」を返す個別保存時
B (一括算出 endpoint)既存 472 件に対して 1 回限り GET /admin/recalc-primary-owners(IT 管理者のみ)で全件再算出 → Notion 一括 PATCH全件再算出時

※ 定期バッチは導入しない(件数変動は保存時に再算出で十分)

2.6 保存先

2.7 既存バグ修正

2.8 UI 変更

2.9 一括算出仕様


3. 実装 (How)

3.1 関連ファイル

3.2 API エンドポイント

3.3 Notion スキーマ変更

新規列(手動 or /admin/ensure-primary-owner-column で確保):

3.4 外部依存

3.5 既知の制限・残課題

  1. 件数情報のクライアント取得: 保存時の件数把握はサーバー側で実施(クライアントへの fetch なし)
  2. OTHER_DIR 同点 tie-breaker: 初期実装は配列順(渡部 → 畠中 → 中村 → 吉田 → 正樹)。運用後に固定優先順位を再決定する場合は要件追記
  3. 算出順序による偏り: 初期実装は単純 1 パス。集計結果に偏りが大きければパス 2 リバランスを後追加

4. 変更履歴


📌 正本: 本 HTML は docs/requirements/primary-owner-logic.md の内容を表示用に整形したものです。仕様変更時はマークダウンを正本とし、本 HTML も同期更新してください。