You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
2.2 KiB
71 lines
2.2 KiB
<?php
|
|
/**
|
|
* 总览
|
|
*/
|
|
|
|
header("Access-Control-Allow-Origin:*");
|
|
header('X-Accel-Buffering: no');
|
|
header('Content-Type: text/event-stream');
|
|
header('Cache-Control: no-cache');
|
|
ob_end_clean();
|
|
ob_implicit_flush(1);
|
|
|
|
use app\common\dm\Dm;
|
|
use app\common\logic\PassFlow;
|
|
require_once __DIR__ . '../../source/application/common/dm/Dm.php';
|
|
require_once __DIR__ . '../../source/application/common/logic/PassFlow.php';
|
|
require_once __DIR__ . '../../source/thinkphp/helper.php';
|
|
require_once __DIR__ . '../../source/thinkphp/library/think/Config.php';
|
|
require_once __DIR__ . '../../source/application/common.php';
|
|
$config = require_once __DIR__ . '../../source/application/database.php';
|
|
|
|
date_default_timezone_set('Asia/Shanghai');
|
|
$dm = new Dm($config['connections']['dm']);
|
|
|
|
$xh = 0;
|
|
while($xh < 1) {
|
|
$data = [
|
|
'code' => 1,
|
|
'msg' => 'success'
|
|
];
|
|
|
|
# 客流趋势 与 占比
|
|
$allGroupTimeNumDay = PassFlow::allGroupTimeNum(['groupsId' => '','granularity' => 'daily'],$dm);
|
|
$allGroupTimeNumMonth = PassFlow::allGroupTimeNum(['groupsId' => '','granularity' => 'monthly'],$dm);
|
|
$allGroupTimeNumYear = PassFlow::allGroupTimeNum(['groupsId' => '','granularity' => 'yearly'],$dm);
|
|
$data['allGroupTimeNumDay'] = ['data' => $allGroupTimeNumDay];
|
|
$data['allGroupTimeNumMonth'] = ['data' => $allGroupTimeNumMonth];
|
|
$data['allGroupTimeNumYear'] = ['data' => $allGroupTimeNumYear];
|
|
|
|
# 今日各场馆
|
|
$data['toDayGroupsEnterNum'] = ['data' => PassFlow::toDayGroupsEnterNum($dm)];
|
|
|
|
# 中间总数据
|
|
$data['allGroupNum'] = ['data' => PassFlow::allGroupNum($dm)];
|
|
|
|
# 各场馆实时
|
|
$data['realTimeData'] = ['data' => PassFlow::realTimeData($dm)];
|
|
|
|
$xh = $xh + 1;
|
|
returnEventData($data,"message",$xh);
|
|
sleep(3);
|
|
}
|
|
|
|
function returnEventData($returnData, $event='message', $id=0, $retry=0) {
|
|
$str = '';
|
|
if($id>0) {
|
|
$str .= "id: {$id}".PHP_EOL;
|
|
}
|
|
if($event) {
|
|
$str.= "event: {$event}".PHP_EOL;
|
|
}
|
|
if($retry>0) {
|
|
$str .= "retry: {$retry}".PHP_EOL;
|
|
}
|
|
if(is_array($returnData)) {
|
|
$returnData = json_encode($returnData);
|
|
}
|
|
$str .= "data: {$returnData}".PHP_EOL;
|
|
$str .= PHP_EOL;
|
|
echo $str;
|
|
}
|