add new version

This commit is contained in:
root committed 2025-04-17 14:11:31 +08:00
1 parent ed567fcda3
commit b79e1c828f
5 files changed
+358 -4

No files matched your search

@@ -330,6 +330,9 @@ $thisWeekTotalMMSRetrieveCharged=0;
$thisWeekTotalMMSEmailNumber=0;
$thisWeekTotalMMSEmailCharged=0;
$allUssdCodes = []; // 用于存储所有记录的 ussd_code
do{
//Account summary
if($lastWeekBalance == 0){
@@ -447,7 +450,107 @@ do{
$thisWeekTotalMMSRetrieveCharged+=$selRow[mms_retrieve_charged];
$thisWeekTotalMMSEmailNumber+=$selRow[mms_email_number];
$thisWeekTotalMMSEmailCharged+=$selRow[mms_email_charged];
// for ($i = 1; $i <= 8; $i++) {
// //$average = $array['session_num_' . $i] ? round($array['session_duration_' . $i]/$array['session_num_' . $i], 2) : 0;
// //$tps = round($array['session_num_' . $i]/(3600*24), 2);
// $thisWeekTotalSessionNum[$i]+=$selRow['session_num_' . $i];
// $thisWeekTotalSessionDuration[$i]+=$selRow['session_duration_'. $i];
// $thisWeekTotalErrorTimeout[$i]+=$selRow['error_timeout_'. $i];
// $thisWeekTotalErrorSystem[$i]+=$selRow['error_system_'. $i];
// $thisWeekTotalErrorMessage[$i]+=$selRow['error_message_'. $i];
// $thisWeekTotalErrorReserve1[$i]+=$selRow['error_reserve_1_'. $i];
// $thisWeekTotalErrorReserve2[$i]+=$selRow['error_reserve_2_'. $i];
// }
// if(!count($allUssdCodes)){ //代表是第一条记录
// //echo $selRow['ussd_code_1'];
// for ($i = 1; $i <= 8; $i++) {
// $allUssdCodes[$i] = $selRow['ussd_code_' . $i];
// $thisWeekTotalSessionNum[$i]+=$selRow['session_num_' . $i];
// $thisWeekTotalSessionDuration[$i]+=$selRow['session_duration_'. $i];
// $thisWeekTotalErrorTimeout[$i]+=$selRow['error_timeout_'. $i];
// $thisWeekTotalErrorSystem[$i]+=$selRow['error_system_'. $i];
// $thisWeekTotalErrorMessage[$i]+=$selRow['error_message_'. $i];
// }
// //echo $selRow['ussd_code_2'];
// }else{//剩余记录
// foreach ($allUssdCodes as $key => $value) {
// if(!$value){ //空则要把现在的值补充进去
// $allUssdCodes[$key] = $selRow['ussd_code_' . $key];
// $thisWeekTotalSessionNum[$key]+=$selRow['session_num_' . $key];
// $thisWeekTotalSessionDuration[$key]+=$selRow['session_duration_'. $key];
// $thisWeekTotalErrorTimeout[$key]+=$selRow['error_timeout_'. $key];
// $thisWeekTotalErrorSystem[$key]+=$selRow['error_system_'. $key];
// $thisWeekTotalErrorMessage[$key]+=$selRow['error_message_'.$key];
// }else{//不空则开始比较
// for ($j = 1; $j <= 8; $j++) {//当前allUssdCodes[key]与当前记录全部进行比较
// if($allUssdCodes[$key] == $selRow['ussd_code_' . $j]){
// $thisWeekTotalSessionNum[$key]+=$selRow['session_num_' . $key];
// $thisWeekTotalSessionDuration[$key]+=$selRow['session_duration_'. $key];
// $thisWeekTotalErrorTimeout[$key]+=$selRow['error_timeout_'. $key];
// $thisWeekTotalErrorSystem[$key]+=$selRow['error_system_'. $key];
// $thisWeekTotalErrorMessage[$key]+=$selRow['error_message_'.$key];
// break;
// }
// }
// }
// //echo "key=$key, value=$value<br>";
// }
// }
if(!count($allUssdCodes)){ // 代表是第一条记录
// 初始化数组
for ($i = 1; $i <= 8; $i++) {
$allUssdCodes[$i] = $selRow['ussd_code_' . $i];
$thisWeekTotalSessionNum[$i] = $selRow['session_num_' . $i];
$thisWeekTotalSessionDuration[$i] = $selRow['session_duration_'. $i];
$thisWeekTotalErrorTimeout[$i] = $selRow['error_timeout_'. $i];
$thisWeekTotalErrorSystem[$i] = $selRow['error_system_'. $i];
$thisWeekTotalErrorMessage[$i] = $selRow['error_message_'. $i];
}
} else { // 剩余记录
// 创建USSD索引的映射
$codeToIndexMap = array_flip(array_filter($allUssdCodes));
for ($j = 1; $j <= 8; $j++) {
$currentCode = $selRow['ussd_code_' . $j];
if (!$currentCode) continue; // 跳过空代码
if (isset($codeToIndexMap[$currentCode])) {
// 已存在的代码,累加统计数据
$index = $codeToIndexMap[$currentCode];
$thisWeekTotalSessionNum[$index] += $selRow['session_num_' . $j];
$thisWeekTotalSessionDuration[$index] += $selRow['session_duration_'. $j];
$thisWeekTotalErrorTimeout[$index] += $selRow['error_timeout_'. $j];
$thisWeekTotalErrorSystem[$index] += $selRow['error_system_'. $j];
$thisWeekTotalErrorMessage[$index] += $selRow['error_message_'. $j];
} else {
//找一个空位存放
foreach ($allUssdCodes as $key => $value) {
if (!$value) {
$allUssdCodes[$key] = $currentCode;
$codeToIndexMap[$currentCode] = $key;
$thisWeekTotalSessionNum[$key] = $selRow['session_num_' . $j];
$thisWeekTotalSessionDuration[$key] = $selRow['session_duration_'. $j];
$thisWeekTotalErrorTimeout[$key] = $selRow['error_timeout_'. $j];
$thisWeekTotalErrorSystem[$key] = $selRow['error_system_'. $j];
$thisWeekTotalErrorMessage[$key] = $selRow['error_message_'. $j];
break;
}
}
}
}
}
}while($selRow=mysqli_fetch_array($selRes));
$thisWeekTotalGPRSVolume=number_format($thisWeekTotalGPRSVolume,3,'.','');
@@ -863,7 +966,77 @@ echo "</b></center>";
?>
</tr>
</table>
<?php
//----------------------------------USSD Code Report-----------------------------------------------------------
?>
<p></p>
<TABLE border="1" width="100%" cellpadding="2" cellspacing="0" bordercolor="#666666" bordercolordark="#FFFFFF" bgcolor="#FFFFFF">
<TR bgcolor=#E6E6E6>
<?php
echo "<td width=\"10%\">&nbsp;</td>";
echo "<td width=\"10%\">Index</td>";
echo "<td width=\"10%\">USSD Code</td> ";
echo "<td width=\"10%\" align=\"right\">Session Num</td> ";
echo "<td width=\"10%\" align=\"right\">Session Duration</td> ";
echo "<td width=\"10%\" align=\"right\">Error Timeout</td> ";
echo "<td width=\"10%\" align=\"right\">Error System</td> ";
echo "<td width=\"10%\" align=\"right\">Error Message</td> ";
echo "<td width=\"10%\" align=\"right\">Average Duration</td> ";
echo "<td width=\"10%\" align=\"right\">TPS</td> ";
?>
</TR>
<TR >
<td rowspan="11"><?php echo "USSD Code Report"; ?></td>
<?php
echo "<td>1</td>";
// $thisWeekTotalSessionNum[$i]+=$selRow['session_num_' . $i];
// $thisWeekTotalSessionDuration[$i]+=$selRow['session_duration_'. $i];
// $thisWeekTotalErrorTimeout[$i]+=$selRow['error_timeout_'. $i];
// $thisWeekTotalErrorSystem[$i]+=$selRow['error_system_'. $i];
// $thisWeekTotalErrorMessage[$i]+=$selRow['error_message_'. $i];
// $thisWeekTotalErrorReserve1[$i]+=$selRow['error_reserve_1_'. $i];
// $thisWeekTotalErrorReserve2[$i]+=$selRow['error_reserve_2_'. $i];
$average1 = $thisWeekTotalSessionNum[1] ? round($thisWeekTotalSessionDuration[1]/($thisWeekTotalSessionNum[1]), 2) : 0;
$tps1 = round($thisWeekTotalSessionNum[1]/(3600*24), 2);
echo "<td align=\"right\">$allUssdCodes[1]</td>";
echo "<td align=\"right\">$thisWeekTotalSessionNum[1]</td>";
echo "<td align=\"right\">$thisWeekTotalSessionDuration[1]</td>";
echo "<td align=\"right\">$thisWeekTotalErrorTimeout[1]</td>";
echo "<td align=\"right\">$thisWeekTotalErrorSystem[1]</td>";
echo "<td align=\"right\">$thisWeekTotalErrorMessage[1]</td>";
echo "<td align=\"right\">$average1</td>";
echo "<td align=\"right\">$tps1</td>";
// echo "<td align=\"right\">$incoming_call_nums</td>";
// echo "<td align=\"right\">$incoming_call_duration</td>";
// echo "<td align=\"right\">$incoming_call_charge</td>";
?>
</TR>
<?php
for ($i = 2; $i <= 8; $i++) {
$average = $thisWeekTotalSessionNum[$i] ? round($thisWeekTotalSessionDuration[$i]/$thisWeekTotalSessionNum[$i], 2) : 0;
$tps = round($thisWeekTotalSessionNum[$i]/(3600*24), 2);
echo "<tr>";
echo "<td>$i</td>";
echo "<td align=\"right\">{$allUssdCodes[$i]}</td>";
echo "<td align=\"right\">{$thisWeekTotalSessionNum[$i]}</td>";
echo "<td align=\"right\">{$thisWeekTotalSessionDuration[$i]}</td>";
echo "<td align=\"right\">{$thisWeekTotalErrorTimeout[$i]}</td>";
echo "<td align=\"right\">{$thisWeekTotalErrorSystem[$i]}</td>";
echo "<td align=\"right\">{$thisWeekTotalErrorMessage[$i]}</td>";
echo "<td align=\"right\">{$average}</td>";
echo "<td align=\"right\">{$tps}</td>";
echo "</tr>";
}
?>
</TABLE>
<p></p>
<?php
echo "<table border=\"1\" width=\"100%\" cellpadding=\"2\" cellspacing=\"0\" bordercolor=\"#666666\" bordercolordark=\"#FFFFFF\" bgcolor=\"#FFFFFF\">";
echo "<tr bgcolor=\"#E6E6E6\">";