diff --git a/src/Controller/BatteryController.php b/src/Controller/BatteryController.php index e392dd6b..b63e52e9 100644 --- a/src/Controller/BatteryController.php +++ b/src/Controller/BatteryController.php @@ -117,6 +117,7 @@ class BatteryController extends Controller $row['height'] = $orow[0]->getHeight(); $row['total_height'] = $orow[0]->getTotalHeight(); $row['image_file'] = $orow[0]->getImageFile(); + $row['flag_active'] = $orow[0]->isActive(); // add row metadata $row['meta'] = [ @@ -182,7 +183,8 @@ class BatteryController extends Controller ->setHeight($req->request->get('height')) ->setTotalHeight($req->request->get('total_height')) ->setSellingPrice($req->request->get('sell_price')) - ->setImageFile($req->request->get('image_file')); + ->setImageFile($req->request->get('image_file')) + ->setActive($req->request->get('flag_active', false)); // initialize error list $error_array = []; @@ -308,6 +310,7 @@ class BatteryController extends Controller ->setTotalHeight($req->request->get('total_height')) ->setSellingPrice($req->request->get('sell_price')) ->setImageFile($req->request->get('image_file')) + ->setActive($req->request->get('flag_active', false)) ->clearVehicles(); // initialize error list @@ -424,7 +427,7 @@ class BatteryController extends Controller $bmodel_id = $req->query->get('model_id'); $bsize_id = $req->query->get('size_id'); - // find the battery using model and size + // find the battery using model and size and battery must be active $em = $this->getDoctrine()->getManager(); $query = $em->createQuery('SELECT b FROM App\Entity\Battery b JOIN b.model bm @@ -432,7 +435,8 @@ class BatteryController extends Controller JOIN b.manufacturer bmfg WHERE bm.id = :bm_id AND bs.id = :bs_id - AND bmfg.id = :bmfg_id') + AND bmfg.id = :bmfg_id + AND b.flag_active = true') ->setParameter('bmfg_id', $bmfg_id) ->setParameter('bm_id', $bmodel_id) ->setParameter('bs_id', $bsize_id); diff --git a/src/Entity/Battery.php b/src/Entity/Battery.php index 8adf4f65..89104bcf 100644 --- a/src/Entity/Battery.php +++ b/src/Entity/Battery.php @@ -147,6 +147,12 @@ class Battery */ protected $image_file; + // flag if battery is active + /** + * @ORM\Column(type="boolean", options={"default": true}) + */ + protected $flag_active; + public function __construct() { $this->vehicles = new ArrayCollection(); @@ -159,6 +165,8 @@ class Battery $this->total_height = 0; $this->date_create = new DateTime(); + + $this->flag_active = true; } public function getID() @@ -382,4 +390,15 @@ class Battery { return $this->image_file; } + + public function isActive() + { + return $this->flag_active; + } + + public function setActive($flag_active = true) + { + $this->flag_active = $flag_active; + return $this; + } } diff --git a/templates/battery/form.html.twig b/templates/battery/form.html.twig index 53adb693..4ac05437 100644 --- a/templates/battery/form.html.twig +++ b/templates/battery/form.html.twig @@ -101,6 +101,20 @@
+