|
@@ -196,6 +196,7 @@ class ONUController extends Controller
|
|
|
*/
|
|
|
private function calculateDistance($lat, $lng, $napId)
|
|
|
{
|
|
|
+ $translator = $this->get('translator');
|
|
|
$naps = array();
|
|
|
$em = $this->container->get("doctrine.orm.entity_manager");
|
|
|
$qb = $em->createQueryBuilder();
|
|
@@ -205,6 +206,7 @@ class ONUController extends Controller
|
|
|
$geodecode = new GeoDecode();
|
|
|
foreach ($napsQuery as $nap) {
|
|
|
if ($nap->getExtraData() != null) {
|
|
|
+ $extraData = json_decode($nap->getExtraData(), true);
|
|
|
$nap->setContainer($this->container);
|
|
|
$dataNap = [
|
|
|
'id' => $nap->getId(),
|
|
@@ -223,22 +225,20 @@ class ONUController extends Controller
|
|
|
$napId == $nap->getId()) {
|
|
|
// controlo la distancia y el codigo de nap
|
|
|
$dataNap['distance'] = $distance;
|
|
|
- $dataNap['address'] = $nap->getAddress();
|
|
|
- $naps[$nap->getId()] = $dataNap;
|
|
|
+ } else {
|
|
|
+ $dataNap['distance'] = $distance . " [" . $translator->trans("out_of_range", array(), "FTTHBundle") . "]";
|
|
|
}
|
|
|
+ $dataNap['address'] = $extraData['Address'];
|
|
|
+ $naps[$nap->getId()] = $dataNap;
|
|
|
} else {
|
|
|
- if ($napId == $nap->getId()) {
|
|
|
- // si el codigo de napId coincide tengo que cargar la nap
|
|
|
- $dataNap['distance'] = $distance;
|
|
|
- $dataNap['address'] = $nap->getAddress();
|
|
|
- $naps[$nap->getId()] = $dataNap;
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- if ($napId == $nap->getId()) {
|
|
|
// si el codigo de napId coincide tengo que cargar la nap
|
|
|
+ $dataNap['distance'] = $distance . " [" . "Distancia minima no configurada" . "]";
|
|
|
+ $dataNap['address'] = $extraData['Address'];
|
|
|
$naps[$nap->getId()] = $dataNap;
|
|
|
}
|
|
|
+ } else {
|
|
|
+ $dataNap['distance'] = "-1" . " [" . "NAP no posicionada" . "]";
|
|
|
+ $naps[$nap->getId()] = $dataNap;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -252,13 +252,13 @@ class ONUController extends Controller
|
|
|
*/
|
|
|
public function orderDistances($a, $b)
|
|
|
{
|
|
|
- $a = (float)$a["distance"];
|
|
|
- $b = (float)$b["distance"];
|
|
|
+ $a = (float)$a["distance"];
|
|
|
+ $b = (float)$b["distance"];
|
|
|
|
|
|
- if ($a == $b) {
|
|
|
- return 0;
|
|
|
- }
|
|
|
- return ($a < $b) ? -1 : 1;
|
|
|
+ if ($a == $b) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ return ($a < $b) ? -1 : 1;
|
|
|
//return (float)$a["distance"] - (float)$b["distance"];
|
|
|
}
|
|
|
}
|