MLM アプリケーションを設計しようとしています。それは、人物 A が 3 人をスポンサーし、B、C、D、および B、C、D のそれぞれがさらに 3 人をスポンサーする、というように動作します。
支払いを計算するために、クライアントは 3 人の最後の人、たとえば D に基づいてグラフをトラバースすることを望んでおり、合計支払いは、D の下にいる人の数に特定の金額を掛けたものに基づいています。ここでの課題は、各レベルで n-1 人のみをカウントする必要があるという制約です。n は 3 で最大になります。これが MLM 戦略であるためです。
これまでのところ、プロジェクトに組み込みの Neo4j を使用していますが、関係に基づいてトラバースし、bread_first 検索を実行して現在の深さを取得できることはわかっていますが、トラバーサルの各レベルで人数から 1 を引いた数をどのように数えますか? カスタムメソッドを実装する必要があるようですが、正しい方向に向けるには助けが必要です。