HavePermission($Permission)) { exit; } $serversArray = $user->GetServers(); // 默认当天 $startDate = array_key_exists("startDate", $_POST) ? $_POST["startDate"] : \CommFunc\CalcToStrDateTime("-7 days", "Y-m-d"); $endDate = array_key_exists("endDate", $_POST) ? $_POST["endDate"] : date("Y-m-d"); $payOrderTypeGroup = $_POST["payOrderTypeGroup"]; $reportInfo = null; $errorServerInfo = array(); $payOrderTypes = array(); if (array_key_exists("submit", $_POST)) { $_POST["eventType"] = "CTGReportAll"; $_POST["queryAllData"] = "on"; // 设置可查询备份数据 // echo "_POST:", print_r($_POST, true), "
"; \CommFunc\QueryEventData($user, $retInfo); if (isset($retInfo)) { // \Logging\LogInfo("返回查询结果: " . print_r($retInfo, true)); $reportInfo = array(); foreach ($retInfo as $serverName => $ret) { if (is_array($ret) && $ret["OK"] == 1) { foreach ($ret["reportInfo"] as $key => $orderInfoDict) { if (!array_key_exists($key, $reportInfo)) { $reportInfo[$key] = array(); } $repOrderInfoDict = $reportInfo[$key]; foreach ($orderInfoDict as $orderInfo => $retData) { if (!array_key_exists($orderInfo, $repOrderInfoDict)) { $repOrderInfoDict[$orderInfo] = $retData; } else { $retDataTotal = $repOrderInfoDict[$orderInfo]; foreach ($retData as $k => $v) { if ($k == "orderCoin") { continue; } $retDataTotal[$k] = ($retDataTotal[$k] ? $retDataTotal[$k] : 0) + $v; } $repOrderInfoDict[$orderInfo] = $retDataTotal; } foreach ($repOrderInfoDict[$orderInfo] as $k => $v) { if (\CommFunc\startsWith($k, "payOrderType")) { $payOrderTypes[$k] = intval(substr($k, strlen("payOrderType"))); } } } $reportInfo[$key] = $repOrderInfoDict; } foreach ($reportInfo as $key => $repOrderInfoDict) { //排序 根据 payCount 倒序排序 SORT_ASC 和 SORT_DESC array_multisort(array_column($repOrderInfoDict, 'payCount'), SORT_DESC, $repOrderInfoDict); $reportInfo[$key] = $repOrderInfoDict; } } else { $errorServerInfo[$serverName] = $ret; } } } } // \Logging\LogInfo("reportInfo: " . print_r($reportInfo, true)); // \Logging\LogInfo("errorServerInfo: " . print_r($errorServerInfo, true)); // \Logging\LogInfo("payOrderTypes: " . print_r($payOrderTypes, true)); //显示表格字段配置 key-参数名,value-说明 $tableArray = array( "Num" => array("编号", "5%", "center"), "orderInfo" => array("商品编号", "5%", "center"), "orderCoin" => array("orderCoin", "5%", "center"), "payCount" => array("总次数", "5%", "center"), ); if (!$payOrderTypeGroup) { ksort($payOrderTypes); foreach ($payOrderTypes as $k => $payOrderType) { $payName = \CommFunc\getPayOrderTypeName($payOrderType); $tableArray[$k] = array($payName . "次数", "5%", "center"); } } ?> <?php echo \Lang\gettext("充值分析"); ?>

: ~ />按支付类型分组

"; echo ""; foreach ($errorServerInfo as $serverName => $errInfo) { echo $serverName; if (is_array($errInfo)) { echo " => " . json_encode($errInfo); } else { echo " => " . $errInfo; } echo "
"; } echo "
"; echo "
"; } ?> "; } foreach ($reportInfo as $payOrderTypeKey => $orderInfoDict) { if ($payOrderTypeKey == "") { $caption = "所有"; } else { $caption = \CommFunc\getPayOrderTypeName(intval($payOrderTypeKey)); } $caption = "【" . $caption . "订单】"; echo ""; echo ""; echo ""; foreach ($tableArray as $value) { echo ""; $Num = 0; foreach ($orderInfoDict as $orderInfo => $orderData) { echo ""; foreach ($tableArray as $key => $value) { $tdContent = $orderData[$key]; if ($key == "Num") { $Num += 1; $tdContent = $Num; } // else if ($key == "payOrderType") { // $tdContent = \CommFunc\getPayOrderTypeName($tdContent); // } // else if ($key == "orderCoin") { // $tdContent = $tdContent / \CommFunc\getPayOrderCoinRate($orderData["payOrderType"]); // } else if ($key == "orderInfo") { $tdContent = $orderInfo; } echo ""; } echo ""; } echo "
" . $caption . "
" . $value[0] . ""; } echo "
" . $tdContent . "
"; echo "
"; } } ?> " onclick="return checkMultiSubmit()" />