Ticket #2486 (closed バグ指摘: 修正済)

Opened 7 years ago

Last modified 6 years ago

v2.13 管理画面 受注情報編集画面の商品の変更ボタンで商品追加になる

Reported by: kimoto Owned by: snitta
Priority: Milestone: EC-CUBE2.13.3
Component: 管理画面 Version: 2.13.0
Keywords: Cc:
修正済み: yes

Description (last modified by snitta) (diff)

 http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=14064&forum=9&post_id=63124#forumpost63124

受注情報に表示される商品の変更ボタンをクリックすると、商品選択ポップアップ画面を表示する。ここで商品を決定する。サブミットを行うproduct_select.tplのjava script:func_submitにおいて
        var opner_product_id = 'add_product_id';
        var opner_product_class_id = 'add_product_class_id';
.
.

        fm1.getElementById(opner_product_id).value = product_id;
        fm1.getElementById(opner_product_class_id).value = product_class_id;

        fm.mode.value = 'select_product_detail';
        fm.anchor_key.value = 'order_products';
        fm.submit();
とあり、「商品の追加」「変更」に関わらず、必ず商品追加として処理される。

 http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=14064&forum=9&post_id=63124#forumpost63124

その後、調べてみました。

変更の場合、LC_Page_Admin_Order_Edit.phpに変更として渡っているようです。
(最初の投稿内容は、誤りです。)
となると、
関数 shipmentEditProduct


        //既にあるデータは1つだけ数量を1増やす
        $pre_shipment_product_class_id = $arrShipmentProducts['shipment_product_class_id'][$select_shipping_id][$change_no];
        if ($pre_shipment_product_class_id == $edit_product_class_id) {
            $arrShipmentProducts['shipment_quantity'][$select_shipping_id][$change_no] ++;
        } elseif (in_array($edit_product_class_id, $arrShipmentProducts['shipment_product_class_id'][$select_shipping_id])) {


ここに記述されている「既にあるデータは1つだけ数量を1増やす」の仕様がどうなのだろうか?

つまり、「変更」ボタンをクリックし、商品選択ポップアップ画面で元の商品と同じ商品を選択した場合、
・「数量を1増やす」
・「元のまま変化なし」
のいずれを仕様とするかということになる。

Change History

comment:1 Changed 6 years ago by h_yoshimoto

  • Milestone changed from EC-CUBE2.13.2 to EC-CUBE2.13.3

comment:2 Changed 6 years ago by snitta

  • Description modified (diff)

追加の報告がありましたので説明に追記致しました。

comment:3 Changed 6 years ago by snitta

  • Owner changed from somebody to snitta
  • Status changed from new to assigned

comment:4 Changed 6 years ago by kimoto

comment:5 Changed 6 years ago by snitta

  • 修正済み set

r23564 にて対応致しました。 問題がありましたら差し戻しをお願い致します。

修正内容

変更前と変更後の商品規格が同じだった場合に、同商品規格の数量を 1 増加させる挙動を LC_Page_Admin_Order_Edit::shipmentEditProduct() から削除しました。

参考

r22493 で LC_Page_Admin_Order_Edit に商品の追加用と変更用のメソッドが追加され、それまで同処理を兼任していたメソッドのリファクタリングが行われています。 この時誤って追加用の処理が入ってしまったのでは…と思います。

comment:6 Changed 6 years ago by shinichi_takahashi

  • Status changed from assigned to closed
  • Resolution set to 修正済

comment:7 Changed 6 years ago by shinichi_takahashi

確認いたしました。 ご対応ありがとうございます。

Note: See TracTickets for help on using tickets.