EC-CUBE / EC-CUBE/ec-cube2

「受注管理>受注登録」画面 入力エラー「最終保持ポイントがマイナス表示…」が誤検出される

Open
#121 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
PHP
Stars
92
Forks
97
Avg merge
4d 2h
Merged PRs (30d)
9

Description

LC_Page_Admin_Order_Edit::lfCheckError() が、SC_Helper_Purchase::isAddPoint() を参照していない模様。

SC_Helper_Purchase::isAddPoint() を下記のようにカスタマイズした状態で、対応状況を「キャンセル」に変更すると、入力エラー「最終保持ポイントがマイナス表示にならないように調整して下さい。」を誤検出することがあった。
```php
// ポイントを即時加算するカスタマイズ
function isAddPoint($status) {
if ($status == null) {
return false;
}
switch ($status) {
case ORDER_CANCEL: // キャンセル
return false;
default:
break;
}

return true;
}
```
未検証だが、上述のカスタマイズを行わなくとも、対応状況を「発送済み」→「キャンセル」とした場合にも発現しそう。

なお、同じ受注でも「受注管理>対応状況管理」画面では発現しない。このことから、当該画面のチェックが不適切と推測。

小手先で対応するのは面倒な予感。入力エラーを検出せず、システムエラーで落とすのも荒っぽいし… SC_Helper_Purchase::sfUpdateOrderStatus() の「変更後の会員.ポイントがマイナスの場合」のエラー検出から入力復帰するルートを設けられると良さそう。

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.