バグ報告 > 管理機能 > ポイントを利用して購入するとステータスを変更できない |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
shiozawa |
投稿日時: 2007/7/3 12:04
対応状況: −−−
|
新米 ![]() ![]() 登録日: 2007/3/22 居住地: 投稿: 6 |
ポイントを利用して購入するとステータスを変更できない サーバ:RapidのVPSで利用
EC-CUBEバージョン 1.3.1 PHPバージョン PHP 4.4.4 DBバージョン MySQL 4.1.21 ポイントを利用して購入した場合、「受注管理」の一覧から「編集」画面に入って、「対応状況」を変更し、「この内容で登録する」をクリックしても、「登録しました」のダイアログが表示されず、「対応状況」も変更されない状態です。 「ステータス管理」画面では、変更できるので、「編集」画面の不具合だと思いますが、修正箇所が分かりません。 もし、分かる方がいましたらご教授お願いします。 |
ゲスト |
投稿日時: 2008/4/10 21:15
対応状況: −−−
|
Re: ポイントを利用して購入するとステータスを変更できない お世話になります。
こちらのエラー、バージョン2.0.1でも同じ現象を 確認しました。 解決策がお分かりの方はご教授いただけるとありがたいです。 EC-CUBEバージョン 2.0.1 PHPバージョン PHP 4.3.9 DBバージョン MySQL 4.1.20 |
|
homan |
投稿日時: 2008/4/10 23:18
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2007/7/2 居住地: 宮崎県宮崎市 投稿: 633 |
Re: ポイントを利用して購入するとステータスを変更できない これは現在の所持ポイントを再計算するフローがあるためのようです。
受注情報の編集画面では、ステータスだけでなく送料の変更等でも起こりえます。 <どういう場合に発生するか> 現時点での所持ポイントよりも購入時のポイントの方が大きい場合に、現在の所持ポイントが内部的な計算で0より小さくなってしまうため、エラーは画面に表示されないようですが、データベースに反映されません。 例)購入時に利用したポイントが100ポイントで、現時点での所持ポイントが300ポイントの場合 →所持ポイントの方が大きいので、内部的な計算でエラーにならず、 正常に処理される。 例)購入時に利用したポイントが300ポイントで、現時点での所持ポイントが256ポイントの場合 →所持ポイントの方が小さいので、内部的な計算でエラーになる。 <対処法> 1.4.2の場合ですが、取り急ぎ以下の部分をコメントアウトにし、 この内部的な計算で所持ポイントが0未満になってもデータベースに反映されるように変更しています。2系の場合は何処を修正したらいいのか分かりませんが、おそらく同じ理由だと思います。 admin/order/edit.phpの258行目辺り
上記内容を施す事で、不具合がでないかな・・・と思ったのですが、DB登録処理のところで結局 unset($sqlval['total_point']); unset($sqlval['point']); として、ポイント類は反映されないようになっていると思ったので、大丈夫だと思います。推測ですが ![]()
|
sen |
投稿日時: 2008/4/21 14:25
対応状況: −−−
|
新米 ![]() ![]() 登録日: 2008/4/16 居住地: 投稿: 9 |
Re: ポイントを利用して購入するとステータスを変更できない >homan さま
下記バージョンで、コメントアウトうまくいきました。 大変助かりました。ありがとうございます。 EC-CUBEバージョン 1.4.5 PHPバージョン PHP 4.4.7 DBバージョン MySQL 4.1.18 |
ゲスト |
投稿日時: 2008/4/23 18:59
対応状況: −−−
|
Re: ポイントを利用して購入するとステータスを変更できない お世話になります。
data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php にご指摘いただいた記述があり、コメントアウトで無事、編集できるようになりました。 ありがとうございました。 EC-CUBEバージョン 2.0.1 PHPバージョン PHP 4.3.9 DBバージョン MySQL 4.1.20 |
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |