浏览代码

Merged in FD3-703 (pull request #104)

FD3-703
Guillermo Espinoza 6 年之前
父节点
当前提交
570f7974a3

文件差异内容过多而无法显示
+ 1 - 1
app/DoctrineMigrations/src/template.yml


+ 36 - 4
src/FTTHBundle/Admin/ONUAdmin.php

@@ -2,6 +2,7 @@
 
 namespace FTTHBundle\Admin;
 
+use Buzz\Message\RequestInterface as HttpRequestInterface;
 use Doctrine\ORM\EntityRepository;
 use Sonata\DoctrineORMAdminBundle\Datagrid\ProxyQuery;
 use Sonata\AdminBundle\Datagrid\DatagridMapper;
@@ -357,8 +358,8 @@ class ONUAdmin extends WorkflowBaseAdmin
         if ($this->hasParameter('show.onu.activationCode') && $this->getParameter('show.onu.activationCode') == true) {
             $formMapper->add('activationCode');
         }
-        $showMapper
-                    ->add('profile')
+        
+        $showMapper->add('profile')
                     ->add('nap')
                     ->add('model')
                     ->add('comments')
@@ -370,8 +371,18 @@ class ONUAdmin extends WorkflowBaseAdmin
                     ->add('serialNumber')
                     ->add('ponSerialNumberAux')
                     ->add('olt')
-                    ->add('currentState')
-                ->end()
+                    ->add('currentState');
+        // Consulto en stats la url del detalle de onu
+        $onuShowUrl = $this->getStatsShowOnuUrl();
+        if ($onuShowUrl != '') {
+            $showMapper->add('stats_onu', 'string', [
+                'template' => 'FTTHBundle::stats_show_link.html.twig',
+                'data' => [
+                    'url' => $onuShowUrl,
+                ],
+            ]);
+        }
+        $showMapper->end()
             ->end()
             ->tab('Log')
                 ->with('Log')
@@ -468,6 +479,27 @@ class ONUAdmin extends WorkflowBaseAdmin
                 ->end();
         }
     }
+    
+    /**
+     * @return string
+     */
+    private function getStatsShowOnuUrl()
+    {
+        // Consulto en stats la url del detalle de onu
+        $onuShowUrl = '';
+        if ($statsUrl = $this->getParameter('url_stats')) {
+            $subject = $this->getSubject();
+            $ws = $this->get('webservice');
+            $url = $ws->buildUrl($statsUrl . '/api/onu/show/url.json', [
+                'ponSerialNumber' => $subject->getPonSerialNumber(),
+            ]);
+            $response = $ws->makeGetRequest($url);
+            $json_decode = json_decode($response, true);
+            $onuShowUrl = isset($json_decode['url']) ? $json_decode['url'] : '';
+        }
+        
+        return $onuShowUrl;
+    }
 
     /**
      * @param string $action

+ 1 - 0
src/FTTHBundle/Admin/ONUModelAdmin.php

@@ -53,6 +53,7 @@ class ONUModelAdmin extends BaseAdmin
                     'router' => 'router',
                     'bridge' => 'bridge',
                 ],
+                'data' => 'router',
             ])
             ->add('catv')
             ->add('wifi')

+ 2 - 2
src/FTTHBundle/Entity/ONU.php

@@ -250,9 +250,9 @@ class ONU implements DeviceInterface, TenancyIdTraitInterface, LocationInterface
     protected $onuProfile;
 
     /**
-     * @ORM\Column(type="boolean", nullable=true, options={"default": true})
+     * @ORM\Column(type="boolean", nullable=true, options={"default": false})
      */
-    protected $catv = true;
+    protected $catv = false;
 
     /**
      * @ORM\Column(type="text", nullable=true)

+ 3 - 0
src/FTTHBundle/Resources/translations/FTTHBundle.es.yml

@@ -347,3 +347,6 @@ msg_use_template_onu_in_create_onu_ftth: Se encuentra en uso una plantilla de ON
 
 client_filter_help: Ingresar nombre de cliente, ID o externalID
 error_onu_position: La posición dentro del puerto seleccionada ya se encuentra asignada a otra ONU
+
+Stats: Estadísticas
+Show stats: Mostrar detalle

+ 9 - 0
src/FTTHBundle/Resources/views/stats_show_link.html.twig

@@ -0,0 +1,9 @@
+<th>
+    {{ 'Stats'|trans({}, 'FTTHBundle') }} 
+    <i class="fa fa-line-chart" aria-hidden="true"></i>
+</th>
+<td>
+    <a href="{{ field_description.options.data.url }}">
+        {{ 'Show stats'|trans({}, 'FTTHBundle') }}
+    </a>
+</td>