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

@@ -297,6 +297,11 @@ $selKeyValue = $_REQUEST['selKeyValue'];
if(strlen($selKeyFieldName) > 0 && strlen($selKeyValue) > 0){
$whereStr = "WHERE $selKeyFieldName like '%$selKeyValue%'";
}
if(strlen($selKeyFieldName) > 0 && strlen($selKeyValue) > 0 &&$sysTypeNo==330){
$whereFlag=" and $selKeyFieldName like '%$selKeyValue%'";
}
if($DEBUG)echo "sysTypeNo=$sysTypeNo,opps_type_sel=$opps_type_sel<br>";
if($sysTypeNo == 375)
{
@@ -325,6 +330,7 @@ if(strlen($whereStr) > 10){
//首次查询,查出符合条件的纪录条数,并在以后的页面跳转中传递。
$numberOfRecords = $_REQUEST['numberOfRecords'];
$numberOfFlagRecords = $_REQUEST['numberOfFlagRecords'];
if(!$numberOfRecords){
$bgnNo=0;
@@ -343,6 +349,21 @@ if(!$numberOfRecords){
$numberOfRecords = $record[0];
if($DEBUG) echo "<br>numberOfRecords=$numberOfRecords";
//debug_log("/tmp/debug.txt",$numberOfRecords);
if($sysTypeNo==330){
$selUsedFlagSql="SELECT count(*) as totalFlag
FROM $tableName
WHERE used_flag = '01'
$whereFlag
$bascWhereStr
";
if($DEBUG) echo "<br>selUsedFlagSql=$selUsedFlagSql";
$flagResult=mysqli_query($pubConn,$selUsedFlagSql);
echo mysqli_error($pubConn);
$flagRecord = @mysqli_fetch_array($flagResult);
$numberOfFlagRecords = $flagRecord[0];
}
if($numberOfRecords > 0){
//debug_log("/tmp/debug.txt","test2");
//插入日志
@@ -394,6 +415,8 @@ if($numberOfRecords > 0){
}
if($sysTypeNo==390)
$basePageLink ="sysTypeNo=$sysTypeNo&sysId=$sysId&dataTypeNo=$dataTypeNo&numberOfRecords=$numberOfRecords&orderByField=$orderByField";
else if($sysTypeNo==330)
$basePageLink ="sysTypeNo=$sysTypeNo&sysId=$sysId&dataTypeNo=$dataTypeNo&numberOfRecords=$numberOfRecords&numberOfFlagRecords=$numberOfFlagRecords";
else
$basePageLink ="sysTypeNo=$sysTypeNo&dataTypeNo=$dataTypeNo&numberOfRecords=$numberOfRecords&orderByField=$orderByField";
@@ -441,7 +464,11 @@ echo "<TABLE border=\"0\" width=\"100%\" cellpadding=\"2\" cellspacing=\"0\" bo
";
echo "<TR><TD>";
echo "$strDisplayRecords<FONT color=#0000ff>&nbsp;$showBgnNo - $nextBgnNo</FONT>, ";
echo "($strTotal:$numberOfRecords)";
if($sysTypeNo==330){
echo "($strTotal:$numberOfRecords,UsedFlag:$numberOfFlagRecords)";
}else{
echo "($strTotal:$numberOfRecords)";
}
echo "</TD>";
echo "<TD align=\"right\">";
// NEW: Display a link for the previous set of records.
@@ -308,6 +308,9 @@ if(strlen($selKeyFieldName) > 0 && strlen($selKeyValue) > 0){
$whereStr = "WHERE $selKeyFieldName like '%$selKeyValue%'";
}
if(strlen($selKeyFieldName) > 0 && strlen($selKeyValue) > 0 &&$sysType==330){
$whereFlag=" and $selKeyFieldName like '%$selKeyValue%'";
}
//查询基本条件
if(strlen($whereStr) > 10){
$bascWhereStr ="";
@@ -315,6 +318,8 @@ if(strlen($whereStr) > 10){
$bascWhereStr ="";
}
$numberOfRecords = $_REQUEST['numberOfRecords'];
$numberOfFlagRecords = $_REQUEST['numberOfFlagRecords'];
//首次查询,查出符合条件的纪录条数,并在以后的页面跳转中传递。
if(!$numberOfRecords){
$bgnNo=0;
@@ -329,7 +334,22 @@ if(!$numberOfRecords){
$record = @mysqli_fetch_array($result);
$numberOfRecords = $record[0];
if($DEBUG) echo "<br>numberOfRecords=$numberOfRecords";
if($sysTypeNo==330){
$selUsedFlagSql="SELECT count(*) as totalFlag
FROM $tableName
WHERE used_flag = '01'
$whereFlag
$bascWhereStr
";
if($DEBUG) echo "<br>selUsedFlagSql=$selUsedFlagSql";
$flagResult=mysqli_query($pubConn,$selUsedFlagSql);
echo mysqli_error($pubConn);
$flagRecord = @mysqli_fetch_array($flagResult);
$numberOfFlagRecords = $flagRecord[0];
}
if($numberOfRecords > 0){
//插入日志
insertLog("search $sysTypeName subscriber: $selKeyValue ");
@@ -366,7 +386,13 @@ if($numberOfRecords > 0){
if ($prevBgnNo < 0) {
$prevBgnNo = 0;
}
$basePageLink ="sysTypeNo=$sysTypeNo&sysId=$sysId&dataTypeNo=$dataTypeNo&numberOfRecords=$numberOfRecords";
if($sysTypeNo==330){
$basePageLink ="sysTypeNo=$sysTypeNo&sysId=$sysId&dataTypeNo=$dataTypeNo&numberOfRecords=$numberOfRecords&numberOfFlagRecords=$numberOfFlagRecords";
}else{
$basePageLink ="sysTypeNo=$sysTypeNo&sysId=$sysId&dataTypeNo=$dataTypeNo&numberOfRecords=$numberOfRecords";
}
$basePageLink .="&selKeyFieldName=$selKeyFieldName&selKeyValue=$selKeyValue";
$prePageLink ="bgnNo=$prevBgnNo";
$nextPageLink ="bgnNo=$nextBgnNo";
@@ -398,7 +424,11 @@ function gotoPage(){
<TD >
<?php
echo "$strDisplayRecords<FONT color=#0000ff>&nbsp;$showBgnNo - $nextBgnNo</FONT>, ";
echo "($strTotal:$numberOfRecords)";
if($sysTypeNo==330){
echo "($strTotal:$numberOfRecords,UsedFlag:$numberOfFlagRecords)";
}else{
echo "($strTotal:$numberOfRecords)";
}
?>
<TD>&nbsp;
@@ -262,6 +262,9 @@ $thisMonthTotalMMSRetrieveCharged=0;
$thisMonthTotalMMSEmailNumber=0;
$thisMonthTotalMMSEmailCharged=0;
$allUssdCodes = []; // 用于存储所有记录的 ussd_code
do{
//Account summary
if ($lastMonthBalance==0)
@@ -379,6 +382,54 @@ do{
$thisMonthTotalMMSEmailNumber+=$selRow[mms_email_number];
$thisMonthTotalMMSEmailCharged+=$selRow[mms_email_charged];
if(!count($allUssdCodes)){ // 代表是第一条记录
// 初始化数组
for ($i = 1; $i <= 8; $i++) {
$allUssdCodes[$i] = $selRow['ussd_code_' . $i];
$thisMonthTotalSessionNum[$i] = $selRow['session_num_' . $i];
$thisMonthTotalSessionDuration[$i] = $selRow['session_duration_'. $i];
$thisMonthTotalErrorTimeout[$i] = $selRow['error_timeout_'. $i];
$thisMonthTotalErrorSystem[$i] = $selRow['error_system_'. $i];
$thisMonthTotalErrorMessage[$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];
$thisMonthTotalSessionNum[$index] += $selRow['session_num_' . $j];
$thisMonthTotalSessionDuration[$index] += $selRow['session_duration_'. $j];
$thisMonthTotalErrorTimeout[$index] += $selRow['error_timeout_'. $j];
$thisMonthTotalErrorSystem[$index] += $selRow['error_system_'. $j];
$thisMonthTotalErrorMessage[$index] += $selRow['error_message_'. $j];
} else {
//找一个空位存放
foreach ($allUssdCodes as $key => $value) {
if (!$value) {
$allUssdCodes[$key] = $currentCode;
$codeToIndexMap[$currentCode] = $key;
$thisMonthTotalSessionNum[$key] = $selRow['session_num_' . $j];
$thisMonthTotalSessionDuration[$key] = $selRow['session_duration_'. $j];
$thisMonthTotalErrorTimeout[$key] = $selRow['error_timeout_'. $j];
$thisMonthTotalErrorSystem[$key] = $selRow['error_system_'. $j];
$thisMonthTotalErrorMessage[$key] = $selRow['error_message_'. $j];
break;
}
}
}
}
}
}while($selRow=mysqli_fetch_array($selRes));
$thisMonthTotalGPRSVolume=number_format($thisMonthTotalGPRSVolume,3,'.','');
@@ -735,6 +786,79 @@ for($i=1;$i<=12;$i++){
</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>";
// $thisMonthTotalSessionNum[$i]+=$selRow['session_num_' . $i];
// $thisMonthTotalSessionDuration[$i]+=$selRow['session_duration_'. $i];
// $thisMonthTotalErrorTimeout[$i]+=$selRow['error_timeout_'. $i];
// $thisMonthTotalErrorSystem[$i]+=$selRow['error_system_'. $i];
// $thisMonthTotalErrorMessage[$i]+=$selRow['error_message_'. $i];
// $thisMonthTotalErrorReserve1[$i]+=$selRow['error_reserve_1_'. $i];
// $thisMonthTotalErrorReserve2[$i]+=$selRow['error_reserve_2_'. $i];
$average1 = $thisMonthTotalSessionNum[1] ? round($thisMonthTotalSessionDuration[1]/($thisMonthTotalSessionNum[1]), 2) : 0;
$tps1 = round($thisMonthTotalSessionNum[1]/(3600*24), 2);
echo "<td align=\"right\">$allUssdCodes[1]</td>";
echo "<td align=\"right\">$thisMonthTotalSessionNum[1]</td>";
echo "<td align=\"right\">$thisMonthTotalSessionDuration[1]</td>";
echo "<td align=\"right\">$thisMonthTotalErrorTimeout[1]</td>";
echo "<td align=\"right\">$thisMonthTotalErrorSystem[1]</td>";
echo "<td align=\"right\">$thisMonthTotalErrorMessage[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 = $thisMonthTotalSessionNum[$i] ? round($thisMonthTotalSessionDuration[$i]/$thisMonthTotalSessionNum[$i], 2) : 0;
$tps = round($thisMonthTotalSessionNum[$i]/(3600*24), 2);
echo "<tr>";
echo "<td>$i</td>";
echo "<td align=\"right\">{$allUssdCodes[$i]}</td>";
echo "<td align=\"right\">{$thisMonthTotalSessionNum[$i]}</td>";
echo "<td align=\"right\">{$thisMonthTotalSessionDuration[$i]}</td>";
echo "<td align=\"right\">{$thisMonthTotalErrorTimeout[$i]}</td>";
echo "<td align=\"right\">{$thisMonthTotalErrorSystem[$i]}</td>";
echo "<td align=\"right\">{$thisMonthTotalErrorMessage[$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\">";
@@ -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\">";
+1 -1
View File
@@ -227,7 +227,7 @@ function selectChn(){
}
?>
</td></tr>
<tr><td align="center"><b><font size=6>R2503.1</font></b></td></tr>
<tr><td align="center"><b><font size=6>R2503.2</font></b></td></tr>
</table>
</form>
</body>