Selaa lähdekoodia

Merge branch 'master' of https://bitbucket.org/ikflowdat/ftth into bug

Conflicts:
	composer.lock
Maxi Schvindt 7 vuotta sitten
vanhempi
commit
d91b80590f

+ 1 - 1
.drone.yml

@@ -1,6 +1,6 @@
 services:
   database:
-    image: mysql:5.5
+    image: mysql:5.7
     environment:
       - MYSQL_ROOT_PASSWORD=
       - MYSQL_ALLOW_EMPTY_PASSWORD=yes

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 70 - 0
app/DoctrineMigrations/Templates20171205183401/inicio.yml


+ 19 - 0
app/DoctrineMigrations/Version20171205183401.php

@@ -0,0 +1,19 @@
+<?php
+
+namespace Application\Migrations;
+
+use Doctrine\DBAL\Migrations\AbstractMigration;
+use Doctrine\DBAL\Schema\Schema;
+use MigrationsBundle\Migrations\MigrationsBase;
+
+/**
+ * Auto-generated Migration: Please modify to your needs!
+ */
+class Version20171205183401 extends MigrationsBase
+{
+    public function postUp(Schema $schema)
+    {
+        $this->executeYaml(__DIR__ . "/Templates20171205183401/", "inicio.yml");
+        $this->showResult();
+    }
+}

+ 8 - 8
composer.lock

@@ -1479,7 +1479,7 @@
                 "bootstrap",
                 "sonata"
             ],
-            "time": "2017-12-05T17:21:10+00:00"
+            "time": "2017-12-05 17:21:10"
         },
         {
             "name": "ik/device-bundle",
@@ -1487,7 +1487,7 @@
             "source": {
                 "type": "git",
                 "url": "ssh://git@gogs.infra.flowdat.com:222/VendorSoftwareFlowdat3/DeviceBundle.git",
-                "reference": "584909edec2acc3eb9b565366f01ed5265369738"
+                "reference": "1427ae709813753418663886f8e43167d4d25f4a"
             },
             "type": "library",
             "autoload": {
@@ -1502,7 +1502,7 @@
                 "bundle",
                 "validators"
             ],
-            "time": "2017-10-27T15:31:53+00:00"
+            "time": "2017-12-11 15:47:48"
         },
         {
             "name": "ik/extra-data-bundle",
@@ -1510,7 +1510,7 @@
             "source": {
                 "type": "git",
                 "url": "ssh://git@200.50.168.30:222/VendorSoftwareFlowdat3/ExtraDataBundle.git",
-                "reference": "66a998f00904ca9c18e8b02b8861c11f4e24989a"
+                "reference": "285c7a279256fc613a0a8e65c6163d5b60361365"
             },
             "type": "library",
             "autoload": {
@@ -1525,7 +1525,7 @@
                 "bundle",
                 "extra-data"
             ],
-            "time": "2017-11-17T18:25:46+00:00"
+            "time": "2017-12-11 15:48:57"
         },
         {
             "name": "ik/leaflet-bundle",
@@ -1533,7 +1533,7 @@
             "source": {
                 "type": "git",
                 "url": "ssh://git@gogs.infra.flowdat.com:222/VendorSoftwareFlowdat3/LeafletBundle.git",
-                "reference": "ede6c71729ad672c364f8d5fa86a3e0d3929e441"
+                "reference": "f62c3ce0a0398df29743c1a946f284ef4f35678d"
             },
             "require": {
                 "ext-curl": "*",
@@ -1546,7 +1546,7 @@
                 }
             },
             "description": "The Flowdat3 Leaflet Resource",
-            "time": "2017-10-18T17:36:55+00:00"
+            "time": "2017-12-11 14:10:00"
         },
         {
             "name": "ik/map-bundle",
@@ -1592,7 +1592,7 @@
                 "bundle",
                 "migrations"
             ],
-            "time": "2017-12-06T17:56:15+00:00"
+            "time": "2017-12-06 17:56:15"
         },
         {
             "name": "ik/oauthclient-bundle",

+ 8 - 23
src/FTTHBundle/Admin/ONUAdmin.php

@@ -83,14 +83,14 @@ class ONUAdmin extends WorkflowBaseAdmin
             ->setHelps(array(
                 'nap' => $this->trans("helps.check_address")));
 
-        
+
         /*
          *  Si vienen parámetros por GET de olt=id o psn=string seteamos los campos
          */
         $formMapper->getFormBuilder()->addEventListener(FormEvents::PRE_SET_DATA,
             function (FormEvent $event) use ($formMapper) {
                 $form = $event->getForm();
-                
+
                 $olt = $this->getRequest()->query->get('olt');
                 if(!is_null($olt)) {
                     $em = $this->get("doctrine.orm.entity_manager");
@@ -102,7 +102,7 @@ class ONUAdmin extends WorkflowBaseAdmin
 
                     $form->add('olt', 'entity', array('class' => 'FTTHBundle:OLT', 'query_builder' => $query_olt));
                 }
-                
+
                 $ponSerialNumber = $this->getRequest()->query->get('psn');
                 if ($ponSerialNumber) {
                     $form->add('ponSerialNumber', null, array(
@@ -110,7 +110,7 @@ class ONUAdmin extends WorkflowBaseAdmin
                     ));
                 }
             }
-        );        
+        );
     }
 
     /**
@@ -150,16 +150,16 @@ class ONUAdmin extends WorkflowBaseAdmin
     /**
      * @param string $action
      * @param Object $object
-     * 
+     *
      * @return array
      */
     public function configureActionButtons($action, $object = null)
     {
         $actions = parent::configureActionButtons($action, $object);
-        
+
         if($action == "list") {
             $actions['import_onu'] = array('template' => 'FTTHBundle:ONU:import_button.html.twig');
-        } 
+        }
 
         return $actions;
     }
@@ -169,20 +169,5 @@ class ONUAdmin extends WorkflowBaseAdmin
         $this->setTemplate('create', 'FTTHBundle:ONU:form.html.twig');
         $this->setTemplate('edit', 'FTTHBundle:ONU:form.html.twig');
     }
-
-    public function create($object){
-	    $em = $this->get("doctrine.orm.entity_manager");
-	    $em->getFilters()->disable('soft_deleteable');
-	    $alt = $em->getRepository("FTTHBundle:ONU")->findOneBy(array('ponSerialNumber' => $object->getPonSerialNumber()));
-	    if($alt and $alt->isDeleted()){
-		    $object->setId($alt->getId());
-		    $object->setDeletedAt(NULL);
-		    $object->setCreated(new \DateTime());
-		    $object->setUpdated(new \DateTime());
-		    $object = $em->merge($object);
-	    }
-
-	    $em->getFilters()->enable('soft_deleteable');
-	    return parent::create($object);
-    }
+    
 }

+ 31 - 0
src/FTTHBundle/EventListener/ONUSoftDeleteListener.php

@@ -0,0 +1,31 @@
+<?php
+
+namespace FTTHBundle\EventListener;
+
+use Base\AdminBundle\EventListener\SoftDeleteListener;
+use FTTHBundle\Entity\ONU;
+
+class ONUSoftDeleteListener extends SoftDeleteListener
+{
+
+    /**
+    * @return boolean
+    */
+    public function checkInstanceOf($entity)
+    {
+        return $entity instanceof ONU;
+    }
+
+    /**
+    * @param Object $entity
+
+    * @return Object
+    */
+    public function getEntity($entity)
+    {
+        return $this->em->getRepository(ONU::class)->findOneBy([
+            'ponSerialNumber' => $entity->getPonSerialNumber()
+        ]);
+    }
+
+}

+ 8 - 3
src/FTTHBundle/Resources/config/services.yml

@@ -12,7 +12,7 @@ services:
         arguments: [~, FTTHBundle\Entity\OLT, WorkflowBundle:CRUD]
         tags:
             - { name: sonata.admin, manager_type: orm, group: FTTH, label: OLT, label_catalogue: FTTHBundle, label_translator_strategy: sonata.admin.label.strategy.underscore }
-        calls:    
+        calls:
             - [setTranslationDomain, [FTTHBundle]]
 
     ftth.admin.profile:
@@ -20,7 +20,7 @@ services:
         arguments: [~, FTTHBundle\Entity\Profile, BaseAdminBundle:CRUD]
         tags:
             - { name: sonata.admin, manager_type: orm, group: FTTH, label: Profile, label_catalogue: FTTHBundle, label_translator_strategy: sonata.admin.label.strategy.underscore }
-        calls:    
+        calls:
             - [setTranslationDomain, [FTTHBundle]]
 
     ftth.admin.nap:
@@ -28,7 +28,7 @@ services:
         arguments: [~, FTTHBundle\Entity\NAP, BaseAdminBundle:CRUD]
         tags:
             - { name: sonata.admin, manager_type: orm, group: FTTH, label: NAP, label_catalogue: FTTHBundle, label_translator_strategy: sonata.admin.label.strategy.underscore }
-        calls:    
+        calls:
             - [setTranslationDomain, [FTTHBundle]]
 
     ftth.admin.onu_model:
@@ -66,3 +66,8 @@ services:
         tags:
             - { name: kernel.event_listener, event: sonata.admin.event.configure.datagrid, method: configureDatagridFilters }
         arguments: ["@service_container"]
+
+    ftth.onu_soft_delete.listener:
+        class: FTTHBundle\EventListener\ONUSoftDeleteListener
+        tags:
+            - { name: doctrine.event_listener, event: prePersist }