/** * TrackWarnStatAct::act_viewTable() * 列出某个运输方式各渠道各节点的(处理、时效)效率 * @param integer $carrierId 运输方式ID * @param integer $channelId 渠道ID * @param string $timeNode 时间条件 * @param string $statType 统计类型 * @return json string */ public function act_viewTable() { $condition = "1"; $carrierId = isset($_POST['carrierId']) ? abs(intval($_POST['carrierId'])) : 0; $channelId = isset($_POST['channelId']) ? abs(intval($_POST['channelId'])) : 0; $countryId = isset($_POST['countryId']) ? abs(intval($_POST['countryId'])) : 0; $timeNode = isset($_GET['timeNode']) ? post_check(trim($_GET['timeNode'])) : ''; $statType = isset($_POST['statType']) ? post_check(trim($_POST['statType'])) : ''; $is_warn = isset($_POST['is_warn']) ? post_check(trim($_POST['is_warn'])) : 0; $act = isset($_REQUEST["act"]) ? post_check($_REQUEST["act"]) : ""; $mod = isset($_REQUEST["mod"]) ? post_check($_REQUEST["mod"]) : ""; if (!AuthUser::checkLogin($mod, $act)) { self::$errCode = 10000; self::$errMsg = "对不起,您无跟踪号统计查看权限!"; return false; } if (empty($carrierId)) { self::$errCode = 10001; self::$errMsg = "运输方式参数有误"; return false; } if (empty($timeNode) || !in_array($timeNode, array('scanTime'))) { self::$errCode = 10002; self::$errMsg = "时间条件参数有误"; return false; } if (empty($statType) || !in_array($statType, array('nodeEff', 'nodeEffPer', 'nodeTime', 'internalTime', 'todayWarnPer'))) { self::$errCode = 10003; self::$errMsg = "统计类型参数有误"; return false; } if (!in_array($is_warn, array(0, 1))) { self::$errCode = 10004; self::$errMsg = "预警天数参数有误"; return false; } if (!empty($timeNode)) { $startTime = isset($_GET['startTime']) ? strtotime(trim($_GET['startTime']) . " 00:00:00") : strtotime(date("Y-m-d", time()) . " 00:00:00"); $endTime = isset($_GET['endTime']) ? strtotime(trim($_GET['endTime']) . " 23:59:59") : strtotime(date("Y-m-d", time()) . " 23:59:59"); if ($startTime && $endTime) { $condition .= ' AND ' . $timeNode . " BETWEEN '" . $startTime . "' AND " . "'" . $endTime . "'"; } } if (in_array($statType, array('todayWarnPer'))) { $res = ""; $nodeArr = TransOpenApiModel::getRandTrackNodeList($carrierId); foreach ($nodeArr as $key => $nd) { $res .= '<span class="stat_pic">'; $condition = array(1, $timeNode, $startTime, $endTime, $key, $nd['nodeName'] . '节点--各渠道预警率信息一览表'); $res .= TrackWarnStatModel::getViewTodayTable($carrierId, $channelId, $statType, $condition, $is_warn, $countryId); $res .= '</span>'; } } else { $res = TrackWarnStatModel::getViewTable($carrierId, $channelId, $statType, $condition, $is_warn, $countryId); } self::$errCode = TrackWarnStatModel::$errCode; self::$errMsg = TrackWarnStatModel::$errMsg; return $res; }
$realPercent = round($realTotal / $total, 2) * 100; $warnPercent = round(($realTotal - $warnTotal) / $total, 2) * 100; $table .= "<td>{$total}</td><td>{$realPercent}%</td><td style=\"color:red\">{$warnPercent}%</td>"; $key++; } $table .= "</tr>"; } $table .= "</table>"; } $table .= '<p style="' . $css_height . '">详情请登录:<a href="' . $system_url . '" target="_blank">' . $system_name . '</a><br/></br>' . date('Y-m-d', $endTime) . '<br/>' . $system_name . '</p>'; echo $table, "\n"; } else { $startTime = strtotime("-{$day} day" . " 00:00:01"); $endTime = strtotime(date('Y-m-d') . " 23:59:59"); $table = ""; $title = "【日预警率简报】" . date('Y-m-d', time()) . " 运输方式{$res['carrierNameCn']}渠道各节点{$day}日内预警率数据一览表"; $nodeArr = TransOpenApiModel::getRandTrackNodeList($carrierId); foreach ($nodeArr as $key => $nd) { $channelId = $ch['id']; $timeNode = "scanTime"; $condition = array(1, $timeNode, $startTime, $endTime, $key, $nd['nodeName'] . '节点--各渠道预警率信息一览表'); $table .= "<p style=\"{$css_height}\">" . TrackWarnStatModel::getViewTodayTable($carrierId, $channelId, "todayWarnPer", $condition, 0, 0) . "</p>"; } $table .= '<p style="' . $css_height . '">详情请登录:<a href="' . $system_url . '" target="_blank">' . $system_name . '</a><br/></br>' . date('Y-m-d', $endTime) . '<br/>' . $system_name . '</p>'; echo $table, "\n"; } $message = TransOpenApiModel::sendMessage("{$type}", "{$from}", "{$to}", $table, "{$title}"); echo $message, "\n"; echo "\n\n完成时间" . date('Y-m-d H:i:s', time()) . "\n"; $dbConn->close(); exit;