init web ems all

This commit is contained in:
agtuser
2024-09-27 17:13:36 +08:00
parent 81c97acbe9
commit 5cc56f8078
4263 changed files with 798779 additions and 0 deletions

View File

@@ -0,0 +1,492 @@
<?php
/*********************************************************
<20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>
<20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20><><EFBFBD>ù<EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: header.inc
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
<20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD>
<20><><EFBFBD>ߣ<EFBFBD>huangqingsen 2002-08-27
<20>޸<EFBFBD>ע<EFBFBD>ͣ<EFBFBD>
NO.1
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>hewd
ʱ<>䣺2003-03-10
<20>޸<EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>Ż<EFBFBD><C5BB><EFBFBD><EFBFBD>̣<EFBFBD><CCA3><EFBFBD><E6B7B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*********************************************************/
require("../../inc/header.inc");
$sysId=$_POST['sysId'];
$dataTypeNo=$_POST['dataTypeNo'];
function setImpParamValue($sysId,$objIdStr,$instanceNo,$newValue)
{
global $paramConf_table,$OMC_server;
$DEBUG=0;
if($DEBUG) echo"<br>sysId=$sysId";
$tmpSysIdArr = explode('_',$sysId);
$sysTypeNo = $tmpSysIdArr[0];
$sysNo = $tmpSysIdArr[1];
$subSysNo = $tmpSysIdArr[2];
$paramDb = 'OBJ_'.$sysTypeNo;
$objConn = mysqli_connect($OMC_server[0]['host'],$OMC_server[0]['user'],$OMC_server[0]['password'], $paramDb);
if($DEBUG) echo"<br>paramDb=$paramDb";
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>oidȡ<64><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
$tmpObjArr = explode('.',$objIdStr);
$objWhereStr='';
for($i=0;$i<sizeof($tmpObjArr);$i++){
$j=$i+1;
$objWhereStr .= ' level_'.$j."='{$tmpObjArr[$i]}' AND ";
}
$objWhereStr = substr($objWhereStr,0,-5); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>' AND ',<2C><><EFBFBD><EFBFBD>ȥ<EFBFBD><C8A5>
//<2F><><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3>Ƴ<EFBFBD><C6B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>
if($sysTypeNo==390)
{
$paramTable = 'param_'.$sysNo;
}
else
{
$paramTable = 'param_99';
$subSysNo = '99';
}
//subSysNo = '$subSysNo'
//<2F>޸Ķ<DEB8>Ӧ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>ֵ
$objWhereStr=str_replace("AND",",",$objWhereStr);
$setParamValueSql="replace $paramTable
SET initValue='$newValue',readValue=''
,instanceNo = '0000',$objWhereStr ";
if($DEBUG)echo"<br> $setParamValueSql <br>";
$setResult=mysqli_query($objConn,$setParamValueSql);
echo mysqli_error($objConn);
if($setResult){
return(1);
}else{
return(-1);
}
}//end of function
$DEBUG = 0;
//echo "<br>impFile=$impFile";
//echo "<br>impFileSize=$impFileSize";
//echo "<br>sysId=$sysId";
$sysId = $_REQUEST['sysId'];
$dataTypeNo = $_REQUEST['dataTypeNo'];
$nGetComm = 0;
$nSetComm = 3;
$nSubSysParam = 0;
$nGlobalSubSysParam = 1;
$nGlobalSysParam = 2;
$pubDb = 'OMC_PUB';
$sysSubsConfTable = 'OMC_PUB.sysSubsConf';
$systemConfTable = 'OMC_PUB.sysConf';
$sysInfoTable = 'OMC_PUB.sysInfo';
if($DEBUG) echo "(1) sysId=$sysId, dataTypeNo = $dataTypeNo<br>";
if(isset($sysId) && isset($dataTypeNo)){
$sysIdArr=explode('_',$sysId);
$sysTypeNo =$sysIdArr[0];
$sysNo =$sysIdArr[1];
$subSysNo =$sysIdArr[2];
}else{
echo "Cannot find sysId and dataTypeNo";
exit(0);
}
if($DEBUG) echo "<br>sysTypeNo=$sysTypeNo";
if($DEBUG) echo "<br>dataTypeNo=$dataTypeNo";
if($sysTypeNo==390)
$getConfSql="SELECT subsDataTable,impObjId,impFileName,ftpDir,ftpLoginName,ftpLoginPwd,
logFileName,maxSegmentNum,maxIndexNumPerSeg
FROM $sysSubsConfTable
WHERE sysTypeNo='$sysTypeNo' AND dataTypeNo='$dataTypeNo' AND sysNo='$sysNo'
";
else
$getConfSql="SELECT subsDataTable,impObjId,impFileName,ftpDir,ftpLoginName,ftpLoginPwd,
logFileName,maxSegmentNum,maxIndexNumPerSeg
FROM $sysSubsConfTable
WHERE sysTypeNo='$sysTypeNo' AND dataTypeNo='$dataTypeNo'
";
if($DEBUG) echo "<br>getConfSql=$getConfSql";
$getConfResult=mysqli_query($pubConn,$getConfSql);
echo mysqli_error($pubConn);
$getConfRows=mysqli_fetch_array($getConfResult);
$subsDataTable = $getConfRows[subsDataTable];
$impObjId = $getConfRows[impObjId];
$impFileName = $getConfRows[impFileName];
$logFileName = $getConfRows[logFileName];
$ftpDir = $getConfRows[ftpDir];
$ftpLoginName = $getConfRows[ftpLoginName];
$ftpLoginPwd = $getConfRows[ftpLoginPwd];
$maxSegmentNum = $getConfRows[maxSegmentNum];
$maxIndexNumPerSeg = $getConfRows[maxIndexNumPerSeg];
if($sysTypeNo==360||$sysTypeNo==395||$sysTypeNo==370||$sysTypeNo==375||$sysTypeNo==330||$sysTypeNo==325||$sysTypeNo==340||$sysTypeNo==380||$sysTypeNo==378)
$paramType = $nGlobalSysParam;
else if($sysTypeNo==390)
$paramType = $nGlobalSubSysParam;
else
$paramType = $nSubSysParam;
$maxTotalNum = $maxSegmentNum * $maxIndexNumPerSeg;
if($sysTypeNo == 395)
{
$maxImpFileSize = 5*1024*1024*4;
$maxImpFileSizeM=ceil($maxImpFileSize/1024/1024);
$maxImpRecordNum = 20000;
}
else
{
$maxImpFileSize = 10*1024*1024;
$maxImpFileSizeM=ceil($maxImpFileSize/1024/1024);
$maxImpRecordNum = 5000;
}
if($DEBUG)echo "<br>subsDataTable=$subsDataTable";
if($DEBUG)echo "<br>impObjId= $impObjId";
if($DEBUG)echo "<br>impFileName=$impFileName ";
if($DEBUG)echo "<br>ftpDir=$ftpDir ";
if($DEBUG)echo "<br>ftpLoginName=$ftpLoginName ";
if($DEBUG)echo "<br>ftpLoginPwd=$ftpLoginPwd";
if($DEBUG)echo "<br>maxSegmentNum=$maxSegmentNum ";
if($DEBUG)echo "<br>maxIndexNumPerSeg=$maxIndexNumPerSeg ";
if($DEBUG)echo "<br>paramType=$paramType ";
if($DEBUG)echo "<br>maxTotalNum=$maxTotalNum ";
//Get the system name;
$selSql = "SELECT sysTypeName FROM sysConf WHERE sysTypeNo='$sysTypeNo'";
if ($DEBUG) echo "selSql = $selSql<br>";
$selRes = @mysqli_query($pubConn, $selSql);
echo mysqli_error($pubConn);
$selRow = @mysqli_fetch_array($selRes);
$sysName = $selRow[sysTypeName];
if ($DEBUG) echo "sysName = $sysName<br>";
$upfile=$_FILES['impFile']['name'];
$impFile=$_FILES['impFile']['tmp_name'];
//<2F>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
if(isset($impFile) && $impFile != "none"){
if($sysTypeNo==390)
{
$getSysIdSql = "SELECT sysNo,subSysNo,ip
FROM $sysInfoTable
WHERE sysTypeNo='$sysTypeNo' AND sysNo='$sysNo' AND baseStat > '0'
ORDER BY sysNo,subSysNo
";
}
else if($sysTypeNo == 378)
{
$getSysIdSql = "SELECT sysNo,subSysNo,ip
FROM $sysInfoTable
WHERE sysTypeNo='$sysTypeNo'
ORDER BY sysNo,subSysNo
";
}
else
{
$getSysIdSql = "SELECT sysNo,subSysNo,ip
FROM $sysInfoTable
WHERE sysTypeNo='$sysTypeNo' AND baseStat > '0'
ORDER BY sysNo,subSysNo
";
}
if($DEBUG) echo "<br>getSysIdSql=$getSysIdSql";
$getSysIdResult= mysqli_query($pubConn,$getSysIdSql);
echo mysqli_error($pubConn);
$runningServerNum = mysqli_num_rows($getSysIdResult);
//ipalim״̬<D7B4><CCAC>Ҫ<EFBFBD>鿴sysStat<61><74><EFBFBD><EFBFBD>statusֵ
if($sysTypeNo == 378)
{
$runningServerNum=0;
$checkstatesql="select detailStat,updateTime from OMC_PUB.sysStat where sysTypeNo=378 ";
$checkstateres=mysqli_query($pubConn,$checkstatesql);
while($checkstaterow=mysqli_fetch_array($checkstateres))
{
$update_time=$checkstaterow[updateTime];
$bin_data=$checkstaterow[detailStat];
$state=substr($bin_data,26*2,2)+0;
$due_date = date("Y-m-d H:i:s",mktime(date("H"),date("i"),date("s")-48,date("m"),date("d"),date("Y")));
$ove_date = date("Y-m-d H:i:s",mktime(date("H"),date("i"),date("s")+48,date("m"),date("d"),date("Y")));
if($update_time < $due_date || $update_time > $ove_date)
continue;
if($state == 0)
$runningServerNum++;
}
}
if($runningServerNum <= 0){
echo "<font color=\"#FF0000\" size=\"3\">Error: No system running normally</font>";
//by hewd 2003-08-19
//PPS û<><C3BB><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ݵ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><E6BEAF>ʹ״̬<D7B4><CCAC>Ϊ<EFBFBD><CEAA>normal,<2C><><EFBFBD>ɲ<EFBFBD><C9B2>ܵ<EFBFBD><DCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
exit();
}
if($DEBUG) echo "running server number = $runningServerNum<br>";
//<2F>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD>еļ<D0B5>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>
$getTotalSql = "SELECT count(*) FROM $subsDataTable";
if($DEBUG) echo "<br>getTotalSql=$getTotalSql";
$getTotalRes = mysqli_query($pubConn,$getTotalSql);
$getTotalRow = @mysqli_fetch_array($getTotalRes);
$existNum = $getTotalRow[0];
if($DEBUG) echo "<br>existNum=$existNum";
//<2F><><EFBFBD><EFBFBD><E9B5BC><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>
$impFileSize = filesize($impFile);
if($DEBUG) {
echo "<br>impFile=$impFile";
echo "<br>impFileSize=$impFileSize<br>";
}
if($impFileSize > $maxImpFileSize){
$impFileSizeM=ceil($impFileSize/1024/1024);
echo "<br><font color=\"#FF0000\" size=3>Import File Size is $impFileSizeM M";
echo "<br>File size is too large!(Must <= {$maxImpFileSizeM}M)</font>";
@unlink ($impFile);
exit();
}
if($impFileSize <=0){
echo "<br><font color=\"#FF0000\" size=3>No import File";
@unlink ($impFile);
exit();
}
$impRecordNum = count(file($impFile));
if($DEBUG) echo "<br>impRecordNum=$impRecordNum";
if($impRecordNum > $maxImpRecordNum){
echo "<br><font color=\"#FF0000\" size=3>Import file record number is $impRecordNum";
echo "<br>Records are too much!(Must <= $maxImpRecordNum)</font>";
@unlink ($impFile);
exit();
}
if($impRecordNum > $maxTotalNum-$existNum){
echo "<br><font color=\"#FF0000\" size=3>Exist record number($existNum) + Import record number($impRecordNum) > Max record number ($maxTotalNum)";
echo "<br>User number is too much!</font>";
@unlink ($impFile);
exit();
}
$submitStat = 'DISABLED';
for ($k=0; $k<$runningServerNum; $k++) {
$getSysIdRow=mysqli_fetch_array($getSysIdResult);
$sysId=$sysTypeNo.'_'.$getSysIdRow[sysNo].'_'.$getSysIdRow[subSysNo];
$dstSeverIp = $getSysIdRow[ip];
if($sysTypeNo==360||$sysTypeNo==395||$sysTypeNo==370||$sysTypeNo==375||$sysTypeNo==330||$sysTypeNo==325||$sysTypeNo==340||$sysTypeNo==380||$sysTypeNo==378)
$sysIdCyc[$k] = $sysTypeNo.'_99_99';
else if($sysTypeNo==390)
$sysIdCyc[$k]='390_'.$getSysIdRow[sysNo].'_99';
else
$sysIdCyc[$k] = $sysId;
if($DEBUG) echo "<br>sysId = $sysId";
if($DEBUG) echo "<br>dstSeverIp = $dstSeverIp";
//debug_log("/tmp/deugImport.txt","sysIdCyc=$sysIdCyc[$k]");
/* close ftp
$ftpCon=ftp_connect($dstSeverIp);
if($ftpCon < 0){
echo "<br><font color=\"#FF0000\">Connect Failed!</font>";
@unlink ($impFile);
exit();
}
*/
$connection=sftp_connect($dstSeverIp);
if(!$connection){
echo "<br><font color=\"#FF0000\">Connect Failed!</font>";
@unlink ($impFile);
exit();
}
/* close ftp
if(!ftp_login($ftpCon,$ftpLoginName,$ftpLoginPwd)){
echo "<br><font color=\"#FF0000\">Login Failed!</font>";
@unlink ($impFile);
exit();
}
*/
$key=sftp_login($connection,$ftpLoginName,$ftpLoginPwd);
if(!$key)
{
echo "<br><font color=\"#FF0000\">Login Failed!</font>";
@unlink ($impFile);
exit();
}
$remoteFileName=$ftpDir.$impFileName;
/* close ftp
if(!ftp_put($ftpCon,$remoteFileName,$impFile,FTP_ASCII)){
echo "<br><font color=\"#FF0000\">Put file Failed</font>";
@unlink ($impFile);
exit();
}
*/
if(!sftp_put($key,$remoteFileName,$impFile,SFTP_ASCII))
{
echo "<br><font color=\"#FF0000\">Put file Failed</font>";
@unlink ($impFile);
exit();
}
/* close ftp
ftp_quit($ftpCon);
*/
$logFile="/usr/local/apache/htdocs/ftpFile/$logFileName";
@unlink ($logFile);
}
@unlink ($impFile);
//<2F>޸<EFBFBD><DEB8><EFBFBD><E8B1B8><EFBFBD><EFBFBD>
if($sysTypeNo==340){
$instanceNo = 0;
$commState = $k4_flag.'1';
$totalNum = DecHex($impRecordNum);
$totalNum = omc_keep_length($totalNum,'0',6);
if($k4_flag!=8)
$k4 = '0000000000000000';
else{
if(strlen($k4)<16){
echo "<br><font color=\"#FF0000\" size=\"4\">K4 is incorrect!</font>";
exit();
}
}
$newValue = $commState.$totalNum.$k4;
}else{
$instanceNo = 0;
$commState = '01';
$totalNum = DecHex($impRecordNum);
$totalNum = omc_keep_length($totalNum,'0',6);
$finishNum = '000000';
$newValue = $commState.$totalNum.$finishNum;
}
if($DEBUG)echo "<br>newValue=$newValue";
//exit();
switch($paramType){
case '1':
$sysId=$sysTypeNo.'_'.$getSysIdRow[sysNo].'_99';
break;
case '2':
$sysId=$sysTypeNo.'_99_99';
break;
default:
break;
}
if($DEBUG) echo "<br>(2) sysId=$sysId";
//send set command
if($sysTypeNo==360||$sysTypeNo==395||$sysTypeNo==370||$sysTypeNo==375||$sysTypeNo==330||$sysTypeNo==325||$sysTypeNo==340||$sysTypeNo==380||$sysTypeNo==390||$sysTypeNo==378){
//if($sysTypeNo==360)
// $chgResult = setSysParamValue($sysIdCyc[0],$impObjId,$instanceNo,$newValue);
//else
$chgResult = setImpParamValue($sysIdCyc[0],$impObjId,$instanceNo,$newValue);
$commStr = sysCommSend($sysIdCyc[0],$nSetComm,$impObjId);
}else{
for ($k=0; $k<$runningServerNum; $k++) {
//if($DEBUG)
//echo "<br>{$sysIdCyc[$k]},$nSetComm,$impObjId<br>";
$chgResult = setSysParamValue($sysIdCyc[$k],$impObjId,$instanceNo,$newValue);
$commStr = sysCommSend($sysIdCyc[$k],$nSetComm,$impObjId);
if($DEBUG){
echo "setSysParamValue($sysId,$impObjId,$instanceNo,$newValue)<br>";
echo "sysCommSend($sysId,$nSetComm,$impObjId)";
}
}
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8>ҳ<EFBFBD>ʼ<E6BFAA><CABC><EFBFBD><EFBFBD>
echo "<script language=\"javascript\">";
echo "window.parent.frames.main.location.href='./subscriberImportDown.php?showFlag=1&sysId=$sysIdCyc[0]&dataTypeNo=$dataTypeNo&dstSeverIp=$dstSeverIp&impRecordNum=$impRecordNum&commStr=$commStr&impFile=$impFile';";
echo "</script>";
sleep(2);
}elseif(isset($impFile)){
echo "<br><font color=\"#FF0000\" size=\"3\"><b>Upload file failed, File isn't exist or file is empty!</b></font>";
}
?>
<body leftmargin="15" rightmargin="10" onload="javascript:adjust_frame('down');" onresize="javascript:adjust_frame('down');" style="overflow:hidden;overflow-x:hidden;overflow-y:hidden;">
<?php
adjust_head_frame("down");
adjust_title_head_frame("down");
adjust_title_tail_frame("down");
adjust_content_head_frame("down");
echo "<br>";
?>
<form method="POST" action="<?php echo "$PHP_SELF";?>" name="subsData" enctype="multipart/form-data">
<table border="1" width="100%" cellpadding="2" cellspacing="0" bordercolor="#666666" bordercolordark="#FFFFFF" >
<?php
//<!-- ************* Display title ************* -->
if ( (395 == $sysTypeNo || 360 == $sysTypeNo) && (1 == $dataTypeNo) ) {
$title = "$sysName recharge card data import";
} else {
$title = "$sysName subscriber data import";
}
echo "<tr bgcolor=\"#E6E6E6\">";
echo "<td width=100% colspan=2 align=center>";
echo "<font size=3><b>$title</b></font>";
echo "</td>";
echo "</tr>";
?>
<tr>
<td colspan=2>
<font color="#0000FF" size=2>Note:Import File's size <= <?php echo $maxImpFileSizeM;?>M, records <= <?php echo $maxImpRecordNum;?></font>
</td>
</tr>
<tr>
<td>Select File:</td>
<td>
<input type="file" name="impFile">
<input type="hidden" name="MAX_FILE_SIZE" value="20971520"><!-- MAX_FILE_SIZE = 20M -->
</td>
</tr>
<?php
if($sysTypeNo==340){
echo "<tr>";
echo "<td>K4 Flag</td>";
echo "<td>";
echo "<select size=\"1\" name=\"k4_flag\">";
echo "<option value=\"0\">Disable</option>";
echo "<option value=\"8\" selected>Enable</option>";
echo "</select>";
echo "</td>";
echo "</tr>";
echo "<tr>";
echo "<td>K4</td>";
echo "<td><input type=\"text\" name=\"k4\" maxlength=\"16\" size=\"17\" value=\"$k4\" class=\"text\"></td>";
echo "</tr>";
}
?>
<tr>
<td colspan=2>
<?php
if($DEBUG) echo "<br>submitStat=$submitStat";
if($submitStat == 'DISABLED'){
echo "<input type=\"submit\" DISABLED value=\"$strSubmit\">";
}else{
echo "<input type=\"submit\" value=\"$strSubmit\">";
}
echo "<input Name=\"dataTypeNo\" type=\"hidden\" value=\"$dataTypeNo\">";
echo "<input Name=\"sysId\" type=\"hidden\" value=\"$sysId\">";
?>
</td>
</tr>
</table>
</form>
<?php
adjust_content_tail("down");
?>
</body>
</html>