246 lines
14 KiB
PHP
246 lines
14 KiB
PHP
<div class="tag100">
|
|
<div class="head_tag"><?php echo $lab_Tag_PompDistribution ;?></div>
|
|
<div class="tag">
|
|
|
|
|
|
<?php
|
|
$fileName="./charts/".$_SESSION['user']."_".date("Ymd")."_".date("His")."_chart_100.png";
|
|
if (file_exists($fileName)) unlink($fileName);
|
|
|
|
|
|
$imageTLO=imagecreatefrompng("./foto/map_01.png");
|
|
$image=imagecreatetruecolor(imagesx($imageTLO),imagesy($imageTLO));
|
|
$color=imagecolorallocate($image,255,255,255);
|
|
imagefill($image,0,0,$color);
|
|
imagecopy($image,$imageTLO,0,0,0,0,imagesx($imageTLO),imagesy($imageTLO));
|
|
$red = imagecolorallocate($image, 255, 0, 0);
|
|
$blue = imagecolorallocate($image, 0, 0, 255);
|
|
$black = imagecolorallocate($image, 0, 0, 0);
|
|
$orange = imagecolorallocate($image, 255, 127, 0);
|
|
$green = imagecolorallocate($image, 31, 163, 70);
|
|
|
|
|
|
|
|
$image_greenRes=imagecreatefrompng("./images/greenRes.png");
|
|
$image_yellowRes=imagecreatefrompng("./images/yellowRes.png");
|
|
$image_redRes=imagecreatefrompng("./images/redRes.png");
|
|
|
|
$image_greenMarkON=imagecreatefrompng("./images/greenMarkON.png");
|
|
$image_greenMarkOFF=imagecreatefrompng("./images/greenMarkOFF.png");
|
|
|
|
$image_yellowMarkON=imagecreatefrompng("./images/yellowMarkON.png");
|
|
$image_yellowMarkOFF=imagecreatefrompng("./images/yellowMarkOFF.png");
|
|
|
|
$image_redMarkON=imagecreatefrompng("./images/redMarkON.png");
|
|
$image_redMarkOFF=imagecreatefrompng("./images/redMarkOFF.png");
|
|
|
|
|
|
// dodaje studnie
|
|
$i=0; $alarmy="";
|
|
$wynik = mysql_query("select WLL_ID,WLL_NAME,WLL_LATITUDE,WLL_LONGITUDE from seg_wells limit 100");
|
|
if($wynik)while ($r = mysql_fetch_array($wynik))
|
|
{
|
|
$wellID = $r["WLL_ID"];
|
|
$devID[$i]=sqlValue("select DRS_ID from seg_dev_resources where DRS_DEV_ID=$wellID and DRS_DEV_TYPE=(select DIC_ID from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='WELL')");
|
|
|
|
$wellName[$i]= $r["WLL_NAME"];
|
|
$wellX[$i]= $r["WLL_LATITUDE"];
|
|
$wellY[$i]= $r["WLL_LONGITUDE"];
|
|
$var_Xparam = $r["WLL_LATITUDE"];
|
|
$var_Yparam = $r["WLL_LONGITUDE"];
|
|
|
|
//$wellStatus = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID[$i] and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_STATUSES' and DIC_NAME='ON_OFF') and DRD_DRS_ID=$devID[$i])", "DRD_VALUE");
|
|
$wellStatus = getLastValueFromDevResourceDetail('WELL_STATUSES','ON_OFF',$devID[$i]);
|
|
// =============================================================================================== //
|
|
//$qParam = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID[$i] and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_PARAMETERS' and DIC_NAME='QM3H') and DRD_DRS_ID=$devID[$i])", "DRD_VALUE");
|
|
$qParam = getLastValueFromDevResourceDetail('WELL_PARAMETERS','QM3H',$devID[$i]);
|
|
|
|
$resHD=setHDValue($devID[$i]);
|
|
//$P2param = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID[$i] and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_PARAMETERS' and DIC_NAME='P2M') and DRD_DRS_ID=$devID[$i])", "DRD_VALUE");
|
|
$P2param = getLastValueFromDevResourceDetail('WELL_PARAMETERS','P2M',$devID[$i]);
|
|
|
|
//$PEparam = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID[$i] and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_ELECTRICAL_PARAMETERS' and DIC_NAME='POWER_EKW') and DRD_DRS_ID=$devID[$i])", "DRD_VALUE");
|
|
$PEparam = getLastValueFromDevResourceDetail('WELL_ELECTRICAL_PARAMETERS','POWER_EKW',$devID[$i]);
|
|
|
|
if (empty($PEparam)) $PEparam=1;
|
|
|
|
// =============================================================================================== //
|
|
$resETA = ($qParam*($resHD+$P2param))/(367*$PEparam);
|
|
$RedYellowParam = setRedYellowLimes(sqlValue("select PUP_Q_N from seg_pumps where PUP_ID=(select DRS_DEV_ID from seg_dev_resources where DRS_ID=(select RWL_PUP_DRS_ID from seg_dev_resources left join seg_well_pump_eng_rel on RWL_WLL_ID=DRS_DEV_ID where DRS_ID=$devID[$i]))"));
|
|
$YellowGreenParam = setYellowGreenLimes(sqlValue("select PUP_Q_N from seg_pumps where PUP_ID=(select DRS_DEV_ID from seg_dev_resources where DRS_ID=(select RWL_PUP_DRS_ID from seg_dev_resources left join seg_well_pump_eng_rel on RWL_WLL_ID=DRS_DEV_ID where DRS_ID=$devID[$i]))"));
|
|
// =============================================================================================== //
|
|
// sprawdza czy ocena nie jest szara...
|
|
// =============================================================== //
|
|
$resHP = setHPValue($devID[$i],$qParam);
|
|
// =============================================================== //
|
|
|
|
|
|
if ($resETA<=$RedYellowParam)
|
|
{
|
|
if ($wellStatus=='ON') imagecopy($image,$image_redMarkON,$var_Xparam-33,$var_Yparam-63,0,0,65,63);
|
|
else imagecopy($image,$image_redMarkOFF,$var_Xparam-33,$var_Yparam-63,0,0,65,63);
|
|
}
|
|
else if (($RedYellowParam<$resETA && $resETA<=$YellowGreenParam) || (($resHP<-0.07 || $resHP>0.07) && sqlStringValue("select DIC_NAME from sys_dictionaries where DIC_ID=(select WLL_CAT_DIC_ID from seg_wells where WLL_ID=$wellID)","DIC_NAME")!='SPM_OPT'))
|
|
{
|
|
if ($wellStatus=='ON') imagecopy($image,$image_yellowMarkON,$var_Xparam-33,$var_Yparam-63,0,0,65,63);
|
|
else imagecopy($image,$image_yellowMarkOFF,$var_Xparam-33,$var_Yparam-63,0,0,65,63);
|
|
}
|
|
else if ($resETA>$YellowGreenParam)
|
|
{
|
|
if ($wellStatus=='ON') imagecopy($image,$image_greenMarkON,$var_Xparam-33,$var_Yparam-63,0,0,65,63);
|
|
else imagecopy($image,$image_greenMarkOFF,$var_Xparam-33,$var_Yparam-63,0,0,65,63);
|
|
}
|
|
|
|
if (getAutoManualWork($devID[$i])==1) imageString($image,5,$var_Xparam-5,$var_Yparam-50,"A",$black);
|
|
else imageString($image,5,$var_Xparam-5,$var_Yparam-50,"R",$black);
|
|
|
|
// pokazuje moc zasięgu dla sygnału GPRS
|
|
if (sqlValue("select count(1) RSS_VALUE from seg_rss_signal_values where RSS_DRS_ID=".$devID[$i])>0)
|
|
setImageRSSIgnalValue($image, getLastRSSIvalue($devID[$i]),$var_Xparam+14,$var_Yparam-65, $devID[$i]);
|
|
|
|
// pokazuje nazwę studni
|
|
imageString($image,3,$var_Xparam-12,$var_Yparam-77,$wellName[$i],$blue);
|
|
|
|
|
|
|
|
|
|
// Wyświetla informcję o alarmie A1
|
|
$qrs=sqlStringValue("select ARM_TYPES from seg_alarms where ARM_AUDIT_CD=(select max(ARM_AUDIT_CD) from seg_alarms where ARM_DRS_ID=$devID[$i])","ARM_TYPES");
|
|
if (strstr($qrs,"A1"))
|
|
{
|
|
imageString($image,2,5,10,"Brak potwierdzenia zalaczenia pompy $wellName[$i]",$red);
|
|
imagefilledellipse($image, $var_Xparam-15, $var_Yparam-7, 10, 10, $red);
|
|
imageString($image,0,$var_Xparam-17,$var_Yparam-11,"!",$black);
|
|
}
|
|
|
|
// Wyświetla informcję o alarmie A3
|
|
if (strstr($qrs,"A3"))
|
|
{
|
|
imageString($image,2,5,10,"Brak potwierdzenia wylaczenia pompy $wellName[$i]",$red);
|
|
imagefilledellipse($image, $var_Xparam-15, $var_Yparam-7, 10, 10, $red);
|
|
imageString($image,0,$var_Xparam-17,$var_Yparam-11,"!",$black);
|
|
}
|
|
|
|
$i++;
|
|
}
|
|
|
|
unset($var_Xparam);
|
|
unset($var_Yparam);
|
|
|
|
|
|
// dodaje zbiorniki
|
|
// ==================================================================================
|
|
$image_zb_Red=imagecreatefrompng("./images/redRes.png");
|
|
$image_zb_Yellow=imagecreatefrompng("./images/yellowRes.png");
|
|
$image_zb_Green=imagecreatefrompng("./images/greenRes.png");
|
|
|
|
$ii=0;
|
|
$wynik = mysql_query("select SRP_ID,SRP_NAME,DRS_STATUS_DIC_ID,DRS_ID,SRP_LATITUDE,SRP_LONGITUDE from seg_reservoirs_piezometers left join seg_manufacturers on SRP_MCF_ID=MCF_ID left join seg_dev_resources on SRP_ID=DRS_DEV_ID and DRS_DEV_TYPE=(select DIC_ID from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='RESERVOIR') where SRP_TYPE_DIC_ID=(select DIC_ID from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='RESERVOIR')");
|
|
if($wynik)while ($r = mysql_fetch_array($wynik))
|
|
{
|
|
|
|
$resName[$ii] = $r["SRP_NAME"];
|
|
$devR[$ii] = $r["DRS_ID"];
|
|
$resX[$ii]= $r["SRP_LATITUDE"];
|
|
$resY[$ii]= $r["SRP_LONGITUDE"];
|
|
$var_Xparam = $r["SRP_LATITUDE"];
|
|
$var_Yparam = $r["SRP_LONGITUDE"];
|
|
|
|
$maxAcc = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MAX_ACCEPTABLE',$devR[$ii]);
|
|
$maxWar = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MAX_WARNING',$devR[$ii]);
|
|
$minWar = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MIN_WARNING',$devR[$ii]);
|
|
$minAcc = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MIN_ACCEPTABLE',$devR[$ii]);
|
|
$waterLevel = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_PARAMETERS','WATER_LEVEL',$devR[$ii]);
|
|
|
|
if ($waterLevel<=$minAcc || $waterLevel>=$maxAcc)
|
|
imagecopy($image,$image_zb_Red,$var_Xparam-25,$var_Yparam-47,0,0,50,50);
|
|
else if (($waterLevel>$minAcc && $waterLevel<=$minWar) || ($waterLevel>=$maxWar && $waterLevel<$maxAcc))
|
|
imagecopy($image,$image_zb_Yellow,$var_Xparam-25,$var_Yparam-50,0,0,50,50);
|
|
else
|
|
imagecopy($image,$image_zb_Green,$var_Xparam-25,$var_Yparam-50,0,0,50,50);
|
|
|
|
// pokazuje moc zasięgu dla sygnału GPRS
|
|
if (sqlValue("select count(1) RSS_VALUE from seg_rss_signal_values where RSS_DRS_ID=".$devR[$ii])>0)
|
|
setImageRSSIgnalValue($image, getLastRSSIvalue($devR[$ii]),$var_Xparam+14,$var_Yparam-52, $devR[$ii]);
|
|
|
|
$ii++;
|
|
}
|
|
// ==================================================================================
|
|
|
|
|
|
unset($var_Xparam);
|
|
unset($var_Yparam);
|
|
|
|
// dodaje piezometry
|
|
// ==================================================================================
|
|
$image_pz_Red=imagecreatefrompng("./images/redPiez.png");
|
|
$image_pz_Yellow=imagecreatefrompng("./images/yellowPiez.png");
|
|
$image_pz_Green=imagecreatefrompng("./images/greenPiez.png");
|
|
|
|
$iii=0;
|
|
$wynik = mysql_query("select SRP_ID,SRP_NAME,DRS_STATUS_DIC_ID,DRS_ID,SRP_LATITUDE,SRP_LONGITUDE from seg_reservoirs_piezometers left join seg_manufacturers on SRP_MCF_ID=MCF_ID left join seg_dev_resources on SRP_ID=DRS_DEV_ID and DRS_DEV_TYPE=(select DIC_ID from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='PIEZOMETER') where SRP_TYPE_DIC_ID=(select DIC_ID from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='PIEZOMETER')");
|
|
if($wynik)while ($r = mysql_fetch_array($wynik))
|
|
{
|
|
|
|
$pieName[$iii] = $r["SRP_NAME"];
|
|
$devP[$iii] = $r["DRS_ID"];
|
|
$pieX[$iii]= $r["SRP_LATITUDE"];
|
|
$pieY[$iii]= $r["SRP_LONGITUDE"];
|
|
$var_Xparam = $r["SRP_LATITUDE"];
|
|
$var_Yparam = $r["SRP_LONGITUDE"];
|
|
|
|
$maxAcc = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MAX_ACCEPTABLE',$devP[$iii]);
|
|
$maxWar = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MAX_WARNING',$devP[$iii]);
|
|
$minWar = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MIN_WARNING',$devP[$iii]);
|
|
$minAcc = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MIN_ACCEPTABLE',$devP[$iii]);
|
|
$waterLevel = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_PARAMETERS','WATER_LEVEL',$devP[$iii]);
|
|
|
|
if ($waterLevel<=$minAcc || $waterLevel>=$maxAcc)
|
|
imagecopy($image,$image_pz_Red,$var_Xparam-25,$var_Yparam-47,0,0,50,50);
|
|
else if (($waterLevel>$minAcc && $waterLevel<=$minWar) || ($waterLevel>=$maxWar && $waterLevel<$maxAcc))
|
|
imagecopy($image,$image_pz_Yellow,$var_Xparam-25,$var_Yparam-50,0,0,50,50);
|
|
else
|
|
imagecopy($image,$image_pz_Green,$var_Xparam-25,$var_Yparam-50,0,0,50,50);
|
|
|
|
// pokazuje moc zasięgu dla sygnału GPRS
|
|
if (sqlValue("select count(1) RSS_VALUE from seg_rss_signal_values where RSS_DRS_ID=".$devP[$iii])>0)
|
|
setImageRSSIgnalValue($image, getLastRSSIvalue($devP[$iii]),$var_Xparam+14,$var_Yparam-52, $devP[$iii]);
|
|
|
|
$iii++;
|
|
}
|
|
// ==================================================================================
|
|
|
|
|
|
imageString($image,3,825,5,date('Y-m-d H:i:s'),$black);
|
|
|
|
imagepng($image,$fileName);
|
|
?>
|
|
|
|
|
|
<IMG SRC="<?php echo $fileName; ?>" BORDER="0" USEMAP="#mainmap">
|
|
<MAP NAME="mainmap">
|
|
<?php
|
|
for($j=0; $j<$i; $j++)
|
|
{
|
|
echo"<AREA SHAPE='RECT' COORDS='".($wellX[$j]-33).",".($wellY[$j]-63).",".($wellX[$j]+33).",".($wellY[$j])."' HREF='?pg=site401mark&dev=$devID[$j]' TITLE='$wellName[$j]'>";
|
|
}
|
|
for($j=0; $j<$ii; $j++)
|
|
{
|
|
echo"<AREA SHAPE='RECT' COORDS='".($resX[$j]-20).",".($resY[$j]-50).",".($resX[$j]+17).",".($resY[$j]+3)."' HREF='?pg=site401mark&dev=$devR[$j]' TITLE='$resName[$j]'>";
|
|
}
|
|
for($j=0; $j<$iii; $j++)
|
|
{
|
|
echo"<AREA SHAPE='RECT' COORDS='".($pieX[$j]-20).",".($pieY[$j]-50).",".($pieX[$j]+17).",".($pieY[$j]+3)."' HREF='?pg=site401mark&dev=$devP[$j]' TITLE='$pieName[$j]'>";
|
|
}
|
|
|
|
?>
|
|
|
|
|
|
</MAP>
|
|
</div>
|
|
</div>
|
|
<meta http-equiv='refresh' content='120;url=./?pg=site100'>
|
|
|
|
|
|
|