バージョン選択

フォーラム

メニュー

オンライン状況

34 人のユーザが現在オンラインです。 (20 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 34
もっと...

サイト内検索

質問 > 管理機能 > 受注管理>受注登録で他の商品が削除されてしまう

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
sumida
投稿日時: 2014/6/21 21:21
対応状況: −−−
仙人
登録日: 2013/2/10
居住地: 広島県呉市ときどき瀬戸内海
投稿: 641
Re: 受注管理>受注登録で他の商品が削除されてしまう
複数のお届け先を考慮すると、
こんなふうになるのかな。

    public function checkInsertOrderProducts(&$objFormParam, $arrProductClassIds, $insert_product_class_id, $arrAddProductInfo)
    {
        if (!$arrProductClassIds || !in_array($insert_product_class_id, $arrProductClassIds)) {
            $arrAddProducts = array();
            $arrTax = SC_Helper_TaxRule_Ex::getTaxRule(0, $insert_product_class_id);

            $arrAddProductInfo['product_name'] = ($arrAddProductInfo['product_name'])
                ? $arrAddProductInfo['product_name']
                : $arrAddProductInfo['name'];

            $arrAddProductInfo['price'] = ($arrAddProductInfo['price'])
                ? $arrAddProductInfo['price']
                : $arrAddProductInfo['price02'];

            $arrAddProductInfo['quantity'] = 1;
            $arrAddProductInfo['tax_rate'] = ($objFormParam->getValue('order_tax_rate') == '')
                ? $arrTax['tax_rate']
                : $objFormParam->getValue('order_tax_rate');

            $arrAddProductInfo['tax_rule'] = ($objFormParam->getValue('order_tax_rule') == '')
                ? $arrTax['tax_rule']
                : $objFormParam->getValue('order_tax_rule');

// added
        // 「変更」の場合、お届け先情報の位置から受注情報の位置を求める
        $product_class_id = $objFormParam->getValue('add_product_class_id');
        if (SC_Utils_Ex::isBlank($product_class_id)) {
            $change_no = $objFormParam->getValue('no');
            $pre_product_class_id = $arrProductClassIds[$change_no];
            $arrWorkProductClassIds = $objFormParam->getValue('product_class_id');
            $pre_change_no = 0;
            foreach ($arrWorkProductClassIds as $productClassId) {
                if ($productClassId == $pre_product_class_id) {
                    break;
                }
                $pre_change_no++;
            }
        }
// added
            foreach ($this->arrProductKeys as $insert_key) {
                $value = $objFormParam->getValue($insert_key);
                $arrAddProducts[$insert_key]   = (is_array($value))? $value: array();
// added
        if (SC_Utils_Ex::isBlank($product_class_id)) {
        // 「変更」の場合
                $arrWorkProducts = array();
                $insert_change_no = 0;
                foreach ($arrAddProducts[$insert_key] as $data) {
                    $arrWorkProducts[] = $data;
                    if ($insert_change_no == $pre_change_no) {
                        $arrWorkProducts[] = $arrAddProductInfo[$insert_key];
                    }
                    $insert_change_no++;
                }
                $arrAddProducts[$insert_key] = $arrWorkProducts;
        } else {
        // 「商品の追加」の場合
// added
                $arrAddProducts[$insert_key][] = $arrAddProductInfo[$insert_key];
// added
        }
// added
            }

            return $arrAddProducts;
        } else {
            //受注商品の数量は、複数配送側の集計で出しているので、重複しても数量を増やさない。
            return null;
        }
    }
bbkids
投稿日時: 2014/6/23 2:25
対応状況: −−−
常連
登録日: 2014/2/19
居住地:
投稿: 48
Re: 受注管理>受注登録で他の商品が削除されてしまう
sumida 様

ご対応有難う御座いました。
「複数のお届け先を考慮した」修正コード適用し検証してみました。

当方の環境がカスタマイズ環境の為、複数のお届け先での実験が出来なく
単発のお届け先でのみ検証実験行いました。
当方が検証した限りでは、本件に関する問題は修正されたと思われます。
引き続きいろいろなパターンでも検証を続けてみたいと思います。

いつも実にスマートな考察で修正案を出されておりますので、とても参考
になっております。
他の方が建てられたスレッドでも実にスマート&迅速に修正コードを出さ
れていて、そちらでもいつも参考&助けて頂いております。
本当に有難う御座いました。

複数のお届け先につきましては、確認できておりませんが
どなたか検証等してご報告頂けると幸いです。

またコミッターの方、時期バージョンに本件が反映されますようご確認
お願い致します。
nanasess
投稿日時: 2014/7/3 17:54
対応状況: −−−
登録日: 2006/9/9
居住地: 大阪
投稿: 2202
Re: 受注管理>受注登録で他の商品が削除されてしまう
チケットを登録していただきました。

http://svn.ec-cube.net/open_trac/ticket/2585


----------------
大河内健太郎(Kentaro Ohkouchi)
EC-CUBE公式エバンジェリスト
スキルニル株式会社

EC-CUBE1系2系長期サポートホスティングサービス CUBE Lab
https://cubelab.info/

bbkids
投稿日時: 2014/7/4 8:27
対応状況: −−−
常連
登録日: 2014/2/19
居住地:
投稿: 48
Re: 受注管理>受注登録で他の商品が削除されてしまう
チケット作成有難う御座いました。
« 1 (2)
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン



統計情報

総メンバー数は75,099名です
総投稿数は104,361件です

投稿数ランキング

1
seasoft
7333
2
468
3217
3
AMUAMU
2712
4
nanasess
2202
5
umebius
2085
6
yuh
1664
7
red
1535
8
h_tanaka
1189
9
tsuji
942
10
fukap
907
11
shutta
835
12
tao_s
794
13 ramrun 789
14 karin 689
15 sumida 641
16
homan
633
17 DELIGHT 572
18
patapata
502
19
flealog
485
20 tonton 437
Copyright© EC-CUBE CO.,LTD. All Rights Reserved.