バージョン選択

フォーラム

メニュー

オンライン状況

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

PR

デザインテンプレート EC-CUBE3.0版が登場!
広告掲載について

サイト内検索

質問 > 管理機能 > 受注管理画面でお届け日とお届け時間を表示させたい。2

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
320320
投稿日時: 2017/2/16 10:52
対応状況: 解決済
半人前
登録日: 2016/5/26
居住地:
投稿: 21
受注管理画面でお届け日とお届け時間を表示させたい。2
[EC-CUBE]ECCUBE  2.13.5 
[レンタルサーバ] さくら
[OS] ウインドウズ10 ホーム64ビット
[PHP] PHP 5.6
[データベース] MySQL 5.5
[WEBサーバ] さくらのレンタルサーバ スタンダード
[ブラウザ] Google Chrome
[導入プラグインの有無] あり
[カスタマイズの有無] あり

すいません、ご指導お願いいたします。

http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=13791&forum=11&post_id=62049#forumpost62049

上記スレッドを参考にカスタマイズを進めていたのですが、どうやらdtb_shippingから数値が返ってきてないのか、カスタマイズが反映されません。試しにdtb_shippingのフィールド名を記載してみても反映がされませんでした。
前スレで起こっていたエラーにかんしては、プラグインを修正することで対応でき、エラーは起こっておりません。

別に作った何もしてないテストサーバーでは問題なく稼働したので、本番環境のプラグイン、もしくはカスタマイズ部分だと推測しているのですが、検討がつきません。

どなたかご教授いただけないでしょうか。よろしくお願いします。
yuh
投稿日時: 2017/2/16 17:12
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1392
Re: 受注管理画面でお届け日とお届け時間を表示させたい。2
前の流れがよくわからないんですが、一つは決済モジュールによってはその部分をモジュール内のテンプレートに切り替える場合があります。
データが取得できているか確認して、
取得できている場合はモジュール内のテンプレートファイルにも記載してみてください。

もしデータが取得できていない場合は下記のコードをLC_Page_Admin_Order_Ex.phpに追記して、
テンプレート内に
<!--{$arrResults[cnt].deliv_date_time|h}-->

このような形で追加すればできると思います。



    public function findOrders($where, $arrValues, $limit, $offset, $order)
    {
        $objQuery =& SC_Query_Ex::getSingletonInstance();
        if ($limit != 0) {
            $objQuery->setLimitOffset($limit, $offset);
        }
        $objQuery->setOrder($order);
//        return $objQuery->select('*', 'dtb_order', $where, $arrValues);
        $col = "
        *,
        (
            SELECT
                group_concat(
                    CONCAT(
                        shipping_date,
                        '(',
                        (
                            SELECT 
                                deliv_time 
                            FROM 
                                dtb_delivtime 
                            WHERE 
                                deliv_id = dtb_order.deliv_id AND 
                                time_id = dtb_shipping.time_id
                            LIMIT 1
                        ),
                        ')'
                    )
                separator ',') 
            FROM
                dtb_shipping 
            WHERE
                order_id = dtb_order.order_id
        ) as deliv_date_time
        ";
        return $objQuery->select($col, 'dtb_order', $where, $arrValues);
    }


----------------
ec-cube2系の速度UPしてみました。(商品数:100万件)
http://speedtest2.ec-lab.net/products/list.php?category_id=15
ec-cube2系最速!(自称)

320320
投稿日時: 2017/2/17 17:25
対応状況: −−−
半人前
登録日: 2016/5/26
居住地:
投稿: 21
Re: 受注管理画面でお届け日とお届け時間を表示させたい。2
yuh様

ありがとうございます!このカスタマイズで無事希望通りの動作ができました!本当に有難うございます。
今回は決済モジュールに絡んで出来なかったという事で間違いなかったです。
y社のモジュールを使用してました。
yuh
投稿日時: 2017/2/17 20:21
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1392
Re: 受注管理画面でお届け日とお届け時間を表示させたい。2
決済モジュールによってはモジュールアップデートで変更した部分が上書きされる場合があるので要注意です。
念のためにバックアップを取っておいた方がいいかと思います。


----------------
ec-cube2系の速度UPしてみました。(商品数:100万件)
http://speedtest2.ec-lab.net/products/list.php?category_id=15
ec-cube2系最速!(自称)

320320
投稿日時: 2017/2/20 12:58
対応状況: −−−
半人前
登録日: 2016/5/26
居住地:
投稿: 21
Re: 受注管理画面でお届け日とお届け時間を表示させたい。2
申し訳ございません。
先日のカスタマイズでは、時刻指定がない注文が表示されてない事がわかりました。。。どのように調整したら時刻無しでも出るでしょうか。ご指導お願いいたします。
yuh
投稿日時: 2017/2/20 14:14
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1392
Re: 受注管理画面でお届け日とお届け時間を表示させたい。2
CONCATしている部分で連結している項目がNULLになると全体がNULLになるので、coalesceかifnullでチェックして変わりの文字列を代入するようにクエリを変更で対応できるかと思います。


----------------
ec-cube2系の速度UPしてみました。(商品数:100万件)
http://speedtest2.ec-lab.net/products/list.php?category_id=15
ec-cube2系最速!(自称)

320320
投稿日時: 2017/2/20 16:26
対応状況: −−−
半人前
登録日: 2016/5/26
居住地:
投稿: 21
Re: 受注管理画面でお届け日とお届け時間を表示させたい。2
yuh様ありがとうございます。

coalesceとIFNULLを挑戦してみましたが、初心者なので動作が上手くいきませんでした。

日付だけわかればいいということで、DELIV_TIME部分を削除し、日付のみの表示に変更し対応できました。

お騒がせし、大変申し訳ございません。ありがとうございました。
yuh
投稿日時: 2017/2/20 21:19
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1392
Re: 受注管理画面でお届け日とお届け時間を表示させたい。2
コードを下記のように変更すれば取得できます。



 public function findOrders($where, $arrValues, $limit, $offset, $order)
    {
        $objQuery =& SC_Query_Ex::getSingletonInstance();
        if ($limit != 0) {
            $objQuery->setLimitOffset($limit, $offset);
        }
        $objQuery->setOrder($order);
//        return $objQuery->select('*', 'dtb_order', $where, $arrValues);
        $col = "
      *,
        (
            SELECT
                group_concat(
                    CONCAT(
                        coalesce(shipping_date,'--'),
                        '(',
                        coalesce(
                        (
                            SELECT 
                                deliv_time 
                            FROM 
                                dtb_delivtime 
                            WHERE 
                                deliv_id = dtb_order.deliv_id AND 
                                time_id = dtb_shipping.time_id
                            LIMIT 1
                        ),'--'),
                        ')'
                    )
                separator ',') 
            FROM
                dtb_shipping 
            WHERE
                order_id = dtb_order.order_id
        ) as deliv_date_time
        ";
        return $objQuery->select($col, 'dtb_order', $where, $arrValues);
    }


----------------
ec-cube2系の速度UPしてみました。(商品数:100万件)
http://speedtest2.ec-lab.net/products/list.php?category_id=15
ec-cube2系最速!(自称)

320320
投稿日時: 2017/4/3 10:26
対応状況: −−−
半人前
登録日: 2016/5/26
居住地:
投稿: 21
Re: 受注管理画面でお届け日とお届け時間を表示させたい。2
大変遅くなってしまいましたが、レスの式で無事稼働しました。
今になって気づきました。かなり効率的に業務が進むようになり感動しています!ありがとうございます!
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

 



ログイン


EC-CUBEペイメント

クレジットカード情報の非保持化対応

統計情報

総メンバー数は20,120名です
総投稿数は82,932件です

投稿数ランキング

1
seasoft
7331
2
AMUAMU
2712
3
nanasess
1644
4
yuh
1392
5
red
1066
6
fukap
907
7
shutta
827
8 ramrun 789
9
tsuji
784
10
468
712
11
umebius
712
12
tao_s
651
13 sumida 638
14
homan
633
15 karin 618
16 DELIGHT 571
17
patapata
502
18
flealog
483
19 tonton 436
20
ecbg
387


ネットショップの壺

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

Copyright© LOCKON CO.,LTD. All Rights Reserved.