Files
2026-09-03 11:24:19 +02:00

131 lines
4.5 KiB
PHP

<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=utf-8">
<meta http-equiv="Refresh" content="1" />
<?php
error_reporting(E_ALL);
echo 'starting ...<br>';
require_once("soap.php");
$cl = new SyndisConnector("http://172.21.11.101/SyndisSpm.wsdl"); //zmienić URL na inny - ten kieruje na moj komputer
//$cl->__setLocation('http://172.20.43.10:3615/');
$cl->__setLocation('http://172.21.11.101:3615/');
echo 'connected ...<br>';
echo 'Start: '.date("Y-m-d H:i:s").'<br>';
$scriptDate = date("Y-m-d H:i:s");
date_default_timezone_set('Europe/Warsaw');
require_once("func.php");
require_once("dbaccess.php");
$polacz = mysql_connect($db_host, $db_user, $db_user_pass) or die ('cannot connect to db');
mysql_select_db($db_name);
mysql_query("SET NAMES utf8");
mysql_query("SET CHARACTER_SET utf8_general_ci");
function convertData($insertDate)
{
unset($res);
//re-contruct to format
$res = date('Y-m-d H:i:s', strtotime($insertDate));
return $res;
}
function objectToArray($d) {
if (is_object($d)) {
// Gets the properties of the given object
// with get_object_vars function
$d = get_object_vars($d);
}
if (is_array($d)) {
/*
* Return array converted to object
* Using __FUNCTION__ (Magic constant)
* for recursive call
*/
return array_map(__FUNCTION__, $d);
}
else {
// Return array
return $d;
}
}
//mysql_query("TRUNCATE table a_getpumpswitchhistory_ins");
unset($obArray);
$obArray = sqlGetResAsArray("select * from a_getpumpswitchhistory_sel where PRC_STATUS=0 limit 1");
unset($wellArray);
//$wellArray = $cl->GetPumpSwitchHistory('G54','2016-12-29T00:00:00Z');
//$wellArray = objectToArray($wellArray);
//print_r($wellArray);
$wellArray = objectToArray($cl->GetPumpSwitchHistory($obArray[0]['WLL_NAME'],'2014-01-01T00:00:00Z'));
echo "STUDNIA: ".$obArray[0]['WLL_NAME']."<br/>";
echo "Ilość pomiarów: ".count($wellArray['probes'])."<br/>";
echo"<br/>";
$statZal=10;
$licz=0;
for($i=0; $i<count($wellArray['probes']); $i++)
{
// $licz=$i-1;
// echo "statZal 01: ".$statZal."<br/>";
// echo "statZal 02: ".$wellArray['probes'][$i]['value']."<br/>";
// echo "Poprzedni ".$wellArray['probes'][$licz]['value']."<br/>";
// echo"<br/>";
if ($statZal != $wellArray['probes'][$i]['value'])
{
$licz=$i-1;
if ($wellArray['probes'][$i]['value'] != $wellArray['probes'][$licz]['value'])
{
if ($wellArray['probes'][$i]['value'] == 0)
mysql_query("INSERT INTO a_getpumpswitchhistory_ins SET DRS_ID=".$obArray[0]['DRS_ID'].",WLL_ID=".$obArray[0]['WLL_ID'].",WLL_NAME='".$obArray[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$obArray[0]['WLL_CAT_DIC_ID'].",DRS_DEPARTMENT='".$obArray[0]['DRS_DEPARTMENT']."',HIS_VAL='OFF',HIS_DATE='".convertData($wellArray['probes'][$i]['date'])."'");
elseif ($wellArray['probes'][$i]['value'] == 1)
mysql_query("INSERT INTO a_getpumpswitchhistory_ins SET DRS_ID=".$obArray[0]['DRS_ID'].",WLL_ID=".$obArray[0]['WLL_ID'].",WLL_NAME='".$obArray[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$obArray[0]['WLL_CAT_DIC_ID'].",DRS_DEPARTMENT='".$obArray[0]['DRS_DEPARTMENT']."',HIS_VAL='ON',HIS_DATE='".convertData($wellArray['probes'][$i]['date'])."'");
echo "Zapisał: ".$wellArray['probes'][$i]['value'].", data: ".convertData($wellArray['probes'][$i]['date'])."<br/>";
}
$statZal = $wellArray['probes'][$i]['value'];
}
// echo "Stan: ".$wellArray['probes'][$i]['value']."<br/>";
// echo "Data: ".$wellArray['probes'][$i]['date']."<br/>";
// echo "Flaga ".$wellArray['probes'][$i]['flag']."<br/>";
// echo"<br/>";
}
mysql_query("UPDATE a_getpumpswitchhistory_sel SET PRC_STATUS=1 WHERE DRS_ID=".$obArray[0]['DRS_ID']);
mysql_close($polacz);
echo 'finish processing ...<br>';
echo 'Finish: '.date("Y-m-d H:i:s").'<br>';
/**
*
*echo "</pre><br>---------------------------------<br><pre>";
*print_r($cl->GetWellDataAsArray('PUMP23')); //Pobieranie danych jednej pompy - zwraca dane jako tablica
*
*echo "</pre><br>---------------------------------<br>Indeksy piezometru<pre>";
*print_r($cl->GetPiezometerData('PIEZO23')); //Pobieranie danych jednego piezometru - zwraca dane jako obiekt
*
*echo "</pre><br>---------------------------------<br>";
*var_dump($cl->GetPiezometerDataAsArray('PIEZO23')); //Pobieranie danych jednego piezometru - zwraca dane jako tablice
*
*echo "</pre><br>---------------------------------<br><pre>";
*var_dump($cl->GetWellsDataAsArray(array('PUMP23','PUMP24'))); //retruns associate array
*
*echo "</pre><br>---------------------------------<br><pre>";
*v8ar_dump($cl->GetPiezometersDataAsArray(array('PUMP23','PUMP24'))); //retruns associate array
*/
?>