0, 'msg' => 'requestData不能为空,且必须是数组']; if (empty($url)) return ['status' => 0, 'msg' => 'url不能为空']; # 获取请求路径 if (empty($host_path)) { $config = config('api_config'); $host_path = $config['host_path']; } # 验证令牌 $token = '9c4cb25665cf08667c815420ab383cb5'; # 请求接口数据 $data = [ 'data' => base64_encode(json_encode($requestData)), 'token' => md5($token . date('Ymd')) ]; $json_data = json_encode($data); $createUrl = $host_path . $url; # 发起请求 $result = post_token($createUrl,$json_data,false,[],$token); $result = json_decode($result,true); # 判断返回信息 if ($result['code'] != 1) return ['status' => 0, 'msg' => $result['msg']]; return ['status' => 1]; } /** * 获取统计组ID * @param $dataType // 1 返回字符串 2 返回数组 * @return array|string */ public static function getGroupIds($dataType) { include '../module/dm/Dm.php'; $dm = new Dm(); $groupRes = $dm->select('bt_passenger_monitor_group',null,'"groupId"'); $groupIdArr = array_column($groupRes,'groupId') ?: []; return $dataType == 2 ? $groupIdArr : implode(",",$groupIdArr); } /** * 获取实时统计组id * @param $config * @param $token * @param $dataType * @return array|string */ public static function getRealGroupIds($config,$token,$dataType) { $url = $config['host_url'] . "/api/cfas/v2/countGroup/groups/page"; $pageNo = 1; $pageSize = 1; $groupIdArr = []; while (1) { $dataArr = [ "regionId"=> "root000000", "isCascade"=> 1, "groupType"=> 0, "statType"=> 0, "pageNo"=> $pageNo, "pageSize"=> $pageSize ]; $json_data = json_encode($dataArr); $result = post_token($url,$json_data,false,[],$token); $res_data = json_decode($result,true); # 存在错误结束循环 if ($res_data['code'] != 0) break; # 数据不存在结束循环 $list = (array)$res_data['data']['list']; if (empty($list)) break; foreach ($list as $value) { $groupIdArr[] = $value['groupId']; } # 总条数不够结束循环 if (count($list) < $pageSize) break; ++$pageNo; } return $dataType == 2 ? $groupIdArr : implode(",",$groupIdArr); } }