Webストアを作成するためにSitecoreのEコマースモジュール(およびSitecore 6.5rev。120706-別名「Update5」)を使用する必要があるプロジェクトに取り組んでいます。私が実装しようとしている機能の1つは、一般的なプロモーション/割引コードシステムです。顧客はチェックアウト時に「送料無料」、「20%オフ」などの割引を付与するコードを入力します。現在、私は探していますこれをどのように達成できるかについてのガイダンス(高レベルのソリューション、いくつかの疑似アイデア、レビューへの参照など)。
概要:
私が探しているのは、ユーザーがチェックアウトラインの前の段階でプロモーションコードを入力したかどうかを検出し、入力した場合はそのプロモーションコードが何であるかを判断する方法です。
これまでの進捗状況:
すべてのSitecoreEコマースサービス(SES)ドキュメント、特に「SES Order Line Extension」ドキュメント(このタスクを実行するには変更/拡張する必要があると思います)を徹底的に確認しました。
さらに、Sitecoreコミュニティの記事「 SitecoreEコマースの拡張-価格設定」を徹底的に確認しました。これは、割引を静的に適用するための便利なガイドになると思いますが、動的に割引を適用する方法についてはあまり説明していません。
これらのドキュメントを確認した後、私は次の可能な高レベルのソリューションを考え出しました。
- プロモーションに関連するすべてのデータ(割引率、送料無料、コードなど)を保持するプロモーションコードを表すテンプレートを作成します。
- 次に、グローバルな「プロモーションコード」アイテムフォルダ内のアイテムへのリンクを保持する別のテンプレート(製品検索グループテンプレートに基づく)を作成します。
- 次に、新しいテンプレートの商品検索グループ機能を使用して、割引を適用する商品を選択します。
- チェックアウトのソースコードで、コードが入力されているかどうかをチェックするクラスを作成し、入力されている場合は、何らかの方法で残りのチェックアウトプロセスを実行します。これは私が立ち往生しているところです。
詳細:
- クッキーを使用しない
- GETリクエストはありません
- チェックアウトプロセス中にSitecoreデータベースのアイテムを変更/作成/削除しない(たとえば、割引が適用されたことを通知するためにチェックアウト中に割引アイテムのフィールドを操作しない)
- C#の範囲内にとどまる必要があります
最後の注意:
私が見つけた/進行中の情報でこの投稿を更新します。
私は、この問題の実行可能な解決策として役立つ高レベルの回答に加えて、関連性があり、詳細で、示唆に富む、または他の方法で私にとって有用であり、他の人にとって潜在的に有用であるすべての回答をアップグレードします。あなたのアイデアが私を助けないとしても、それが他の誰かを助けると思うなら、私はそれをアップグレードします。
よろしくお願いします。:)