Bläddra i källkod

Se agregan gráficas a la vista de CM

Maxi Schvindt 7 år sedan
förälder
incheckning
5b5d9d6eff

+ 28 - 0
src/StatsBundle/Controller/StatsController.php

@@ -443,4 +443,32 @@ class StatsController extends Controller
         ));
     }
 
+    /**
+     * @Route("/admin/stats/cablemodem/grafana", name="grafana_cablemodem")
+     * 
+     * @return string
+     */
+    public function grafanaCablemodemAction(Request $request)
+    {
+        $grafana_url = $this->getParameter('grafana_url');
+
+        $mac = strtolower($request->get('mac'));
+        
+        $panelIds = array(1, 2, 3, 4, 5);
+        foreach ($panelIds as $panelId) {
+            $urls[] = "cablemodem?orgId=1&var-mac={$mac}&var-tx_channel=2&var-channel=3&panelId={$panelId}&theme=light";
+        }
+
+        if ($request->isMethod('GET')) {
+            return $this->render('StatsBundle:Stats:onu_graph.html.twig', array(
+                        'grafana_url' => $grafana_url,
+                        'urls' => $urls
+            ));
+        }
+
+        return new JsonResponse(array(
+            'urls' => $urls,
+        ));
+    }
+
 }

+ 2 - 1
src/StatsBundle/Resources/config/services.yml

@@ -69,4 +69,5 @@ services:
             - { name: sonata.admin, manager_type: orm, group: List, label: Cablemodem, label_catalogue: StatsBundle, label_translator_strategy: sonata.admin.label.strategy.underscore }
         calls:    
             - [setTranslationDomain, [StatsBundle]]
-            - [setTemplate, ['outer_list_rows_list','StatsBundle:Templates:list_outer_rows_list.html.twig']]
+            - [setTemplate, ['outer_list_rows_list','StatsBundle:Templates:list_outer_rows_list.html.twig']]
+            - [setTemplate, ['show','StatsBundle:Cablemodem:base_show.html.twig']]

+ 10 - 0
src/StatsBundle/Resources/views/Cablemodem/base_show.html.twig

@@ -0,0 +1,10 @@
+{% extends 'SonataAdminBundle:CRUD:base_show.html.twig' %}
+
+{% block show %}
+    {{ parent() }}
+    
+    {% if object.getDeviceServer().getSaveHistoric() == 1 %}
+    {{ render(controller('StatsBundle:Stats:grafanaCablemodem', { 'mac':object.mac })) }}
+    {% endif %}
+    
+{% endblock %}