Partner Web
パートナー向けWebアプリケーション(partner-web)について説明します。
概要
partner-webは、パートナー(店舗・企業)がプラットフォーム上で情報発信を行うためのWebアプリケーションです。パートナーがログイン後、自身の情報管理、投稿管理、分析データの確認、キャスト管理などを行うことができます。
技術スタック
- フレームワーク: Next.js 15.5.4
- UI: React 19.1.0
- 言語: TypeScript
- ポート: 開発環境では
4101(本番環境はhttps://partner.bazbii.app)
アクセス
- 開発環境:
http://localhost:4101 - 本番環境:
https://partner.bazbii.app(将来実装)
主要機能
1. パートナー情報管理
パートナーの基本情報を管理します。
管理可能な情報:
- 基本情報: 店舗名、所在地、営業時間、電話番号、メールアドレス
- プロフィール: 店舗説明文、プロフィール画像、カバー画像
- カテゴリ: 店舗カテゴリ(レストラン、カフェ、小売店など)
- 位置情報: 住所、緯度経度、H3インデックス
機能:
- 情報の編集・更新
- プレビュー表示
- 変更履歴の確認
2. 分析ダッシュボード
パートナーのパフォーマンスを可視化します。
表示される分析データ:
基本指標
| 指標 | 説明 |
|---|---|
| 投稿数 | 投稿した総数(期間別) |
| 閲覧数 | 投稿の合計閲覧数 |
| エンゲージメント数 | リアクション(いいねなど)の合計数 |
| エンゲージメント率 | エンゲージメント数 / 閲覧数 |
| リーチ数 | 投稿が表示されたユニークユーザー数 |
時間別分析
- 日次グラフ: 1日ごとの投稿数、閲覧数、エンゲージメント数
- 時間帯別グラフ: 時間帯ごとの閲覧数・エンゲージメント数
- 曜日別グラフ: 曜日ごとのパフォーマンス
投稿別分析
- 人気投稿: エンゲージメント数の多い投稿
- 閲覧数ランキング: 閲覧数の多い投稿
- 投稿タイプ別分析: 投稿タイプ(空席、混雑、売切など)ごとの効果
エリア分析
- 閲覧エリア分布: 閲覧したユーザーの位置情報分布
- H3セル別分析: H3セル単位でのパフォーマンス
- リーチ範囲: 投稿がリーチしたエリアの可視化
プラン別機能:
- フリープラン: 基本指標のみ
- ベーシックプラン: 基本指標 + 時間別分析
- プロフェッショナルプラン: 全機能(エリア分析、詳細分析を含む)
3. 投稿管理
パートナーが作成した投稿を管理します。
機能:
- 投稿一覧: すべての投稿を一覧表示
- 投稿作成: 新しい投稿の作成
- 投稿編集: 既存投稿の編集・削除
- 投稿スケジュール: 投稿の予約投稿(将来実装)
- 投稿タイプ: 空席、混雑、売切、イベント、その他
投稿カード表示情報:
- 投稿タイプ
- 投稿内容(テキスト)
- 作成日時
- 閲覧数、エンゲージメント数
- 編集・削除ボタン
4. キャスト管理
パートナー配下のキャスト(投稿権限を持つスタッフ)を管理します。
キャストとは
キャストは、パートナーに所属するスタッフで、投稿権限を持つユーザーです。店長、スタッフ、マネージャーなど、複数のキャストが同じパートナーアカウントに投稿することができます。
キャスト一覧
表示情報:
- キャスト名(表示名)
- メールアドレス
- 権限レベル(投稿権限の範囲)
- 最終ログイン日時
- 投稿数(期間別)
キャスト権限管理
権限レベル:
| 権限レベル | 説明 | 可能な操作 |
|---|---|---|
| オーナー | パートナーアカウントの完全な管理権限 | すべての操作(情報変更、キャスト管理、投稿削除など) |
| 管理者 | 投稿管理とキャスト管理の権限 | 投稿作成・編集・削除、キャスト追加・編集・削除、分析閲覧 |
| 編集者 | 投稿管理の権限 | 投稿作成・編集・削除、分析閲覧 |
| 投稿者 | 投稿作成のみの権限 | 投稿作成のみ |
権限管理の機能:
- キャスト追加: 新しいキャストを招待(メールアドレスで招待)
- キャスト編集: 権限レベルの変更、表示名の変更
- キャスト削除: キャストの削除(オーナー・管理者のみ)
- 招待管理: 招待中のキャストの確認・キャンセル
キャスト招待フロー
5. パートナー親子関係管理
パートナー同士は親子関係を持つことができ、チェーン店のどの店舗かを表現できます。
親子関係の概念
親パートナー: チェーン店の本社やフランチャイズ本部 子パートナー: 各店舗(フランチャイズ店舗)
例:
親子関係の機能
親パートナーの機能:
- 子パートナー一覧: すべての子パートナーを一覧表示
- 統合分析: すべての子パートナーの分析データを統合して表示
- 一括管理: 複数の子パートナーに対して一括で操作(一部機能)
- 子パートナー追加: 新しい子パートナーを追加・招待
子パートナーの機能:
- 親パートナー情報: 親パートナーの基本情報を表示
- 独立した管理: 自分自身の情報・投稿・キャストを独立して管理
- 親へのレポート: 親パートナーへのデータ共有(設定可能)
親子関係の設定
親子関係の確立:
- 親パートナーが子パートナーを招待(または既存パートナーを子として設定)
- 子パートナーが招待を受け入れる
- 親子関係が確立
親子関係の解除:
- 親パートナーのみ解除可能
- 解除後は独立したパートナーとして運用
権限とデータの共有
データ共有レベル:
| 共有項目 | 親から子 | 子から親 | 説明 |
|---|---|---|---|
| 基本情報 | ✅ | ✅ | 店舗名、所在地など |
| 投稿内容 | ❌ | ✅ | 子パートナーの投稿は親でも閲覧可能 |
| 分析データ | ✅ | ✅ | 統合分析で親が全店舗のデータを閲覧 |
| キャスト情報 | ❌ | ❌ | 各パートナーで独立管理 |
| 設定情報 | ✅ | ❌ | 親が子の一部設定を管理可能 |
権限の継承:
- 親パートナーのキャストは、子パートナーの投稿を閲覧可能(権限設定により制御可能)
- 子パートナーのキャストは、親パートナーの管理操作は不可
6. プラン管理
パートナーのプラン情報を確認・変更します。
表示情報:
- 現在のプラン(フリー、ベーシック、プロフェッショナル)
- プランに含まれる機能一覧
- 使用状況(投稿数、キャスト数などの制限)
- プラン変更ボタン(アップグレード/ダウングレード)
プラン変更フロー: プラン管理画面から月額プランを変更できます。
画面構成
プラン変更フロー:
- プラン選択画面で希望のプランを選択
- プラン比較画面で機能の違いを確認
- 支払い情報の入力(アップグレードの場合)
- プラン変更の確定
詳細はマネタイズを参照してください。
メインナビゲーション
画面構成は上記のmermaid図を参照してください。
主要画面
1. ダッシュボード
パートナーの全体像を把握するためのホーム画面。
表示内容:
- サマリーカード: 本日の投稿数、閲覧数、エンゲージメント数
- グラフ: 直近30日間のパフォーマンストレンド
- 最近の投稿: 最近作成した投稿の一覧
- アクションアイテム: 承認待ちのキャスト招待など
2. 投稿管理画面
表示モード:
- 一覧表示: すべての投稿をカード形式で表示
- カレンダー表示: カレンダー上に投稿を表示(将来実装)
フィルター:
- 投稿タイプ(空席、混雑、売切など)
- 期間(今日、今週、今月、カスタム期間)
- キャスト(どのキャストが作成した投稿か)
3. 分析画面
タブ構成:
- 概要: サマリー指標とトレンドグラフ
- 投稿分析: 投稿別の詳細分析
- エリア分析: リーチエリアの分析(プロフェッショナルプランのみ)
- 時間分析: 時間帯・曜日別の分析
4. キャスト管理画面
表示内容:
- キャスト一覧(テーブル形式)
- 追加ボタン(オーナー・管理者のみ)
- 各キャストの詳細情報・権限設定
5. パートナー情報画面
タブ構成:
- 基本情報: 店舗名、所在地、連絡先など
- プロフィール: 説明文、画像など
- 設定: 通知設定、プライバシー設定など
6. 親子関係管理画面(親パートナーのみ)
表示内容:
- 子パートナー一覧
- 統合分析ダッシュボード
- 子パートナー追加・招待機能
認証と権限
ログイン方式
- メールアドレス + パスワード: 基本のログイン方式
- 招待からのログイン: キャストとして招待された場合の初回ログイン
セッション管理
- JWT認証を使用
- トークンの自動リフレッシュ
- セキュアストレージ(HTTPS Cookie)に保存
権限制御
各画面・機能は権限レベルに応じて表示・操作が制限されます。
権限チェック:
- フロントエンド: UI表示の制御
- バックエンド: APIレベルでの権限チェック(Gateway/API Server)
詳細はセキュリティを参照してください。
API連携
主要エンドポイント
パートナー向けAPIは以下のようなエンドポイントを提供します(予定):
- パートナー情報:
GET/PUT /v1/partner/info- パートナー情報の取得・更新 - 投稿管理:
GET/POST/PUT/DELETE /v1/partner/posts- 投稿のCRUD操作 - 分析データ:
GET /v1/partner/analytics- 分析データの取得 - キャスト管理:
GET/POST/PUT/DELETE /v1/partner/casts- キャストの管理 - 親子関係:
GET/POST/DELETE /v1/partner/relationships- 親子関係の管理
詳細はAPI仕様を参照してください。
実装状況
Phase 1: MVP(予定)
- ⏳ パートナー情報管理
- ⏳ 基本的な投稿管理
- ⏳ 簡単な分析ダッシュボード
- ⏳ キャスト管理(基本機能)
Phase 2: 機能拡張(予定)
- ⏳ 詳細な分析機能
- ⏳ 親子関係管理
- ⏳ 投稿スケジュール機能
- ⏳ エリア分析(プロフェッショナルプラン)
Phase 3: 高度な機能(予定)
- ⏳ 自動レポート生成
- ⏳ API連携機能
- ⏳ カスタムダッシュボード
- ⏳ バッチ操作機能
関連ドキュメント
- フロントエンド概要 - フロントエンド全体の構成
- フロントエンドアーキテクチャ - アーキテクチャの詳細
- マネタイズ - パートナー向けプランと価格
- API仕様 - 使用するAPIの詳細
- セキュリティ - 認証・認可の詳細