バグ報告 > 管理機能 > ポイントを使用しない運用において、管理画面 受注管理で「発送済み」の受注情報が編集できない |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
sumida |
投稿日時: 2013/3/6 21:47
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2013/2/10 居住地: 広島県呉市ときどき瀬戸内海 投稿: 641 |
ポイントを使用しない運用において、管理画面 受注管理で「発送済み」の受注情報が編集できない 管理画面 受注管理において、
システムパラメータ:ポイントを使用しない ステータス:ポイント加算ステータス(発送済み) この状態の受注情報から、ステータスを発送済み以外に変更しても、「受注を編集しました。」にならない。 ステータスが変更できていた受注情報を、ステータス「発送済み」に変更すると、ステータス以外の情報も編集できなくなりました。 原因を調べた結果、推測ですが、 data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php (setOrderToFormParam) // ポイントを設定 list($db_point, $rollback_point) = SC_Helper_DB_Ex::sfGetRollbackPoint( $order_id, $arrOrder['use_point'], $arrOrder['add_point'], $arrOrder['status'] ); $objFormParam->setValue('total_point', $db_point); $objFormParam->setValue('point', $rollback_point); 呼んでいる関数 sfGetRollbackPoint がステータスを判定し、$rollback_pointに回復すべきポイント数を設定する。 その結果、関数 lfCheckError で、 // 最終保持ポイント $arrValues['total_point'] = $objFormParam->getValue('point') - $arrValues['use_point']; を計算し、次の条件が成立していると思います。 if ($arrValues['total_point'] < 0) { $arrErr['use_point'] = '最終保持ポイントがマイナス表示にならないように調整して下さい。<br />'; } 変更 3/14 タイトルを変更しました。 |
sumida |
投稿日時: 2013/3/7 18:31
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2013/2/10 居住地: 広島県呉市ときどき瀬戸内海 投稿: 641 |
Re: ポイント使用しない場合、管理画面 受注管理において編集できないケースがある。 どうも、あたりのようです。
ただ、修正としては、 data/class/helper/SC_Helper_Purchase.php内 function isUsePoint($status) { function isAddPoint($status) { それぞれ関数全体を if (USE_POINT !== false) { } return false; で囲むようにすることですかね。 追記 または、 data/class/helper/SC_Helper_DB.php内 function sfGetRollbackPoint // 対応状況がポイント利用対象の場合、使用ポイント分を戻す if (SC_Helper_Purchase_Ex::isUsePoint($order_status)) { $rollback_point += $use_point; } // 対応状況がポイント加算対象の場合、加算ポイント分を戻す if (SC_Helper_Purchase_Ex::isAddPoint($order_status)) { $rollback_point -= $add_point; } を if (USE_POINT !== false) { } で囲むようにすることですかね。 |
sumida |
投稿日時: 2013/3/22 20:51
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2013/2/10 居住地: 広島県呉市ときどき瀬戸内海 投稿: 641 |
Re: ポイント使用しない場合、管理画面 受注管理において編集できないケースがある。 こちらを修正する方のが良いかも
data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php if (USE_POINT !== false) { // ポイントを設定 list($db_point, $rollback_point) = SC_Helper_DB_Ex::sfGetRollbackPoint( $order_id, $arrOrder['use_point'], $arrOrder['add_point'], $arrOrder['status'] ); $objFormParam->setValue('total_point', $db_point); $objFormParam->setValue('point', $rollback_point); } else { $objFormParam->setValue('total_point', 0); $objFormParam->setValue('point', 0); } 4/12 追記 実害はありませんが、同様の処理があります。 data/class/pages/admin/order/LC_Page_Admin_Order_Disp.php |
sumida |
投稿日時: 2013/4/3 21:18
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2013/2/10 居住地: 広島県呉市ときどき瀬戸内海 投稿: 641 |
Re: ポイント使用しない場合、管理画面 受注管理において編集できないケースがある。 注文完了の状態(発送済み)後、
注文内容の修正は、レアなケースとは思いますが、 コミッタの方、検討をお願いします。 |
AMUAMU |
投稿日時: 2013/4/10 4:41
対応状況: −−−
|
神 ![]() ![]() 登録日: 2009/5/2 居住地: 東京都 投稿: 2712 |
Re: ポイント使用しない場合、管理画面 受注管理において編集できないケースがある。 ご報告ありがとうございます!
レアというほどのケースでは無いと思います。 下記でチケットを上げました。 次バージョンの改修には含めたいと思います http://svn.ec-cube.net/open_trac/ticket/2223
|
shutta |
投稿日時: 2014/6/10 22:30
対応状況: −−−
|
仙人 ![]() ![]() 登録日: 2010/2/4 居住地: 関西 投稿: 835 |
Re: ポイント使用しない場合、管理画面 受注管理において編集できないケースがある。 チェンジセット23538
http://svn.ec-cube.net/open_trac/changeset/23538 にて、修正を取り込みました。 ありがとうございました。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |