110 lines
4.1 KiB
PHP
110 lines
4.1 KiB
PHP
<?php
|
|
require("../../inc/lib.inc");
|
|
|
|
// function getSystemNameBySysTypeNo($sysTypeNo)
|
|
// {
|
|
// global $pubConn;
|
|
|
|
// $sqlstr = "select sysTypeName from OMC_PUB.sysConf where sysTypeNo = $sysTypeNo ";
|
|
// $res = @mysqli_query($pubConn, $sqlstr);
|
|
// $row = @mysqli_fetch_array($res);
|
|
// return $row['sysTypeName'];
|
|
// }
|
|
|
|
global $OMC_server,$pubConn;
|
|
$sysTypeNo=$_GET['sysTypeNo'];
|
|
$cstaDbConn=mysqli_connect($OMC_server[0]['host'],$OMC_server[0]['user'],$OMC_server[0]['password'], 'CSTA_DB');
|
|
$objDbConn=mysqli_connect($OMC_server[0]['host'],$OMC_server[0]['user'],$OMC_server[0]['password'], 'OBJ_'.$sysTypeNo);
|
|
$page_id=$_GET['page_id'];
|
|
$sel_date_from=$_REQUEST['sel_date_from'];
|
|
$sel_date_to=$_REQUEST['sel_date_to'];
|
|
$show_type=$_GET['show_type'];
|
|
$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")));
|
|
$selSysTypeNo=$_REQUEST['selSysTypeNo'];
|
|
$selAlarmLevel=$_REQUEST['selAlarmLevel'];
|
|
|
|
$whereStr='';
|
|
if( $selSysTypeNo != 'all'){
|
|
$whereStr .=" And sysAlarmInfo.sysTypeNo = '$selSysTypeNo'";
|
|
}
|
|
|
|
if($selAlarmLevel == 'all'){
|
|
$whereStr .=" ";
|
|
}elseif( $selAlarmLevel == 'unclear'){
|
|
$whereStr .=" AND clearMode= '1' ";
|
|
}elseif( $selAlarmLevel == 'cleared'){
|
|
$whereStr .=" AND clearMode= '0' ";
|
|
}else{
|
|
$whereStr .=" AND alarmLevel = '$selAlarmLevel' AND clearMode= '1'";
|
|
}
|
|
|
|
$sumSql="SELECT sysAlarmInfo.sysTypeNo,sysAlarmInfo.sysNo,sysAlarmInfo.subSysNo,sysAlarmInfo.alarmCode,sysAlarmInfo.alarmTime,sysAlarmInfo.clearTime,sysAlarmInfo.clearMode,sysAlarmInfo.alarmInfo
|
|
FROM OMC_PUB.sysAlarmInfo,OMC_PUB.sysAlarmConf
|
|
WHERE alarmTime >= '{$startTime} '
|
|
AND alarmTime <= '{$endTime}' $whereStr AND sysAlarmInfo.sysTypeNo = sysAlarmConf.sysTypeNo AND sysAlarmInfo.compCode = sysAlarmConf.compCode AND sysAlarmInfo.alarmCode = sysAlarmConf.alarmCode";
|
|
//echo "sumSql=$sumSql";
|
|
$res=mysqli_query($pubConn,$sumSql);
|
|
echo mysqli_error($pubConn);
|
|
$num=mysqli_num_rows($res);
|
|
//$rows=@mysqli_fetch_array($res,MYSQLI_ASSOC);
|
|
// echo "num=$num";
|
|
|
|
$allRows = [];
|
|
$title = [];
|
|
|
|
|
|
while ($row = mysqli_fetch_array($res, MYSQLI_ASSOC)) {
|
|
if (empty($title)) {
|
|
foreach ($row as $key => $value) {
|
|
if (!in_array($key, ['sysTypeNo', 'sysNo', 'subSysNo'])) {
|
|
$title[] = $key;
|
|
}
|
|
}
|
|
array_unshift($title, 'sysName');
|
|
}
|
|
|
|
$sysName = getSystemNameBySysTypeNo($row['sysTypeNo']) . '_' . $row['sysNo'] . '_' . $row['subSysNo'];
|
|
|
|
unset($row['sysTypeNo'], $row['sysNo'], $row['subSysNo']);
|
|
|
|
$row = array_merge(['sysName' => $sysName], $row);
|
|
|
|
$allRows[] = $row;
|
|
}
|
|
|
|
|
|
|
|
|
|
$file_name = "AlarmLog-$startTime to $endTime.csv";
|
|
|
|
$file = fopen($file_name, 'w');
|
|
fputcsv($file, $title);
|
|
foreach ($allRows as $index => $record) {
|
|
fputcsv($file, $record);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// 关闭文件
|
|
fclose($file);
|
|
// 检查文件是否存在
|
|
if (file_exists($file_name)) {
|
|
header("Content-type: application/csv");
|
|
//use for download csv in https
|
|
header('Expires: 0');
|
|
header('Pragma: public');
|
|
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
|
|
header('Cache-Control: public');
|
|
header("Content-Disposition: attachment; filename=$file_name");
|
|
readfile($file_name);
|
|
unlink($file_name); // 下载后立即删除
|
|
} else {
|
|
// 文件不存在时的处理
|
|
echo "Error: File does not exist.";
|
|
}
|
|
|
|
|
|
?>
|