サブスクリプションベースのサービスプロバイダーをモデル化し、「蒸気ロック」のケースを実行しようとしています。サブスクリプションベースのサービスのデータモデル
+---------------+ +-----------------+ +----------+
| Packages |<--- | PackageServices | ---> | Services |
+---------------+ +-----------------+ +----------+
^
|
+---------------+ +----------+
| Subscriptions |---> | Users |
+---------------+ +----------+
はしかし、各サービスは、独自のユーザー定義の設定を持っている - と、各サービスがあります。各パッケージのレベルが1つ以上のサービスが含まれている - 私は、ユーザーがさまざまなサービスのパッケージに加入して、次のモデルを定義していますサービスデータを格納する他のエンティティの関連する配列を有する。特定のユーザーの各サービスのデータエンティティを処理することはできますが、設定テーブルで困惑しています。私は、ユーザーとサービスに鍵を握る "ServiceSettings"テーブルを作成することを考えましたが、それはちょっと変わったようです。このアプローチでは、次の質問が表示されます。
- パッケージをアップグレードして新しいサービスを入手するとどうなりますか?
- 新しいServiceSettingsはどのように設定または制限され、ユーザーはそれに従属しているサービスのみに制限されますか?
- 新しいサービスを追加するとどうなりますか?
私は適切な道にいるのですか、それとも私が行方不明と思われる別の選択肢ですか?
ありがとうございます!
私は混乱しています。顧客はサービスから選択して独自のパッケージを作成できますか?それはala-cartか、あらかじめ作られていますか? ala-cartがpackageである場合サービス選択された顧客が選択できるオプションとサブスクリプションは選択されたパッケージサービスへの関連付けですか?あなたが新しいサービスを出してそれをパカクジに追加した場合、顧客はデフォルトでそれを取得しません(あるいはそうするかもしれません、それはビジネス上の決定です)。 – xQbert
パッケージは関連するサービスに関してあらかじめ定義されます。新しいサービスを追加するという問題に関して、私は既存のパッケージを拡張する能力を考えていました。これは現在のすべてのサスペクティブに適用されます。 – BradBrening
たとえば、顧客1は「パッケージ1」に加入し、5つのサービスを持つことができます。顧客2はパッケージ2に加入し、パッケージ1 + 3と同じサービスを提供します。パッケージ内のこれらのサービスには、ユーザーごとに(またはサブスクリプション毎に)設定された雑多な設定があります。 – xQbert