瀏覽代碼

Added a function to add timeOltScan or executeSnmp to NAS when we click on button to update the devices

Jean Sumara Leopoldo 5 年之前
父節點
當前提交
62c966930f
共有 1 個文件被更改,包括 20 次插入0 次删除
  1. 20 0
      EventListener/DeviceListener.php

+ 20 - 0
EventListener/DeviceListener.php

@@ -193,6 +193,7 @@ class DeviceListener
         if ($entity instanceof DeviceInterface) {
             $data = $entity->getDeviceData();
             $data = $this->addLocationData($entity, $data);
+            $data = $this->addExtraDataFields($entity, $data);
 
             return $this->webservice->makeGetRequest($url, $method, $data, $credentials);
         }
@@ -222,6 +223,25 @@ class DeviceListener
         return $data;
     }
 
+    private function addExtraDataFields($entity, $data)
+    {
+        if(!$this->enabled){
+            return;
+        }
+        $extraData = json_decode($data['extraData'], true);
+
+        $className = get_class($entity);
+
+        if($className == 'FTTHBundle\Entity\OLT' && !array_key_exists('timeOltScan', $extraData)){
+            $extraData['timeOltScan'] = 10;
+        }else if($className == 'FTTHBundle\Entity\NAS' && !array_key_exists('executeSnmp', $extraData)){
+            $extraData['executeSnmp'] = true;
+        }
+
+        $data['extraData'] = json_encode($extraData);
+        return $data;
+    }
+
     /**
      * @param object $entity
      *