バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

バグ報告 > 管理機能 > v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
sumida
投稿日時: 2014/1/7 16:27
対応状況: −−−
仙人
登録日: 2013/2/10
居住地: 広島県呉市ときどき瀬戸内海
投稿: 641
v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。
v2.13 管理画面:受注情報編集画面での編集操作は、以下のようになっているようです。

お届け先が1口の場合:
受注情報(dtb_order_detail)
    画面では、こちらの情報を編集    (1)
お届け先情報(dtb_shipment_item)
    画面では、非表示          (2)

  内部処理  編集操作は、(1)で行うが、実際の処理は、(2)に見立てて編集処理を行う
        (javascriptで吸収している。)
        ここで、(1)と(2)の商品表示順序が異なる。
        (お客さまの商品購入順序が、商品の登録順序と異なっているとき)
        そのため、(1)の商品順序番号を(2)でそのまま引用してしまい、
        異なった商品を編集処理している。


お届け先が2口以上の場合:
受注情報(dtb_order_detail)
    画面では、お届け先情報の合計を表示 (3)
お届け先情報(dtb_shipment_item)
    画面では、こちらの情報を編集    (4)

  内部処理  編集操作は、(4)で行う。実際の編集処理も(4)で行う
        (そのため、矛盾が生じない。)
        編集完了時、(3)へ合計値を反映

仕様変更点:
「お届け先が1口の場合」の編集操作を、「お届け先が2口以上の場合」の編集操作と同じにする。
つまり、(1)を非表示にし、(2)で編集操作を行う。
または、(1)はお届け先が2口以上と同じ表示とし、(2)で編集操作を行う。


変更理由:
「(1)と(2)の商品表示順序が異なる。」の部分によって、数量の変更や削除の実行で不具合を起こす原因となっている。

こちらのスレッドの原因になっています。
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=13423&forum=9
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=14057&forum=11

また、顕在化していない不具合もあると思われるため。

ご検討をお願いします。
sumida
投稿日時: 2014/1/8 21:22
対応状況: −−−
仙人
登録日: 2013/2/10
居住地: 広島県呉市ときどき瀬戸内海
投稿: 641
Re: v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。
画面レイアウトを現状のままにするのであれば、

お届け先が1口の場合、
data/Smarty/templates/admin/order/edit.tpl

            <!--{section name=cnt loop=$arrForm.quantity.value}-->
            <!--{assign var=product_index value="`$smarty.section.cnt.index`"}-->

のproduct_index に設定する値を$smarty.section.cnt.index ではなく、
お届け先の商品

                        <!--{section name=item loop=$arrShipping.shipment_product_class_id|@count}-->
                            <!--{assign var=item_index value="`$smarty.section.item.index`"}-->

の(product_class_idが同じ)item_index に設定する値を使用しなければならないと思います。
sumida
投稿日時: 2014/1/9 5:49
対応状況: −−−
仙人
登録日: 2013/2/10
居住地: 広島県呉市ときどき瀬戸内海
投稿: 641
Re: v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。
やってみました。たぶん、いけると思います。
data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php

        $this->arrForm        = $objFormParam->getFormParamList();
        $this->arrAllShipping = $objFormParam->getSwapArray(array_merge($this->arrShippingKeys, $this->arrShipmentItemKeys));
// added
        $arrOrderIndex = array();
        // お届け先が1口
        if ($objFormParam->getValue('shipping_quantity') <= 1) {
            // 受注情報の商品
            foreach($objFormParam->getValue('product_class_id') as $order_index =>  $orderItem) {
                // お届け先
                foreach($objFormParam->getValue('shipment_product_class_id') as $shipment) {
                    // お届け先の商品
                    foreach($shipment as $shipment_index => $shipmentItem) {
                        // 同じ商品
                        if ($orderItem == $shipmentItem) {
                            $arrOrderIndex[$order_index] = $shipment_index;
                        }
                    }
                }
            }        
        }
        $this->arrOrderIndex = $arrOrderIndex;
// added
        $this->top_shipping_id      = array_shift((array_keys($this->arrAllShipping)));
        $this->arrDelivTime   = SC_Helper_Delivery_Ex::getDelivTime($objFormParam->getValue('deliv_id'));
        $this->tpl_onload .= $this->getAnchorKey($objFormParam);
        if ($arrValuesBefore['payment_id'])
            $this->arrPayment[$arrValuesBefore['payment_id']] = $arrValuesBefore['payment_method'];

data/Smarty/templates/admin/order/edit.tpl
追記:お届け先が1口で、追加登録した住所へお届けする受注情報の場合、数量の変更ができない不具合の修正を加えました。(3/20)

// changed
    function quantityCopyForSingleShipping(shipping_index, product_index, shipment_product_index){
       var product_index = parseInt(product_index);
        var input_quantity = $('input[name^="quantity[' + product_index + ']"]').val();
        $('input[name^="shipment_quantity[' + shipping_index + '][' + shipment_product_index + ']"]').val(input_quantity);
    }
// changed


        <table class="list order-edit-products">
            <tr>
                <th class="id">商品コード</th>
                <th class="name">商品名/規格1/規格2</th>
                <th class="price">単価</th>
                <th class="qty">数量</th>
                <th class="price">税込み価格</th>
                <th class="price">小計</th>
            </tr>
            <!--{section name=cnt loop=$arrForm.quantity.value}-->
            <!--{assign var=product_index value="`$smarty.section.cnt.index`"}-->
<!--{* added *}-->
            <!--{if $arrForm.shipping_quantity.value > 1}-->
                <!--{assign var=shipping_product_index value="`$smarty.section.cnt.index`"}-->
            <!--{else}-->
                <!--{assign var=shipping_product_index value="`$arrOrderIndex[$smarty.section.cnt.index]`"}-->
            <!--{/if}-->
<!--{* added *}-->
            <tr>
                <td class="center">
                    <!--{$arrForm.product_code.value[$product_index]|h}-->
                    <input type="hidden" name="product_code[<!--{$product_index}-->]" value="<!--{$arrForm.product_code.value[$product_index]|h}-->" id="product_code_<!--{$product_index}-->" />
                </td>
                <td class="center">
                    <!--{$arrForm.product_name.value[$product_index]|h}-->/<!--{$arrForm.classcategory_name1.value[$product_index]|default:"(なし)"|h}-->/<!--{$arrForm.classcategory_name2.value[$product_index]|default:"(なし)"|h}-->
                    <input type="hidden" name="product_name[<!--{$product_index}-->]" value="<!--{$arrForm.product_name.value[$product_index]|h}-->" id="product_name_<!--{$product_index}-->" />
                    <input type="hidden" name="classcategory_name1[<!--{$product_index}-->]" value="<!--{$arrForm.classcategory_name1.value[$product_index]|h}-->" id="classcategory_name1_<!--{$product_index}-->" />
                    <input type="hidden" name="classcategory_name2[<!--{$product_index}-->]" value="<!--{$arrForm.classcategory_name2.value[$product_index]|h}-->" id="classcategory_name2_<!--{$product_index}-->" />
                    <br />
                    <!--{if $arrForm.shipping_quantity.value <= 1}-->
<!--{* changed *}-->                        <a class="btn-normal" href="java script:;" name="change" onclick="eccube.openWindow('<!--{$smarty.const.ROOT_URLPATH}--><!--{$smarty.const.ADMIN_DIR}-->order/product_select.php?no=<!--{$shipping_product_index}-->&order_id=<!--{$arrForm.order_id.value|h}-->&shipping_id=<!--{$top_shipping_id}-->', 'search', '615', '500', {menubar:'no'}); return false;">変更</a>
                        <!--{if count($arrForm.quantity.value) > 1}-->
<!--{* changed *}-->                            <a class="btn-normal" href="java script:;" name="delete" onclick="eccube.setValue('delete_no', <!--{$shipping_product_index}-->, 'form1'); eccube.setValue('select_shipping_id', '<!--{$top_shipping_id}-->', 'form1'); eccube.setModeAndSubmit('delete_product','anchor_key','order_products'); return false;">削除</a>
                        <!--{/if}-->
                    <!--{/if}-->
                <input type="hidden" name="product_type_id[<!--{$product_index}-->]" value="<!--{$arrForm.product_type_id.value[$product_index]|h}-->" id="product_type_id_<!--{$product_index}-->" />
                <input type="hidden" name="product_id[<!--{$product_index}-->]" value="<!--{$arrForm.product_id.value[$product_index]|h}-->" id="product_id_<!--{$product_index}-->" />
                <input type="hidden" name="product_class_id[<!--{$product_index}-->]" value="<!--{$arrForm.product_class_id.value[$product_index]|h}-->" id="product_class_id_<!--{$product_index}-->" />
                <input type="hidden" name="point_rate[<!--{$product_index}-->]" value="<!--{$arrForm.point_rate.value[$product_index]|h}-->" id="point_rate_<!--{$product_index}-->" />
                </td>
                <td class="center">
                    <!--{assign var=key value="price"}-->
                    <span class="attention"><!--{$arrErr[$key][$product_index]}--></span>
                    <input type="text" name="<!--{$key}-->[<!--{$product_index}-->]" value="<!--{$arrForm[$key].value[$product_index]|h}-->" size="6" class="box6" maxlength="<!--{$arrForm[$key].length}-->" style="<!--{$arrErr[$key][$product_index]|sfGetErrorColor}-->" id="<!--{$key}-->_<!--{$product_index}-->" /> 円
                </td>
                <td class="center">
                    <!--{assign var=key value="quantity"}-->
                    <span class="attention"><!--{$arrErr[$key][$product_index]}--></span>
<!--{* changed *}-->                    <input type="text" name="<!--{$key}-->[<!--{$product_index}-->]" value="<!--{$arrForm[$key].value[$product_index]|h}-->" size="3" class="box3" maxlength="<!--{$arrForm[$key].length}-->" style="<!--{$arrErr[$key][$product_index]|sfGetErrorColor}-->" id="<!--{$key}-->_<!--{$product_index}-->"  onChange="quantityCopyForSingleShipping('<!--{$top_shipping_id}-->', '<!--{$product_index}-->', '<!--{$shipping_product_index}-->')" />
                </td>
red
投稿日時: 2014/1/9 11:46
対応状況: −−−
登録日: 2010/2/15
居住地: 東京都
投稿: 1574
Re: v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。
とりあえずチケット登録しておきますね
http://svn.ec-cube.net/open_trac/ticket/2485


----------------
EC-CUBEのカスタマイズ、トラブル解決承ります
お気軽にお問い合わせ下さい
https://www.ec-cube.net/integrate/partner/partner.php?partner_id=690

sumida
投稿日時: 2014/1/13 21:07
対応状況: −−−
仙人
登録日: 2013/2/10
居住地: 広島県呉市ときどき瀬戸内海
投稿: 641
Re: v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。
ダウンロード商品の扱いを考慮すると、レイアウトの変更は、難しいように思いました。
(お届け先に商品情報がないので。)
なので、2つ前の投稿のような修正の方が良いと思います。
sptech
投稿日時: 2014/3/26 9:16
対応状況: −−−
新米
登録日: 2014/3/26
居住地:
投稿: 2
Re: v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。
同じ不具合に遭遇しまして、不思議に思っていました。
大変参考になりました。ありがとうございます。

2.13.1 に対する修正パッチがあるとありがたいのですが…。
red
投稿日時: 2014/3/27 17:25
対応状況: −−−
登録日: 2010/2/15
居住地: 東京都
投稿: 1574
Re: v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。
とりあえず、出来るだけシンプルに直してみましたがこれでどうでしょう?
http://svn.ec-cube.net/open_trac/changeset/23355


----------------
EC-CUBEのカスタマイズ、トラブル解決承ります
お気軽にお問い合わせ下さい
https://www.ec-cube.net/integrate/partner/partner.php?partner_id=690

sumida
投稿日時: 2014/3/27 22:01
対応状況: −−−
仙人
登録日: 2013/2/10
居住地: 広島県呉市ときどき瀬戸内海
投稿: 641
Re: v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。
red様
こちらの別件も一緒に修正しているので、
別途、チケットを作成いただければ。
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=14396&forum=9&post_id=64646#forumpost64646
red
投稿日時: 2014/3/27 22:26
対応状況: −−−
登録日: 2010/2/15
居住地: 東京都
投稿: 1574
Re: v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。
一応チケット作っておきますね
http://svn.ec-cube.net/open_trac/ticket/2519

こちらも確認した範囲では直っているんじゃないかと思います


----------------
EC-CUBEのカスタマイズ、トラブル解決承ります
お気軽にお問い合わせ下さい
https://www.ec-cube.net/integrate/partner/partner.php?partner_id=690

sumida
投稿日時: 2014/3/28 9:58
対応状況: −−−
仙人
登録日: 2013/2/10
居住地: 広島県呉市ときどき瀬戸内海
投稿: 641
Re: v2.13 管理画面:受注情報編集画面の仕様を一部変更した方が良いと思います。
red 様

たびたびすみません。

該当する現象は、チケットに記載されているスレッドの
#forumpost64646
になります。
現象は、
・お届け先は1口
・お届け先は、注文者自身ではなく、追加登録した住所
の場合、発生します。
(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は95,593名です
総投稿数は111,568件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2325
5
umebius
2085
6
yuh
1892
7
h_tanaka
1844
8
red
1574
9
mcontact
1526
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
804
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.