バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

機能要望 > 管理機能 > ステータス管理サブナビに人数を表示

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
reh
投稿日時: 2010/2/22 13:29
対応状況: −−−
半人前
登録日: 2010/1/21
居住地:
投稿: 18
ステータス管理サブナビに人数を表示
いつもお世話になっております。

受注管理のステータス管理サブナビにステータス毎に人数を表示できれば便利だと思い、どう書けばいいのか考えてみたのですが、

そもそもIDで管理しているステータスの各IDの数を抽出することは可能なのでしょうか?


ド素人の質問で申し訳ありません。

もし可能なのでしたらどなたかご教授願えませんでしょうか。。
宜しくお願い致します。
seasoft
投稿日時: 2010/2/22 22:55
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: ステータス管理サブナビに人数を表示
若干の負荷は加わりますが、可能なはずですよ。

ロジックとしては、ページナビ(ページ数切り替え)の部分が参考になると思います。

表示中のステータスのみをカウントする作りになっていると思いますが(ソース未確認)、全ステータス分を回せば取得できると思います。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

reh
投稿日時: 2010/2/23 11:38
対応状況: −−−
半人前
登録日: 2010/1/21
居住地:
投稿: 18
Re: ステータス管理サブナビに人数を表示
seasoft様

いつもありがとうございます。
色々と探ってみたのですが、
<!--{$tpl_linemax}-->をサブナビに追加するだけではやはり各ステータスに入ったときにすべて同じ数が表示されるだけでした。

全ステータス分を回す、というのはどのようにすればいいのでしょうか?

(<!--{foreach key=key item=item from=$arrORDERSTATUS}-->をつかって各ステータスの{$tpl_linemax}を読み込む、のかな?と思いつつもどうすればいいのかさっぱりです。(見当違いでしたら申し訳ありません;))


無知で申し訳ありません。教えていただければ幸いです。
宜しくお願い致します。
seasoft
投稿日時: 2010/2/25 12:56
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: ステータス管理サブナビに人数を表示
そういえば、正式版だと、サブナビで表示していましたね。
EC-CUBEコミュニティ(eccube-comu) ですと、メイン部で表示しているので、1つのページクラスでの処理で書けそうなのですが、正式版だと共通処理に書く必要がありますね。

いずれにしても、テンプレート上の記述だけでは駄目で、*.php のロジックを追加する必要があります。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

reh
投稿日時: 2010/2/26 15:36
対応状況: −−−
半人前
登録日: 2010/1/21
居住地:
投稿: 18
Re: ステータス管理サブナビに人数を表示
お返事ありがとうございます。

う〜ん、やはり素人にはなかなか難しい変更なのでしょうか。。

前回のように動かない!というわけではないので少しづつ知識をためてチャレンジしてみようと思います。
ありがとうございました^^*
DELIGHT
投稿日時: 2010/2/26 18:02
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: ステータス管理サブナビに人数を表示
以下のような感じのコードを
LC_Page_Admin_Order_Status.php
に追加すればステータスごとの件数を取得できると思います。
(あくまで例です)


        $objQuery = new SC_Query();
        $select ="status, count(*) AS cnt ";
        $from = "dtb_order";
        $where = "del_flg = 0 ";
        $objQuery->setgroupby("status");
        $ret = $objQuery->select($select, $from, $where, array());
        foreach($ret as $key=>$val ){
            $param[$val['status']] = $val['cnt'];
        }
        $this->tpl_statuscnt = $param;


確認環境
EC-CUBEバージョン 2.4.2
PHPバージョン PHP 5.2.10
DBバージョン PostgreSQL 8.4.0,


----------------
+ DAISY inc. -------------------- +
EC-CUBE構築・カスタマイズサービス
EC・WEB構築などお気軽にご相談ください。

デイジー株式会社
http://daisy.link/

reh
投稿日時: 2010/3/1 17:19
対応状況: −−−
半人前
登録日: 2010/1/21
居住地:
投稿: 18
Re: ステータス管理サブナビに人数を表示
ありがとうございます!
早速LC_Page_Admin_Order_Status.phpに追加し、
tplに<!--{$tpl_statuscnt}-->と書いてみましたが、
Arrayとなり表示できませんでした。

LC_Page_Admin_Order_Status.php内の

<省略>

//ステータス一覧の表示
function lfStatusDisp($status,$pageno){

//各ステータスの人数をサブナビに表示
$objQuery = new SC_Query();
$select ="status, count(*) AS cnt ";
$from = "dtb_order";
$where = "del_flg = 0 ";
$objQuery->setgroupby("status");
$ret = $objQuery->select($select, $from, $where, array());
foreach($ret as $key=>$val ){
$param[$val['status']] = $val['cnt'];
}
$this->tpl_statuscnt = $param;


//ここからステータス一覧の表示元
$objQuery = new SC_Query();

$select ="*";
$from = "dtb_order";
$where = "del_flg = 0 AND status = ?";
$arrval[] = $status;
$order = "order_id DESC";

<省略>

・・といった風にステータス一覧の表示のなかに追加してしまったのがいけなかったのでしょうか・・?

php知識が皆無で右往左往しております。
初歩的な質問かと思いますが、ご教授願えれば幸いです><;
DELIGHT
投稿日時: 2010/3/1 18:15
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: ステータス管理サブナビに人数を表示
例題として提示したコードですと、

tpl_statuscnt[ステータス] = 人数

とセットされるはずです。

なので、たとえば表示側(subnavi.tpl 43 34行目付近)で、
<!--{$item}-->(<!--{$tpl_statuscnt[$key]}-->)

とすれば表示されると思います。

テンプレート側で、<--{$tpl_statuscnt|@print_r}-->とすると、
tpl_statuscntの中身が確認できますよ。



----------------
+ DAISY inc. -------------------- +
EC-CUBE構築・カスタマイズサービス
EC・WEB構築などお気軽にご相談ください。

デイジー株式会社
http://daisy.link/

reh
投稿日時: 2010/3/2 9:58
対応状況: −−−
半人前
登録日: 2010/1/21
居住地:
投稿: 18
Re: ステータス管理サブナビに人数を表示
<!--{$tpl_statuscnt[$key]}-->で表示することができました!
本当に助かりました、ありがとうございます
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は89,040名です
総投稿数は110,020件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
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.