バグ報告 > 管理機能 > 受注情報を更新すると購入回数と購入金額が初回購入時のものにリセットされる |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
h_tanaka |
投稿日時: 2018/6/8 9:23
対応状況: 解決済
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1646 |
受注情報を更新すると購入回数と購入金額が初回購入時のものにリセットされる EC-CUBE3.0.14
管理画面の受注マスターから受注情報を更新すると、購入回数と購入金額を更新する処理が走るのですが、情報を取得するSQLがおかしいと思われます。 たとえば次のように3回の購入があった場合、購入回数は3、購入金額は6000となるはずですが、購入回数は1、購入金額は1000となってしまいます。 order_id total 注文ID 購入金額 101 1000 102 2000 103 3000 発行されるSQLをdumpしてみたところ、次のようになっていました。 SELECT COUNT(o.order_id) AS buy_times, SUM(o.total) AS buy_total FROM dtb_order o WHERE o.customer_id = xxxx -- 会員ID AND o.status in(1,2,4,5,6) GROUP BY o.order_id ORDER BY o.order_id ASC SQLの実行結果は次のとおりです。 ■想定している結果 buy_times buy_total 3 6000 ■実際の結果 buy_times buy_total 1 1000 1 2000 1 3000 この結果の 0 番目のデータで更新しているため、購入回数は1、購入金額は1000となっているようです。 SQL文中の GROUP BY で o.order_id はグルーピングできないため、 o.customer_id の間違いと思われます。 src/Eccube/Repository/CustomerRepository.php
src/Eccube/Repository/OrderRepository.php
|
h_tanaka |
投稿日時: 2018/6/8 10:03
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1646 |
Re: 受注情報を更新すると購入回数と購入金額が初回購入時のものにリセットされる 本件、EC-CUBE3.0.15にて改修されていることを確認しました。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |