From eec7111a890926467b525e1f27ac17d6fe066d3b Mon Sep 17 00:00:00 2001 From: stubbfel Date: Mon, 19 Aug 2013 17:54:44 +0200 Subject: [PATCH] add refpoint and parentid to pis andd pss --- geoapi/database/PisSqlManager.php | 18 +++++++++++++++--- geoapi/database/PssSqlManager.php | 22 +++++++++++++++++----- geoapi/utility/JsonManager.php | 8 ++++++-- geoapi/utility/XmlManager.php | 4 ++++ 4 files changed, 42 insertions(+), 10 deletions(-) diff --git a/geoapi/database/PisSqlManager.php b/geoapi/database/PisSqlManager.php index 4baa90e..b7b18d4 100644 --- a/geoapi/database/PisSqlManager.php +++ b/geoapi/database/PisSqlManager.php @@ -32,17 +32,29 @@ class PisSqlManager extends SQLManager { */ public static $infValue = "iValue"; + /** + * Fieldname of the parendId + * @var string + */ + public static $parentId = "parent"; + + /** + * Fieldname of the refpoint + * @var string + */ + public static $refpoint = "refpoint"; + /** * String for the select part of the query * @var string */ - private static $selectTerm = "SELECT pid, iName, iValue FROM pis WHERE "; + private static $selectTerm = "SELECT pid, parent, refpoint, iName, iValue FROM pis WHERE "; /** * String for the select all part of the query * @var string */ - private static $selectAllTerm = "SELECT pid, iName, iValue FROM pis "; + private static $selectAllTerm = "SELECT pid, parent, refpoint, iName, iValue FROM pis "; /** * String for the orderby part of the query @@ -105,7 +117,7 @@ class PisSqlManager extends SQLManager { if ($query == self::$selectTerm) { $query = self::$selectAllTerm; } - + $query .= self::$orderByTerm; // send query return $this->query($query); diff --git a/geoapi/database/PssSqlManager.php b/geoapi/database/PssSqlManager.php index ae41a17..b7012be 100644 --- a/geoapi/database/PssSqlManager.php +++ b/geoapi/database/PssSqlManager.php @@ -38,17 +38,29 @@ class PssSqlManager extends SQLManager { */ public static $srvRequest = "request"; + /** + * Fieldname of the parendId + * @var string + */ + public static $parentId = "parent"; + + /** + * Fieldname of the refpoint + * @var string + */ + public static $refpoint = "refpoint"; + /** * String for the select part of the query * @var string */ - private static $selectTerm = "SELECT pid, sName, sap, request FROM pss WHERE "; + private static $selectTerm = "SELECT pid, parent, refpoint, sName, sap, request FROM pss WHERE "; /** * String for the select all part of the query * @var string */ - private static $selectAllTerm = "SELECT pid, sName, sap, request FROM pss "; + private static $selectAllTerm = "SELECT pid, parent, refpoint, sName, sap, request FROM pss "; /** * String for the orderby part of the query @@ -95,12 +107,12 @@ class PssSqlManager extends SQLManager { $query .= self::$openBracket; $query .= \utiliy\ArrayManager::toSqlWhereString($pidList, self::$orTerm, self::$pidTerm); $query .= self::$closeBracket; - } else if ($pidList[0] != "*") { + } else if ($pidList[0] != "*") { return null; } if (count($sNameList) > 0 && \utiliy\ArrayManager::validAlphaNumList($sNameList)) { - if ($query != self::$selectTerm) { + if ($query != self::$selectTerm) { $query .= self::$andTerm; } $query .= self::$openBracket; @@ -111,7 +123,7 @@ class PssSqlManager extends SQLManager { if ($query == self::$selectTerm) { $query = self::$selectAllTerm; } - + $query .= self::$orderByTerm; // send query diff --git a/geoapi/utility/JsonManager.php b/geoapi/utility/JsonManager.php index a36ddc4..1fe1b69 100644 --- a/geoapi/utility/JsonManager.php +++ b/geoapi/utility/JsonManager.php @@ -82,10 +82,12 @@ class JsonManager implements SerialManager { * @return json-string */ public static function arrayToPisJson($result) { - $infos = array(); + $infos = array(); foreach ($result as $row) { // fetch the place id of the row - $placeId = $row[\database\PisSqlManager::$placeId]; + $placeId = $row[\database\PisSqlManager::$placeId]; + $infos[$placeId][self::$parentIdName] = $row[\database\PisSqlManager::$parentId]; + $infos[$placeId][self::$refpointName] = $row[\database\PisSqlManager::$refpoint]; $infos[$placeId][$row[\database\PisSqlManager::$infName]] = utf8_encode($row[\database\PisSqlManager::$infValue]); } return json_encode($infos); @@ -103,6 +105,8 @@ class JsonManager implements SerialManager { // fetch the place id of the row $placeId = $row[\database\PssSqlManager::$placeId]; $placeSrv = array(self::$placeSapName => $row[\database\PssSqlManager::$srvSap], self::$placeRequestName => $row[\database\PssSqlManager::$srvRequest]); + $services[$placeId][self::$parentIdName] = $row[\database\PssSqlManager::$parentId]; + $services[$placeId][self::$refpointName] = $row[\database\PssSqlManager::$refpoint]; $services[$placeId][$row[\database\PssSqlManager::$srvName]] = $placeSrv; } return json_encode($services); diff --git a/geoapi/utility/XmlManager.php b/geoapi/utility/XmlManager.php index beafa12..4991ffe 100644 --- a/geoapi/utility/XmlManager.php +++ b/geoapi/utility/XmlManager.php @@ -120,6 +120,8 @@ class XmlManager implements SerialManager { $actPlace = $placeId; $place = $xml->addChild(self::$placeElementName); $place->addAttribute(self::$placeIdAttrName, $placeId); + $place->addAttribute(self::$parentIdAttrName, $row[\database\PisSqlManager::$parentId]); + $place->addAttribute(self::$refpointAttrName, $row[\database\PisSqlManager::$refpoint]); } // add placeinformation elment @@ -155,6 +157,8 @@ class XmlManager implements SerialManager { $actPlace = $placeId; $place = $xml->addChild(self::$placeElementName); $place->addAttribute(self::$placeIdAttrName, $placeId); + $place->addAttribute(self::$parentIdAttrName, $row[\database\PssSqlManager::$parentId]); + $place->addAttribute(self::$refpointAttrName, $row[\database\PssSqlManager::$refpoint]); } // add placeservice elment