0

Webストアを作成するためにSitecoreのEコマースモジュール(およびSitecore 6.5rev。120706-別名「Update5」)を使用する必要があるプロジェクトに取り組んでいます。私が実装しようとしている機能の1つは、一般的なプロモーション/割引コードシステムです。顧客はチェックアウト時に「送料無料」、「20%オフ」などの割引を付与するコードを入力します。現在、私は探していますこれをどのように達成できるかについてのガイダンス(高レベルのソリューション、いくつかの疑似アイデア、レビューへの参照など)。


概要:

私が探しているのは、ユーザーがチェックアウトラインの前の段階でプロモーションコードを入力したかどうかを検出し、入力した場合はそのプロモーションコードが何であるかを判断する方法です。


これまでの進捗状況:

すべてのSitecoreEコマースサービス(SES)ドキュメント、特に「SES Order Line Extension」ドキュメント(このタスクを実行するには変更/拡張する必要があると思います)を徹底的に確認しました。

さらに、Sitecoreコミュニティの記事「 SitecoreEコマースの拡張-価格設定」を徹底的に確認しました。これは、割引を静的に適用するための便利なガイドになると思いますが、動的に割引を適用する方法についてはあまり説明していません。

これらのドキュメントを確認した後、私は次の可能な高レベルのソリューションを考え出しました。

  1. プロモーションに関連するすべてのデータ(割引率、送料無料、コードなど)を保持するプロモーションコードを表すテンプレートを作成します。
  2. 次に、グローバルな「プロモーションコード」アイテムフォルダ内のアイテムへのリンクを保持する別のテンプレート(製品検索グループテンプレートに基づく)を作成します。
  3. 次に、新しいテンプレートの商品検索グループ機能を使用して、割引を適用する商品を選択します。
  4. チェックアウトのソースコードで、コードが入力されているかどうかをチェックするクラスを作成し、入力されている場合は、何らかの方法で残りのチェックアウトプロセスを実行します。これは私が立ち往生しているところです。


詳細:

  • クッキーを使用しない
  • GETリクエストはありません
  • チェックアウトプロセス中にSitecoreデータベースのアイテムを変更/作成/削除しない(たとえば、割引が適用されたことを通知するためにチェックアウト中に割引アイテムのフィールドを操作しない)
  • C#の範囲内にとどまる必要があります


最後の注意:

私が見つけた/進行中の情報でこの投稿を更新します。

私は、この問題の実行可能な解決策として役立つ高レベルの回答に加えて、関連性があり、詳細で、示唆に富む、または他の方法で私にとって有用であり、他の人にとって潜在的に有用であるすべての回答をアップグレードします。あなたのアイデアが私を助けないとしても、それが他の誰かを助けると思うなら、私はそれをアップグレードします。


よろしくお願いします。:)

4

2 に答える 2

0

私は自分のオフィスの周りにこの質問へのリンクを送信し、Stack Overflowアカウントを持っていない同僚の1人が、彼に代わって投稿しているこの高レベルのソリューションを提案しました。


Cookieを使用できない場合は、入力したコードをなんらかの方法でサーバーにポストバックし、セッションに保存します。

UpdatePanelコントロールまたは一部のJSを使用できます


これは私の答えではなく、私はまだより多くの潜在的な解決策を探していることに 注意してください。

于 2012-09-05T15:36:14.933 に答える
0

私は過去にSESを使用した経験のある別の同僚と一緒に作業していましたが、彼と私は名前空間DiscountCodeでフィールドを見つけることができました。Sitecore.Ecommerce.Ordersこのフィールドを実際に使用するメソッドはまだ見つかりません(そして、その特定の名前空間にはメソッドがないことを知っています)が、割引コード機能が少なくとも一部では、に組み込まれていることを示しています。モジュール。

それはドキュメントになく、これを参照していることがGoogleで見つかった結果がないため、この質問を削除するのではなく、そのままにしておきます。それは良い解決策であるため、私は他の答えを受け入れます。DLLにさらに多くの宝物が見つからない限り、おそらく実装するでしょう。

于 2012-09-10T20:43:59.103 に答える