質問 > フロント機能 > 送料商品別設定を有効にして複数購入した場合の送料計上について |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
nobsan |
投稿日時: 2015/10/15 9:15
対応状況: −−−
|
常連 登録日: 2014/11/26 居住地: 投稿: 32 |
送料商品別設定を有効にして複数購入した場合の送料計上について いつもお世話になっております。
EC-CUBE2.13で運用しております。 一部送料無料の商品を登録する必要があって、システム設定>パラメーター設定の中のOPTION_PRODUCT_DELIV_FEE(商品ごとの送料設定)の値を有効にしての運用なのですが、 その際、お届け先が複数の注文に関しては、それぞれに送料が発生して然るべきなので問題はないのですが、単一お届け先の複数商品注文の場合も一商品ごとに送料が計上されてしまいます。 例を挙げれば、送料1000円の商品を3点、単一のお届け先に発送する場合でも、送料が3000円になってしまいます。 OPTION_PRODUCT_DELIV_FEE(商品ごとの送料設定)を無効にすればその問題は解決するようなのですが、それではこの機能が意味を成さないことになります。 OPTION_PRODUCT_DELIV_FEE(商品ごとの送料設定)を無効にせず、単一お届け先の場合は送料が一商品分しか計上されず、複数お届け先の場合だけお届け先の数分の送料が計上されるように出来ないでしょうか? ご教示ください。 よろしくお願いします。 |
yuh |
投稿日時: 2015/10/15 10:16
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 送料商品別設定を有効にして複数購入した場合の送料計上について 単一お届け先の場合は簡単にできますが、複数お届け先の場合はちょっと変更が必要ですね。
|
tsuji |
投稿日時: 2015/10/15 10:19
対応状況: −−−
|
仙人 登録日: 2013/11/19 居住地: 投稿: 958 |
Re: 送料商品別設定を有効にして複数購入した場合の送料計上について nobsan 様
これはアイディアですが複数配送時の配送先ごとの加算を参考に されるとよいと思っております。 つまりSC_CartSession.phpのcalculateで送料の計算をしていますが、 配送先が複数の場合、複数の都道府県IDがこの関数に入力されますので 「数量×商品ごとの送料」の計算処理を「都道府県の数×商品ごとの送料」 に変更されると実現できるかと思いました。
|
nobsan |
投稿日時: 2015/10/15 11:59
対応状況: −−−
|
常連 登録日: 2014/11/26 居住地: 投稿: 32 |
Re: 送料商品別設定を有効にして複数購入した場合の送料計上について tsuji様
なるほど、アイディアとしては有効かと思いました。 ただ、その場合、違う受取人でも同県だと差異が出ることになります。 ご教示いただいたアイディアをヒントに何か良い方法が思いつきそうな気はしてきました。 他の計算に影響が出ないかどうか心配ではありますが、ご指摘のSC_CartSession.php内のcalculateを変えることは避けられないのであればチャレンジするしかなさそうですね。 実運用しながらというのはかなりのリスクですが頑張ってみます。 時期バージョンUPでそのあたりが改善されることを願います。 ひとまずやってみてから結果をご報告したいと思います。 ありがとうございました。 |
yuh |
投稿日時: 2015/10/15 12:32
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 送料商品別設定を有効にして複数購入した場合の送料計上について 別にEC-CUBEをインストールしてテスト用を作れば大丈夫かと思います。
おそらくDB周りに変更は無く、calculate部分だけで解決するのでやりやすいかと思います。 一応$_SESSIOIN['shipping']の中にそれぞれ配送先と商品データが入っているので、その部分から計算すれば問題すべて解決できます。 |
tsuji |
投稿日時: 2015/10/15 13:59
対応状況: −−−
|
仙人 登録日: 2013/11/19 居住地: 投稿: 958 |
Re: 送料商品別設定を有効にして複数購入した場合の送料計上について nobsan様
> ただ、その場合、違う受取人でも同県だと差異が出ることになります。 上記ですが、違う受取人で同県の場合も同じ都道府県IDが複数入りますので この部分の数は配送先分の数になると思っております。 ご確認ください。
|
nobsan |
投稿日時: 2015/10/15 19:23
対応状況: −−−
|
常連 登録日: 2014/11/26 居住地: 投稿: 32 |
Re: 送料商品別設定を有効にして複数購入した場合の送料計上について tsuji様
>上記ですが、違う受取人で同県の場合も同じ都道府県IDが複数入りますので >この部分の数は配送先分の数になると思っております。 calculate関数が受け取る引数「$deliv_pref」は都道府県IDの合計数、つまり同じ都道府県IDでもカウントされて整数で渡されるということですね? 単純に、注文者=お届け先なら「1」、そうでない場合はお届け先の数、と。 であれば、商品数にあたる$arrItem['quantity']の部分を $results['deliv_fee'] += $arrItem['productsClass']['deliv_fee'] * $deliv_pref; とするだけで良いということになりますか? |
yuh |
投稿日時: 2015/10/15 20:23
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 送料商品別設定を有効にして複数購入した場合の送料計上について 計算合わなくなりませんか?
商品A 送料200円 3個 商品B 送料300円 2個 を 配送先1に商品Aを2個、商品Bを2個 配送先2に商品Aを1個 の場合、おそらく送料は 配送先1の分で500円 配送先2の分で200円 で合計700円 となるようにと思うんですが、その計算だと 送料 200×2 + 300×2で1000円になってしまうと思います。 単純にcalculateに$_SESSION['shipping']から計算すればいいだけだとは思います。 |
nobsan |
投稿日時: 2015/10/16 8:57
対応状況: −−−
|
常連 登録日: 2014/11/26 居住地: 投稿: 32 |
Re: 送料商品別設定を有効にして複数購入した場合の送料計上について yuh様
ご教示ありがとうございます。 今のところ、当方の送料設定は全国一律ですので、 ご指摘の問題は起こらないものと考えられます。 ですが、ご指摘の点は地域別送料設定した場合には無視できませんね。 今後のために参考にさせていただきます。 ありがとうございます。 |
tsuji |
投稿日時: 2015/10/16 9:19
対応状況: −−−
|
仙人 登録日: 2013/11/19 居住地: 投稿: 958 |
Re: 送料商品別設定を有効にして複数購入した場合の送料計上について yuh様
確かに計算が合わないですね。 失礼いたしました。 各配送先にどの商品が紐づいているかわからないので、 配送先数×商品にすると、本来配送先に紐づいていない 商品の送料が発生することになりますね。 nobsan 様 私の案は、yuh様のご指摘通り不具合を発生するものでした。 失礼いたしました。
|
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |