バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
kataqcel
投稿日時: 2019/7/24 12:30
対応状況: 解決済
半人前
登録日: 2013/3/11
居住地:
投稿: 21
受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加
いつもありがとうございます。

現在管理画面からの検索機能に項目を追加したいと思っております。

【追加したい検索項目】
・会員種別
※現在 一般会員と特別会員で分けております。

【追加したいページ】
①受注管理
②売上集計-会員別集計
③メルマガ管理-配信先検索

SC_CustomerList.phpや、そのほかのファイルなどにいろいろ追加してみたりしたのですが、うまくできず、そもそも間違っている可能性もあるので、何かしらお聞きできたらとこちらに投稿させていただきました。

・そもそも可能かどうか
・可能な場合、どのファイルを修正すればいいのか
・どのように修正すればいいか、参考ファイルなど

大変お手数ですが、
上記をお教えいただけると助かります。

現在検索項目に会員種別を表示する事は
$this->arrStatus = $masterData->getMasterData('mtb_customer_status');
を追加してできている状態ですが。
検索自体がどこのファイルをいじれば良いかがわかっておりません。

何卒よろしくお願いいたします。

[EC-CUBE] 2.13.5
[レンタルサーバ] Xサーバー
[PHP] PHP 5.6.31
[データベース] MySQL 5.6.37
yuh
投稿日時: 2019/7/24 13:58
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1600
Re: 受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加
受注管理は
LC_Page_Admin_Orderの
lfInitParam、buildQuery,admin/order/index.tplに追加

売上集計-会員別集計はLC_Page_Admin_Totalとそのテンプレートを変更

メルマガ管理-配信先検索はSC_Helper_Customerとそのテンプレートとかを変更でできます。


----------------
商品点数100万件、0.1秒以下表示。
https://speedtest2.ec-lab.net/products/list.php?category_id=13
2系最速(自称)

kataqcel
投稿日時: 2019/7/24 15:58
対応状況: −−−
半人前
登録日: 2013/3/11
居住地:
投稿: 21
Re: 受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加
早速のご返信誠に有難うございます!

修正ファイルについて確認し、
LC_Page_Admin_OrderのbuildQueryにsearch_statusとしてcaseを追加いたしました。

しかし
search_order_statusの
statusとして認識されてしまいました。

この場合どうやって解消したらよろしいでしょうか?
アドバイスいただけると幸いです。

何卒よろしくお願いいたします。
yuh
投稿日時: 2019/7/24 17:22
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1600
Re: 受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加
$this->arrStatus = $masterData->getMasterData('mtb_customer_status');
ではなくて
$this->arrCustomerStatus = $masterData->getMasterData('mtb_customer_status');
のように変数名を変えればできると思います。


----------------
商品点数100万件、0.1秒以下表示。
https://speedtest2.ec-lab.net/products/list.php?category_id=13
2系最速(自称)

kataqcel
投稿日時: 2019/7/25 11:08
対応状況: −−−
半人前
登録日: 2013/3/11
居住地:
投稿: 21
Re: 受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加
ありがとうございます!

大変恐縮です。
該当箇所及び関係するtplなど修正したのですが、
変わりませんでした。
現在LC_Page_Admin_Order.phpのbuildQueryに下記を追加しております。
AND (status
のstatusの部分が
case 'search_order_status':
$where.= ' AND status = ?';
のstatusとかぶっているのですが、
statusをどこで定義しているのか分からず、
お教えいただけると助かります。


            case 'search_status':
                $tmp_where = '';
                foreach ($objFormParam->getValue($key) as $element) {
                    if ($element != '') {
                        if ($tmp_where == '') {
                            $tmp_where .= ' AND (status = ?';
                        } else {
                            $tmp_where .= ' OR status = ?';
                        }
                        $arrValues[] = $element;
                    }
                }

                if (!SC_Utils_Ex::isBlank($tmp_where)) {
                    $tmp_where .= ')';
                    $where .= " $tmp_where ";
                }
                break;



何卒よろしくお願いいたします。
yuh
投稿日時: 2019/7/25 12:17
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1600
Re: 受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加
search_statusではなくてsearch_customer_statusのような形で追加してその変数で制御するような形で実装すればできるかと思います。



           case 'search_customer_status':
                $tmp_where = '';
                foreach ($objFormParam->getValue($key) as $element) {
                    if ($element != '') {
                        if ($tmp_where == '') {
                            $tmp_where .= ' AND ( EXISTS(SELECT * FROM dtb_customer WHERE customer_id = dtb_order.customer_id AND customer_status = ?) ';
                        } else {
                            $tmp_where .= ' OR EXISTS(SELECT * FROM dtb_customer WHERE customer_id = dtb_order.customer_id AND customer_status = ?)';
                        }
                        $arrValues[] = $element;
                    }
                }

                if (!SC_Utils_Ex::isBlank($tmp_where)) {
                    $tmp_where .= ')';
                    $where .= " $tmp_where ";
                }
                break;



customer_statusは追加したカラムを設定。


----------------
商品点数100万件、0.1秒以下表示。
https://speedtest2.ec-lab.net/products/list.php?category_id=13
2系最速(自称)

kataqcel
投稿日時: 2019/7/25 13:43
対応状況: −−−
半人前
登録日: 2013/3/11
居住地:
投稿: 21
Re: 受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加
ありがとうございます!とても助かりました!

dtb_customerのstatusをひっぱりたかったので、
下記のようにしたら実現できました。

EXISTS(SELECT * FROM dtb_customer WHERE customer_id = dtb_order.customer_id AND dtb_customer.status = ?


ちなみにもし可能であればなんですが、
現在通常会員(status=2)の注文と特別会員(status=3)の注文の検索までできたのですが、
非会員(status=0になるのでしょうか?)の注文を検索しようと思うと、
何かやり方はありますでしょうか?
yuh
投稿日時: 2019/7/25 16:22
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1600
Re: 受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加
その場合は

AND customer_id = 0

だけで大丈夫かと思います。


----------------
商品点数100万件、0.1秒以下表示。
https://speedtest2.ec-lab.net/products/list.php?category_id=13
2系最速(自称)

kataqcel
投稿日時: 2019/7/25 19:28
対応状況: −−−
半人前
登録日: 2013/3/11
居住地:
投稿: 21
Re: 受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加
ありがとうございます!
非会員のチェックボックスを追加する形で実装できました!
本当に助かりました!



            case 'search_customer_status_none':
                $tmp_where = '';
                foreach ($objFormParam->getValue($key) as $element) {
                    if ($element != '') {
                        if ($tmp_where == '') {
                            $tmp_where .= ' AND ( customer_id = 0';
                        } else {
                            $tmp_where .= ' OR customer_id = 0';
                        }
                        $arrValues[] = $element;
                    }
                }

                if (!SC_Utils_Ex::isBlank($tmp_where)) {
                    $tmp_where .= ')';
                    $where .= " $tmp_where ";
                }
                break;
yuh
投稿日時: 2019/7/25 23:13
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1600
Re: 受注管理、メルマガ管理、売上集計に会員種別の検索項目を追加
なんかそのコード変じゃないですか?


                            $tmp_where .= ' AND ( customer_id = 0';
                        } else {
                            $tmp_where .= ' OR customer_id = 0';

それcustomer_id = 0でしか検索してない。


----------------
商品点数100万件、0.1秒以下表示。
https://speedtest2.ec-lab.net/products/list.php?category_id=13
2系最速(自称)

(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


ec-cube.co

統計情報

総メンバー数は48,243名です
総投稿数は92,885件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
nanasess
1908
4
468
1818
5
yuh
1600
6
red
1333
7
umebius
1296
8
fukap
907
9
h_tanaka
881
10
tsuji
852
11
shutta
835
12 ramrun 789
13
tao_s
758
14 karin 656
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
483
20 tonton 436


ネットショップの壺

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

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