婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > yii框架結合charjs實現統計30天數據的方法

yii框架結合charjs實現統計30天數據的方法

熱門標簽:嘟嘟云外呼系統 南寧電話外呼系統線路 咸陽電銷 正規電銷機器人系統 濟源百應電銷機器人聯系方式 南京3D地圖標注 邢臺400電話辦理 重慶外呼電銷系統多少錢 辦理400電話哪家好點

本文實例講述了yii框架結合charjs實現統計30天數據的方法。分享給大家供大家參考,具體如下:

理論上30天數據應該都有,但實際上卻不一定是,所以需要補全

public static function getDayOrderCharData($days = 30) {
    $nowDay = date('Y-m-d', strtotime('-1day')); // 當前前一天
    $lastDay = date("Y-m-d", strtotime('-'.$days.'day')); // days天前
    $daysFormat = [];
    // 獲取到days段的日期
    for($i = $days; $i > 0; $i--) {
      $daysFormat[] = date("Y-m-d", strtotime('-'.$i.'day'));
    }
 
    // 所有用戶
    $allOrderData = self::find()
            ->select(['FROM_UNIXTIME(create_at,"%Y-%m-%d") as char_time', 'COUNT(id) as total_order', 'SUM(order_amount) as total_order_amount', 'SUM(pay_amount) as total_order_pay_amount'])
            ->where(['>=', 'FROM_UNIXTIME(create_at,"%Y-%m-%d")', $lastDay])
            ->andWhere(['=', 'FROM_UNIXTIME(create_at,"%Y-%m-%d")', $nowDay])
            ->groupBy('char_time')
            ->all();
    $dayCountTitle   = Yii::t('backend', 'day_order_count_title', ['last_day' => $lastDay, 'now_day' => $nowDay]);
    $dayAmountTitle  = Yii::t('backend', 'day_order_amount_title', ['last_day' => $lastDay, 'now_day' => $nowDay]);
 
    $labels = $daysFormat;
    // 所有用戶
    $orderCounts = []; // 訂單數量
    $orderAmounts = []; // 訂單金額
    $orderPayAmounts = []; // 支付金額
    $allOrderDataArr = [];
    foreach($allOrderData as $allKey => $allVal) {
      $allOrderDataArr[$allVal->char_time]['char_time'] = $allVal->char_time;
      $allOrderDataArr[$allVal->char_time]['total_order'] = $allVal->total_order;
      $allOrderDataArr[$allVal->char_time]['total_order_amount'] = $allVal->total_order_amount;
      $allOrderDataArr[$allVal->char_time]['total_order_pay_amount'] = $allVal->total_order_pay_amount;
    }
 
    foreach($daysFormat as $key => $val) {
      if(array_key_exists($val, $allOrderDataArr)) {
        $orderCounts[] = $allOrderDataArr[$val]['total_order'];
        $orderAmounts[] = $allOrderDataArr[$val]['total_order_amount'];
        $orderPayAmounts[] = $allOrderDataArr[$val]['total_order_pay_amount'];
      } else {
        $orderCounts[] = '0';
        $orderAmounts[] = '0';
        $orderPayAmounts[] = '0';
      }
    }
    $data = [
      'dayCountTitle'    => $dayCountTitle, 
      'dayAmountTitle'    => $dayAmountTitle,
      'orderCountLabel'   => Yii::t('backend', 'day_order_count_label', ['days' => $days]),
      'orderAmountLabel'   => Yii::t('backend', 'day_order_amount_label', ['days' => $days]),
      'orderPayAmountLabel' => Yii::t('backend', 'day_order_pay_amount_label', ['days' => $days]),
      'nowDay'        => $nowDay,
      'lastDay'       => $lastDay,
      'labels'        => $labels,
      'orderCounts'     => $orderCounts,
      'orderAmounts'     => $orderAmounts,
      'orderPayAmounts'   => $orderPayAmounts
    ];
    return $data;
  }

js

// 按天獲取訂單數量
  var dayOrderCountChartCanvas = $('#dayOrderCountChart').get(0).getContext('2d')
  var dayOrderCountChartData = {
   labels : ?= json_encode($dayOrderChar['labels'], true) ?>,
   datasets: [
    {
     label        : '?= $dayOrderChar['orderCountLabel'] ?>',
     backgroundColor   : 'rgba(0, 192, 293, 0.5)',
     data        : ?= json_encode($dayOrderChar['orderCounts'], true) ?>
    }
   ]
  }
 
  var dayOrderCountChartOptions = {
    scales: {
      xAxes: [{
        gridLines: {
          display: false
        }
      }],
      yAxes: [{
        gridLines: {
          display: false
        }
      }]
    }
  }
 
  var dayOrderCountChart = new Chart(dayOrderCountChartCanvas, {
    type: 'line',
    data: dayOrderCountChartData,
    options: dayOrderCountChartOptions
  });
 
  // 按天獲取訂單及金額
  var dayOrderAmounCanvas = $('#dayOrderAmountChart').get(0).getContext('2d')
  var dayOrderAmounData = {
   labels : ?= json_encode($dayOrderChar['labels'], true) ?>,
   datasets: [
    {
     label        : '?= $dayOrderChar['orderAmountLabel'] ?>',
     backgroundColor   : 'rgba(0, 192, 293, 0.5)',
     data        : ?= json_encode($dayOrderChar['orderAmounts'], true) ?>
    },
    {
     label        : '?= $dayOrderChar['orderPayAmountLabel'] ?>',
     backgroundColor   : 'rgba(0, 166, 90, 0.5)',
     data        : ?= json_encode($dayOrderChar['orderPayAmounts'], true) ?>
    }
   ]
  }
 
  var dayOrderAmounOptions = {
    scales: {
      xAxes: [{
        gridLines: {
          display: false
        }
      }],
      yAxes: [{
        gridLines: {
          display: false
        }
      }]
    }
  }
 
  var dayOrderAmountChart = new Chart(dayOrderAmounCanvas, {
    type: 'line',
    data: dayOrderAmounData,
    options: dayOrderAmounOptions
  });

記住,yii的as一定要在模型利定義公用變量

public $char_time; // 按時間統計
  public $total_order; // 所有訂單
  public $total_order_amount; // 所有訂單總額
  public $total_pay_order; // 支付訂單
  public $total_pay_amount; // 支付訂單總額
  public $total_order_pay_amount; // 支付總額

更多關于Yii相關內容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結》、《php優秀開發框架總結》、《smarty模板入門基礎教程》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家基于Yii框架的PHP程序設計有所幫助。

您可能感興趣的文章:
  • Spring-boot結合Shrio實現JWT的方法
  • JAVA集合框架Map特性及實例解析
  • TP5框架實現一次選擇多張圖片并預覽的方法示例
  • yii框架結合charjs統計上一年與當前年數據的方法示例
  • thinkphp5 框架結合plupload實現圖片批量上傳功能示例
  • TP5框架實現上傳多張圖片的方法分析
  • Apache Shrio安全框架實現原理及實例詳解

標簽:平頂山 河南 隴南 黃山 南通 通遼 武漢 唐山

巨人網絡通訊聲明:本文標題《yii框架結合charjs實現統計30天數據的方法》,本文關鍵詞  yii,框架,結合,charjs,實現,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《yii框架結合charjs實現統計30天數據的方法》相關的同類信息!
  • 本頁收集關于yii框架結合charjs實現統計30天數據的方法的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产精品久久久久久妇女6080| 国产午夜亚洲精品午夜鲁丝片| 亚洲三级电影网站| 91精品国产综合久久精品app| 久久66热偷产精品| 亚洲午夜在线电影| 国产精品网曝门| 欧美日韩精品电影| 97久久精品人人澡人人爽| 蜜臀久久99精品久久久久久9| 亚洲精品免费看| 中文字幕成人网| 欧美精品一区二区三| 一区二区三区欧美日韩| 欧美一区二区三区免费在线看| 日本午夜一本久久久综合| 3d成人h动漫网站入口| 视频一区视频二区中文| 久久精品日产第一区二区三区高清版| 色综合久久综合网| 老司机午夜精品| 国产一区二区精品久久99| 国产麻豆9l精品三级站| 久久成人久久爱| 日本成人在线一区| 男男gaygay亚洲| 精彩视频一区二区三区| 蜜臀久久久久久久| 九色|91porny| 国产一区在线看| 成人91在线观看| av欧美精品.com| 91无套直看片红桃| 欧美丝袜丝交足nylons图片| 在线免费不卡视频| 制服丝袜亚洲精品中文字幕| 91精品在线一区二区| 久久色.com| 国产精品国产三级国产aⅴ中文 | 在线影院国内精品| 欧美日精品一区视频| 欧美日韩国产中文| 精品久久久久久亚洲综合网| 精品成人一区二区三区四区| 国产欧美精品国产国产专区 | 国产成人在线视频网址| 成人国产精品视频| 欧美日韩三级在线| 精品少妇一区二区三区在线播放 | 有坂深雪av一区二区精品| 亚洲国产精华液网站w| 最新不卡av在线| 五月婷婷激情综合网| 视频一区视频二区中文字幕| 男人的j进女人的j一区| 成人免费看视频| 91麻豆精品国产91久久久久久久久 | 中文字幕的久久| 3d动漫精品啪啪| 91精品国产欧美一区二区| 日韩欧美国产综合在线一区二区三区| 久久久久88色偷偷免费| 亚洲一区在线观看视频| 蜜桃久久av一区| 国产精品污www在线观看| 国产欧美精品一区二区色综合| 国产精品嫩草久久久久| 麻豆91精品视频| av一区二区不卡| 精品久久久久久无| 国产精品久久久久久妇女6080| 久久99精品久久久久久| 色呦呦日韩精品| 国产亚洲精品aa午夜观看| 国产精品国产三级国产aⅴ中文| 视频一区中文字幕| 色综合天天在线| 国产亚洲一区字幕| 亚洲综合视频在线观看| 成人h精品动漫一区二区三区| 欧美日韩高清在线播放| 国产精品天美传媒沈樵| 亚洲一区二区成人在线观看| 99国产精品视频免费观看| 美女精品一区二区| 欧美少妇一区二区| 欧美午夜精品一区二区三区| 精品国产一区二区三区av性色| 成人福利视频在线看| 中文字幕一区二区三区精华液| 国产精品88888| 亚洲欧美一区二区三区国产精品 | 五月婷婷综合网| 蓝色福利精品导航| 在线观看亚洲一区| 国产精品美女一区二区| 国产成人在线视频网址| 久久久影视传媒| 精品一区二区综合| 精品电影一区二区| 久久99精品国产麻豆婷婷| 精品久久国产老人久久综合| 日韩电影在线看| 日韩视频一区二区三区在线播放| 亚洲成在线观看| 欧美日韩精品一区二区三区蜜桃| 亚洲一二三四在线观看| 日本韩国一区二区三区视频| 一区二区三区在线视频观看| 91在线视频官网| 亚洲免费高清视频在线| 在线视频欧美精品| 污片在线观看一区二区| 欧美一二三区在线| 国产一区二区精品久久| 久久在线观看免费| 成人av中文字幕| 亚洲视频资源在线| 欧美性色欧美a在线播放| 亚洲一区二区三区四区五区黄| 色综合久久综合| 美国一区二区三区在线播放| 精品久久久久久久久久久久久久久 | 欧美色图免费看| 国产不卡视频一区| 欧美精品久久99| 日本国产一区二区| 欧美视频一区二| 久久久高清一区二区三区| 99re视频精品| 91久久香蕉国产日韩欧美9色| 欧美日韩精品电影| 91麻豆精品久久久久蜜臀 | 欧美精品久久99| 黑人精品欧美一区二区蜜桃 | 亚洲国产精品一区二区久久| 欧美日韩卡一卡二| 久久国产精品99久久久久久老狼| 久久久不卡网国产精品一区| 99久久免费精品| 丝袜美腿亚洲一区二区图片| 久久久www成人免费无遮挡大片| 97久久超碰精品国产| 日韩av在线播放中文字幕| 精品久久99ma| 在线观看免费成人| 九九热在线视频观看这里只有精品| ...xxx性欧美| 制服丝袜亚洲精品中文字幕| av成人免费在线| 日韩综合在线视频| 亚洲欧洲成人自拍| 精品国产乱码久久久久久闺蜜| 欧美性受xxxx黑人xyx性爽| 国产一区二区日韩精品| 亚洲最新在线观看| 国产精品久久久久aaaa| 欧美一区国产二区| 欧美日韩高清在线| 色美美综合视频| 99综合影院在线| 另类调教123区| 视频一区中文字幕| 一区二区三区四区激情| 国产精品久久久久毛片软件| 26uuu欧美| 日韩一区二区免费在线电影| 在线观看国产精品网站| 国产不卡在线一区| 日韩精品综合一本久道在线视频| 欧美久久久久久久久中文字幕| 亚洲裸体在线观看| 一本一道久久a久久精品综合蜜臀| 中文字幕亚洲区| 色哟哟一区二区三区| 亚洲3atv精品一区二区三区| 久久久亚洲高清| 欧美无人高清视频在线观看| 国产福利一区二区三区视频| 亚洲欧美偷拍卡通变态| 成人综合在线网站| 美女在线视频一区| 日韩二区在线观看| 日本在线不卡视频| 亚洲bt欧美bt精品777| 一区二区三区四区在线播放| 亚洲男人的天堂一区二区| 亚洲女子a中天字幕| 亚洲欧美激情在线| 亚洲精品高清视频在线观看| 亚洲一级二级三级在线免费观看| 亚洲免费资源在线播放| 一区二区三区小说| 尤物视频一区二区| 天天综合天天综合色| 五月婷婷另类国产| 国产麻豆精品theporn| 国产精品亚洲成人| 99re这里都是精品| 欧美放荡的少妇|