瀏覽代碼

FD3-805 pool entity delete message updated

Guillermo Espinoza 6 年之前
父節點
當前提交
d3338dcc1e
共有 2 個文件被更改,包括 22 次插入3 次删除
  1. 2 2
      composer.lock
  2. 20 1
      src/IPv4Bundle/Entity/Pool.php

+ 2 - 2
composer.lock

@@ -1458,7 +1458,7 @@
             "source": {
                 "type": "git",
                 "url": "ssh://git@200.50.168.30:222/VendorSoftwareFlowdat3/BaseAdmin.git",
-                "reference": "767b0aad4bd83c5677f69a8bb860793942c90f10"
+                "reference": "3671a15664ea6f19d2ca6ed1915522389b62b600"
             },
             "type": "library",
             "autoload": {
@@ -1473,7 +1473,7 @@
                 "bootstrap",
                 "sonata"
             ],
-            "time": "2019-01-09T17:58:40+00:00"
+            "time": "2019-01-21T12:13:01+00:00"
         },
         {
             "name": "ik/device-bundle",

+ 20 - 1
src/IPv4Bundle/Entity/Pool.php

@@ -2,8 +2,10 @@
 
 namespace IPv4Bundle\Entity;
 
+use Base\AdminBundle\Interfaces\PreRemoveInterface;
 use Base\AdminBundle\Traits\TenancyIdTrait;
 use Base\AdminBundle\Traits\TenancyIdTraitInterface;
+use HostBundle\Entity\Host;
 use Doctrine\ORM\Mapping as ORM;
 use JMS\Serializer\Annotation as JMS;
 use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
@@ -20,7 +22,7 @@ use WorkflowBundle\Entity\Traits\WorkflowTrait;
  *
  * @Assert\Callback("validateIPs")
  */
-class Pool implements TenancyIdTraitInterface, WorkflowInterface
+class Pool implements TenancyIdTraitInterface, WorkflowInterface, PreRemoveInterface
 {
 
     use TenancyIdTrait;
@@ -273,4 +275,21 @@ class Pool implements TenancyIdTraitInterface, WorkflowInterface
         }
     }
 
+    /**
+     * @return array
+     */
+    public function getEntitiesForRemove()
+    {
+        global $kernel;
+
+        $hostRepository = $kernel->getContainer()->get('doctrine')->getRepository(Host::class);
+        $hosts = $hostRepository->findAllBetweenIp($this->firstIp, $this->lastIp);
+        $entities = [];
+        foreach ($hosts as $host) {
+            $entities['host'][] = sprintf('Id: <b>%d</b> Fixed IP: <b>%s</b>', $host->getId(), $host->getFixedAddress());
+        }
+
+        return $entities;
+    }
+
 }