- fixed trueSec rounding, closed #304 #139

This commit is contained in:
Exodus4D
2016-09-03 20:36:36 +02:00
parent 055c34faf3
commit 690525c833
2 changed files with 19 additions and 3 deletions

View File

@@ -159,7 +159,7 @@ class System extends \Controller\AccessController {
$searchToken = $params['arg1'];
}
// some "edge cases for testing if rounding works correct
// some "edge cases" for testing trueSec rounding...
//$searchToken = 'H472-N'; // -0.000001 -> 0.0
//$searchToken = 'X1E-OQ'; // -0.099426 -> -0.10
//$searchToken = 'BKK4-H'; // -0.049954 -> -0.05
@@ -168,6 +168,8 @@ class System extends \Controller\AccessController {
//$searchToken = 'Ayeroilen'; // 0.446568 -> 0.4 (LS)
//$searchToken = 'Enderailen'; // 0.448785 -> 0.4 (LS)
//$searchToken = 'Neziel'; // 0.449943 -> 0.4 (LS)
//$searchToken = 'Naga'; // 0.033684 -> 0.1 (LS)
$this->whereQuery = "WHERE
map_sys.solarSystemName LIKE '%" . $searchToken . "%'";

View File

@@ -27,7 +27,7 @@ class CcpSystemsMapper extends AbstractIterator {
// "system trueSec" mapping -------------------------------------------
self::$map['trueSec'] = function($iterator){
$trueSec = round((float)$iterator['system_security'], 1);
$trueSec = self::formatTrueSec($iterator['system_security']);
return $trueSec;
};
@@ -69,7 +69,7 @@ class CcpSystemsMapper extends AbstractIterator {
$iterator['security'] == 9
){
// k-space system
$trueSec = round($iterator['system_security'], 1, PHP_ROUND_HALF_DOWN);
$trueSec = self::formatTrueSec($iterator['system_security']);
if($trueSec <= 0){
$security = '0.0';
@@ -125,6 +125,20 @@ class CcpSystemsMapper extends AbstractIterator {
return iterator_to_array($this, false);
}
/**
* format trueSec
* @param $trueSec
* @return float
*/
static function formatTrueSec($trueSec){
$positive = ($trueSec > 0);
$trueSec = round((float)$trueSec, 1, PHP_ROUND_HALF_DOWN);
if($positive && $trueSec <= 0){
$trueSec = 0.1;
}
return $trueSec;
}
static function recursiveIterator($iterator){