バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 売上集計の円グラフが表示されない場合がある

管理機能

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
Rights
投稿日時: 2020/5/15 20:10
対応状況: −−−
一人前
登録日: 2019/3/12
居住地:
投稿: 99
Re: 売上集計の円グラフが表示されない場合がある
その後の状況です。

今回手を加えたファイルは、
/data/class/pages/admin/total/LC_Page_Admin_Total.php
/data/Smarty/templates/admin/total/index.tpl

LC_Page_Admin_Total.php については、投稿した箇所以外にも変更を加えた部分があり、順を追ってみましたが、
lfGetWhereMember の前後でそれぞれ、$sdate と $edateの値を再指定してみると、前後で挙動が変わりました。
/** 商品別集計 **/
public function lfGetOrderProducts($type, $sdate, $edate)
{
$objQuery = SC_Query_Ex::getSingletonInstance();

/* ▼lfGetWhereMember 前に再度日付を指定するとグラフが表示▼ */
$sdate = '2019/1/7 0:0:0';
$sdate = '2019/1/7 11:59:59';
/* ▲lfGetWhereMember 前に再度日付を指定するとグラフが表示▲ */

list($where, $arrWhereVal) = $this->lfGetWhereMember('create_date', $sdate, $edate, $type);

/* ▼lfGetWhereMember 後に再度日付を指定するとグラフが表示されない▼ */
$sdate = '2019/1/7 0:0:0';
$sdate = '2019/1/7 11:59:59';
/* ▲lfGetWhereMember 後に再度日付を指定するとグラフが表示されない▲ */

$where .= ' AND dtb_order.del_flg = 0 AND dtb_order.status <> ?';
$arrWhereVal[] = ORDER_CANCEL;

$col = <<< __EOS__
product_id,
product_code,
product_name,
SUM(quantity) AS products_count,
COUNT(dtb_order_detail.order_id) AS order_count,
price,
(price * SUM(quantity)) AS total
__EOS__;

$from = 'dtb_order_detail JOIN dtb_order ON dtb_order_detail.order_id = dtb_order.order_id';

// FIXME グループを副問い合わせにして無駄な処理を減らす
$objQuery->setGroupBy('product_id, product_name, product_code, price');
$objQuery->setOrder('total DESC');
$arrTotalResults = $objQuery->select($col, $from, $where, $arrWhereVal);

$tpl_image = $this->lfGetGraphPie($arrTotalResults, 'product_name', 'products_' . $type, '(売上比率)', $sdate, $edate);

return array($arrTotalResults, $tpl_image);
}

lfGetWhereMember で取得日付指定のWhere句生成部分を変更しています。

/**
* @param string $col_date
*/
public function lfGetWhereMember($col_date, $sdate, $edate, $type, $col_member = 'customer_id')
{

$where = '';
// 取得日付の指定
if ($sdate != '') {
if ($where != '') {
$where.= ' AND ';
}
// 2020-05-14 Add Start
//$sdate = date('Y/m/d H:i:s', strtotime($sdate));
// 2020-05-14 Add End
$where.= " $col_date >= '". $sdate ."'";
}

if ($edate != '') {
if ($where != '') {
$where.= ' AND ';
}
// 2020-05-14 Edit Start
//$edate = date('Y/m/d H:i:s', strtotime($edate));
//$where.= " $col_date <= '" . $edate ."'";
$edate = date('Y/m/d', strtotime('1 day', strtotime($edate)));
$where.= " $col_date < date('" . $edate ."')";
// 2020-05-14 Edit End
}

// 会員、非会員の判定
switch ($type) {
// 全体
case 'all':
break;
case 'member':
if ($where != '') {
$where.= ' AND ';
}
$where.= " $col_member <> 0";
break;
case 'nonmember':
if ($where != '') {
$where.= ' AND ';
}
$where.= " $col_member = 0";
break;
default:
break;
}

return array($where, array());
}

渡した値($sdate, $edate)と、再指定した値($sdate, $edate)を比較しても同じ内容でした。
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
   売上集計の円グラフが表示されない場合がある Rights 2020/5/14 21:56
     Re: 売上集計の円グラフが表示されない場合がある 468 2020/5/15 12:54
       Re: 売上集計の円グラフが表示されない場合がある Rights 2020/5/15 13:35
       » Re: 売上集計の円グラフが表示されない場合がある Rights 2020/5/15 20:10
           Re: 売上集計の円グラフが表示されない場合がある 468 2020/5/15 22:43
             Re: 売上集計の円グラフが表示されない場合がある Rights 2020/5/18 17:46

 



ログイン


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

統計情報

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

投稿数ランキング

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.