注文を個別の注文に分割し、UPSとフェデックス、異なる起点住所を使用して個別に配送を計算する


8

顧客が私たちの店に来て複数の商品をチェックアウトするとき、いくつかの要因に基づいて送料を計算するモジュールを作成する必要があります。私の調査から、次のことが起こるはずだと判断しました。

最初に、送料を計算するために、カートアイテムを異なる注文に分割する必要があります。注文を「ベンダー」属性値でソートしたい。「ベンダー」は、すべての単純な製品に適用できるシステムに追加した属性です。カートに、「vendor」の値が「1」のピンクのシャツ、「vendor」の値が「1」の鉛筆、そして「vendor」の値が「2」の青いシャツがあるとします。「ベンダー」の値が「1」のアイテムはすべて1つのオーダーである必要がありますが、「ベンダー」の値が「2」のアイテムは別のオーダーである必要があります。私はこの別の質問がこのジレンマに答えるのを見ますが、別の問題を提起します。

次に、MagentoのデフォルトのUPSおよびFedexの配送機能を使用して、「仕入先」の値番号(別のデータベーステーブルに格納されている)によって決定される起点住所を使用して、配送料を計算する必要があります。 どんな提案も歓迎します!

私はここここから始めるためにコードスニペットを使用しています。

おそらくいくつか質問がありますが、最初の質問は上記の太字の質問です。

更新 私がやろうとしていることを行うには、複数の出荷のmagentoコアモジュールをオーバーライドするのが最善であると判断しました。マルチベンダーのMagento機能を操作して、「ベンダー」属性に基づいて注文のアイテムを出荷に分割するためにどこに何を配置するかを教えてください。私はこれで苦労しています。


1
Magentoのマルチシッピングはこれをネイティブで行います。おそらく、顧客に表示せずにマルチシッピング機能を利用できますか?
philwinkle 2013

トピック外:古い未解決の質問に対する回答を受け入れるか、締めくくっていただけませんか?ベータ期間中は回答率を上げるように努力しています。ありがとう。
philwinkle 2013

1
私は、マルチシッピングと受け入れられない答えの両方を調べます。多くの場合、私は何か他のものに移ってそれに戻ってくるので、受け入れません。それでも、見逃していないかどうかを確認します
CaitlinHavener 2013

もう1つの方法は、現在作成しているベンダータイプの機能も組み込んだUnirgy uDropshipのようなものを実装することです。しかし、それはベンダーに出荷のためのポータルを提供し、出荷ラベルなどを生成します。私は働きませんし、Unirgyの承認も受けていません。
philwinkle 2013

1
ドロップシップ拡張機能を使用したくありません。私ができない理由はたくさんあります。
CaitlinHavener 2013

回答:


3

ここで考慮すべきことはtemplate/checkout/multishipping/、2つの注文が顧客に対して1つの注文として表示されるように、マルチシッピングテンプレート()にいくつかの表面的なフロントエンドの変更を適用するだけでよい場合があることです。shipping.phtmlそしてoverview.phtmlテンプレートは、2回の注文であることを示すために、ヘッダ(アドレス2の1、など)および他のコピーを持つ2つの次数、各分割します。

デフォルトの代わりに、これらのテンプレートを少しクリエイティブにして、2つのオーダーが単純に分割され、2つの別個のラインアイテムとして表示されるようにすることをお勧めします。

次のビットは、ベンダー属性に基づいて異なる配送元を処理することです。これは、Mage_Shipping_Model_Shippingで行うことができます。Magentoがconfigから配送元住所を取得しているところが一番上にあり、requestToShipment()メソッドのさらに下の方で、配送元住所要素が配送リクエストに割り当てられています(配送方法に応じて後で使用されると思います)。呼び出された)。

それは少なくとも進むべき方向かもしれません。あなたの質問と更新を読んで、私はあなたがこれを必要以上に難しくしているという印象を受けます。Magentoにやりたいことをさせ、特定のケースを処理するために小さなビットのみを変更することが一般的に最善であることを常に覚えておいてください。必要なものの大部分はすでにコアで行われているため、より簡単なオプションがある場合に、マルチシッピングコンポーネントを書き直すのは少しばかげているように見えます。


次に、ベンダー属性によってバンドルされている各出荷の出荷をどのように計算しますか?
CaitlinHavener 2013

Mage_Shipping_Model_Shipping出荷要求の起点アドレスをそのベンダーに割り当てられた起点で単に置き換えるので、出荷計算は変更されません。その後、Magentoはそのビジネスについて継続し、その注文に適用されるすべての配送料金を引き出します。さまざまな基準に基づいて配送方法を割り当てることができるため、WebShopApps配送モジュールの1つがここで役立つと思います。-繰り返しになりますが、これは理論上はすべてです。以前にこのようなことをしたことがないので、いくつかの注意点がある場合があります(常にあります)。-
pspahn

私はそれらのwebshopapp拡張機能をチェックしています。現時点で私が混乱しているのは...クラス/メソッドがMage_Shipping_Model_Shippingクラスに「こんにちは注文であり、これらはその中のアイテムです」と伝えることです。どこにありますか?
CaitlinHavener 2013

1
見てい/app/code/core/Mage/Sales/Model/Quote.phpMagentoのはかなり他のショッピングカートのような線形としてではないことに注意してくださいを- 。ウサギの穴を下って、見積もりが注文(およびクレジットなど)にどのように変更されるかを確認します。ある時点で、変更したいメソッドが見つかります。繰り返しますが、前に述べたように、必要なものを迅速に実現する高品質のバックエンドモジュール(および同様に重要なサポート)に投資することは、多くの場合有益です。いくつかのナットとボルトは変更されるのが嫌いです。
pspahn 2013

詳細については、助けてください!ここでも助けてくれてありがとう。あなたは私を救います!これは私がこれまでに持っていた最も難しいMagentoプロジェクトです!magento.stackexchange.com/questions/7635/…– CaitlinHavener '06
09/18
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.