add export ussd alarm smpp

This commit is contained in:
root
2025-07-30 17:30:36 +08:00
parent 54339f4273
commit b24a4bfe72
8 changed files with 458 additions and 73 deletions

View File

@@ -9,79 +9,114 @@ $page_id=$_GET['page_id'];
$sel_date_from=$_GET['sel_date_from'];
$sel_date_to=$_GET['sel_date_to'];
$show_type=$_GET['show_type'];
$keyTwo=$_REQUEST['keyTwo'];
$startTime=date("Y-m-d H:i:s",mktime(0,0,0,date("m"),date("d")-$sel_date_from,date("Y")));
$endTime=date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-$sel_date_to,date("Y")));
switch($sysTypeNo){
case '350':
$sumSql="SELECT SUM(MS_to_SMSC_attempt) AS total_MS_to_SMSC_attempt,SUM(MS_to_SMSC_success) AS total_MS_to_SMSC_success,
SUM(MS_to_SMSC_sysfail+MS_to_SMSC_userfail+MS_to_SMSC_smfail) AS total_MS_to_SMSC_Failure,
SUM(MS_to_SMSC_byte) AS total_MS_to_SMSC_byte,
SUM(PPS_to_SMSC_attempt) AS total_PPS_to_SMSC_attempt,
SUM(PPS_to_SMSC_success) AS total_PPS_to_SMSC_success,
SUM(PPS_to_SMSC_sysfail+PPS_to_SMSC_userfail+PPS_to_SMSC_smfail) AS total_PPS_to_SMSC_Failure,
SUM(PPS_to_SMSC_byte) AS total_PPS_to_SMSC_byte,
SUM(VMS_to_SMSC_attempt) AS total_VMS_to_SMSC_attempt,
SUM(VMS_to_SMSC_success) AS total_VMS_to_SMSC_success,
SUM(VMS_to_SMSC_sysfail+VMS_to_SMSC_userfail+VMS_to_SMSC_smfail) AS total_VMS_to_SMSC_Failure,
SUM(VMS_to_SMSC_byte) AS total_VMS_to_SMSC_byte,
SUM(SMPP_to_SMSC_attempt) AS total_SMPP_to_SMSC_attempt,
SUM(SMPP_to_SMSC_success) AS total_SMPP_to_SMSC_success,
SUM(SMPP_to_SMSC_sysfail+SMPP_to_SMSC_userfail+SMPP_to_SMSC_smfail) AS total_SMPP_to_SMSC_Failure,
SUM(SMPP_to_SMSC_byte) AS total_SMPP_to_SMSC_byte,
SUM(SMSC_to_MS_attempt) AS total_SMSC_to_MS_attempt,
SUM(SMSC_to_MS_success) AS total_SMSC_to_MS_success,
SUM(SMSC_to_MS_sysfail+SMSC_to_MS_userfail+SMSC_to_MS_smfail) AS total_SMSC_to_MS_Failure,
SUM(SMSC_to_MS_byte) AS total_SMSC_to_MS_byte,
SUM(SMSC_to_PPS_attempt) AS total_SMSC_to_PPS_attempt,
SUM(SMSC_to_PPS_success) AS total_SMSC_to_PPS_success,
SUM(SMSC_to_PPS_sysfail+SMSC_to_PPS_smfail+SMSC_to_PPS_userfail) AS total_SMSC_to_PPS_Failure,
SUM(SMSC_to_PPS_byte) AS total_SMSC_to_PPS_byte,
SUM(SMSC_to_VMS_attempt) AS total_SMSC_to_VMS_attempt,
SUM(SMSC_to_VMS_success) AS total_SMSC_to_VMS_success,
SUM(SMSC_to_VMS_sysfail+SMSC_to_VMS_userfail+SMSC_to_VMS_smfail) AS total_SMSC_to_VMS_Failure,
SUM(SMSC_to_VMS_byte) AS total_SMSC_to_VMS_byte,
SUM(SMSC_to_SMPP_attempt) AS total_SMSC_to_SMPP_attempt,
SUM(SMSC_to_SMPP_success) AS total_SMSC_to_SMPP_success,
SUM(SMSC_to_SMPP_sysfail+SMSC_to_SMPP_userfail+SMSC_to_SMPP_smfail) AS total_SMSC_to_SMPP_Failure,
SUM(SMSC_to_SMPP_byte) AS total_SMSC_to_SMPP_byte
FROM CSTA_DB.smscDetailData
// $sumSql="SELECT SUM(MS_to_SMSC_attempt) AS total_MS_to_SMSC_attempt,SUM(MS_to_SMSC_success) AS total_MS_to_SMSC_success,
// SUM(MS_to_SMSC_sysfail+MS_to_SMSC_userfail+MS_to_SMSC_smfail) AS total_MS_to_SMSC_Failure,
// SUM(MS_to_SMSC_byte) AS total_MS_to_SMSC_byte,
// SUM(PPS_to_SMSC_attempt) AS total_PPS_to_SMSC_attempt,
// SUM(PPS_to_SMSC_success) AS total_PPS_to_SMSC_success,
// SUM(PPS_to_SMSC_sysfail+PPS_to_SMSC_userfail+PPS_to_SMSC_smfail) AS total_PPS_to_SMSC_Failure,
// SUM(PPS_to_SMSC_byte) AS total_PPS_to_SMSC_byte,
// SUM(VMS_to_SMSC_attempt) AS total_VMS_to_SMSC_attempt,
// SUM(VMS_to_SMSC_success) AS total_VMS_to_SMSC_success,
// SUM(VMS_to_SMSC_sysfail+VMS_to_SMSC_userfail+VMS_to_SMSC_smfail) AS total_VMS_to_SMSC_Failure,
// SUM(VMS_to_SMSC_byte) AS total_VMS_to_SMSC_byte,
// SUM(SMPP_to_SMSC_attempt) AS total_SMPP_to_SMSC_attempt,
// SUM(SMPP_to_SMSC_success) AS total_SMPP_to_SMSC_success,
// SUM(SMPP_to_SMSC_sysfail+SMPP_to_SMSC_userfail+SMPP_to_SMSC_smfail) AS total_SMPP_to_SMSC_Failure,
// SUM(SMPP_to_SMSC_byte) AS total_SMPP_to_SMSC_byte,
// SUM(SMSC_to_MS_attempt) AS total_SMSC_to_MS_attempt,
// SUM(SMSC_to_MS_success) AS total_SMSC_to_MS_success,
// SUM(SMSC_to_MS_sysfail+SMSC_to_MS_userfail+SMSC_to_MS_smfail) AS total_SMSC_to_MS_Failure,
// SUM(SMSC_to_MS_byte) AS total_SMSC_to_MS_byte,
// SUM(SMSC_to_PPS_attempt) AS total_SMSC_to_PPS_attempt,
// SUM(SMSC_to_PPS_success) AS total_SMSC_to_PPS_success,
// SUM(SMSC_to_PPS_sysfail+SMSC_to_PPS_smfail+SMSC_to_PPS_userfail) AS total_SMSC_to_PPS_Failure,
// SUM(SMSC_to_PPS_byte) AS total_SMSC_to_PPS_byte,
// SUM(SMSC_to_VMS_attempt) AS total_SMSC_to_VMS_attempt,
// SUM(SMSC_to_VMS_success) AS total_SMSC_to_VMS_success,
// SUM(SMSC_to_VMS_sysfail+SMSC_to_VMS_userfail+SMSC_to_VMS_smfail) AS total_SMSC_to_VMS_Failure,
// SUM(SMSC_to_VMS_byte) AS total_SMSC_to_VMS_byte,
// SUM(SMSC_to_SMPP_attempt) AS total_SMSC_to_SMPP_attempt,
// SUM(SMSC_to_SMPP_success) AS total_SMSC_to_SMPP_success,
// SUM(SMSC_to_SMPP_sysfail+SMSC_to_SMPP_userfail+SMSC_to_SMPP_smfail) AS total_SMSC_to_SMPP_Failure,
// SUM(SMSC_to_SMPP_byte) AS total_SMSC_to_SMPP_byte
// FROM CSTA_DB.smscDetailData
// WHERE csta_datetime >= '{$startTime}'
// AND csta_datetime <= '{$endTime}'";
if($keyTwo==="999"){
$smppWhere="";
}else{
$smppWhere="AND smppId=$keyTwo";
}
$sumSql="SELECT
DATE(csta_datetime) AS report_date,
key_sys_id,
smppId,
SUM(SMPP_to_SMSC_attempt) AS total_SMPP_to_SMSC_attempt,
SUM(SMPP_to_SMSC_success) AS total_SMPP_to_SMSC_success,
SUM(SMSC_to_SMPP_attempt) AS total_SMSC_to_SMPP_attempt,
SUM(SMSC_to_SMPP_success) AS total_SMSC_to_SMPP_success
FROM
smscSmppData
WHERE csta_datetime >= '{$startTime}'
AND csta_datetime <= '{$endTime}'";
// echo "sumSql=$sumSql";
AND csta_datetime <= '{$endTime}'
$smppWhere
GROUP BY
DATE(csta_datetime),smppId;";
//echo "sumSql=$sumSql";
$res=mysqli_query($cstaDbConn,$sumSql);
echo mysqli_error($cstaDbConn);
$num=mysqli_num_rows($res);
$row=@mysqli_fetch_array($res,MYSQLI_ASSOC);
// $row=@mysqli_fetch_array($res,MYSQLI_ASSOC);
$title=array('Type');
$valueArr=array();
foreach ($row as $key => $value) {
///echo "Key: $key, Value: $value\n<br>";
if(!$value) $value=0;
$parts = explode('_', $key);
$title[]= $parts[1].'_' .$parts[2]."\n".$parts[3];
$hang=$parts[4];
$lie=$parts[1].'_' .$parts[2].'_'.$parts[3];
$valueArr[$hang][$lie]=$value;
$allRows = [];
$title = [];
while ($row = mysqli_fetch_array($res, MYSQLI_ASSOC)) {
if (empty($title)) {
foreach ($row as $key => $value) {
$title[] = $key;
}
}
$allRows[] = $row;
}
$uniqueTitle=array_unique($title);
// $title=array('Type');
// $valueArr=array();
// foreach ($row as $key => $value) {
// ///echo "Key: $key, Value: $value\n<br>";
// if(!$value) $value=0;
// $parts = explode('_', $key);
// $title[]= $parts[1].'_' .$parts[2]."\n".$parts[3];
// $hang=$parts[4];
// $lie=$parts[1].'_' .$parts[2].'_'.$parts[3];
// $valueArr[$hang][$lie]=$value;
// }
// $uniqueTitle=array_unique($title);
// var_dump($uniqueTitle);
$file_name = 'SMSC-CDR.csv';
$file = fopen($file_name, 'w');
fputcsv($file, $uniqueTitle);
foreach ($valueArr as $one => $two) {
//塞入每行数据
$nowData=array("$one");
foreach ($two as $key => $value) {
$nowData[]=$value;
if (empty($title)) {
echo "SMPP Statistic is null";
}
fputcsv($file, $nowData);
}
$file = fopen($file_name, 'w');
fputcsv($file, $title);
foreach ($allRows as $index => $record) {
fputcsv($file, $record);
}
// 关闭文件
@@ -96,6 +131,7 @@ $endTime=date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-$sel_date_to,dat
header('Cache-Control: public');
header("Content-Disposition: attachment; filename=$file_name");
readfile($file_name);
unlink($file_name);
} else {
// 文件不存在时的处理
echo "Error: File does not exist.";
@@ -189,6 +225,7 @@ $endTime=date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-$sel_date_to,dat
header('Cache-Control: public');
header("Content-Disposition: attachment; filename=$file_name");
readfile($file_name);
unlink($file_name);
} else {
// 文件不存在时的处理
echo "Error: File does not exist.";
@@ -316,6 +353,7 @@ GROUP BY
header('Cache-Control: public');
header("Content-Disposition: attachment; filename=$file_name");
readfile($file_name);
unlink($file_name);
} else {
// 文件不存在时的处理
echo "Error: File does not exist.";
@@ -450,6 +488,7 @@ if (file_exists($file_name)) {
header('Cache-Control: public');
header("Content-Disposition: attachment; filename=$file_name");
readfile($file_name);
unlink($file_name);
} else {
// 文件不存在时的处理
echo "Error: File does not exist.";
@@ -578,6 +617,7 @@ if (file_exists($file_name)) {
header('Cache-Control: public');
header("Content-Disposition: attachment; filename=$file_name");
readfile($file_name);
unlink($file_name);
} else {
// 文件不存在时的处理
echo "Error: File does not exist.";