init
This commit is contained in:
77
app/admin/controller/Statistics.php
Executable file
77
app/admin/controller/Statistics.php
Executable file
@@ -0,0 +1,77 @@
|
||||
<?php
|
||||
|
||||
namespace app\admin\controller;
|
||||
|
||||
use think\Lang;
|
||||
use think\Loader;
|
||||
use think\Config;
|
||||
|
||||
class Statistics extends BaseController {
|
||||
|
||||
public function index() {
|
||||
return view();
|
||||
}
|
||||
|
||||
public function get_click_sum() {
|
||||
$params = $this->request->get();
|
||||
$begin_datetime = $params['begin_datetime'];
|
||||
$end_datetime = $params['end_datetime'];
|
||||
$type = $params['type'];
|
||||
$code = $params['code'];
|
||||
|
||||
if ($begin_datetime == '') {
|
||||
$begin_datetime = date('Y-m-01 00:00:00');
|
||||
$end_datetime = date('Y-m-t H:i:s');
|
||||
}
|
||||
|
||||
$where = [];
|
||||
if ($type != '') {
|
||||
$where['type'] = $type;
|
||||
}
|
||||
if ($code != '') {
|
||||
$where['code'] = $code;
|
||||
}
|
||||
|
||||
$result = model('click_sum')->field('year(create_time) y, month(create_time) m, day(create_time) d, count(id) click_count')->group('year(create_time), month(create_time), day(create_time)')->whereTime('create_time', 'between', [$begin_datetime, $end_datetime])->where($where)->select();
|
||||
// tiaoshi($result);die;
|
||||
$tmp_click_sum = [];
|
||||
foreach ($result as $key => $value) {
|
||||
$k = $value['m'] . '-' . $value['d'];
|
||||
$v = $value['click_count'];
|
||||
$tmp_click_sum[$k] = $v;
|
||||
}
|
||||
|
||||
$begin_time = strtotime($begin_datetime);
|
||||
$end_time = strtotime($end_datetime);
|
||||
$click_sum = [];
|
||||
$j = 0;
|
||||
for($i=$begin_time;$i<=$end_time;$i+=86400) {
|
||||
$k = $this->filter_date(date('m-d', $i));
|
||||
$click_sum[$j]['date'] = $k;
|
||||
$click_sum[$j]['click_count'] = isset($tmp_click_sum[$k]) ? $tmp_click_sum[$k] : 0;
|
||||
$j++;
|
||||
}
|
||||
|
||||
$data = [
|
||||
'click_sum' => $click_sum,
|
||||
];
|
||||
|
||||
return $this->json(200, 'ok', $data);
|
||||
}
|
||||
|
||||
// 06-09 -> 6-9
|
||||
private function filter_date($date) {
|
||||
$m = substr($date, 0, strpos($date, "-"));
|
||||
$d = substr($date, strpos($date, "-") + 1);
|
||||
|
||||
if (substr($m, 0, 1) == 0) {
|
||||
$m = substr($m, 1);
|
||||
}
|
||||
if (substr($d, 0, 1) == 0) {
|
||||
$d = substr($d, 1);
|
||||
}
|
||||
|
||||
return $m . '-' . $d;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user