Add flag_active to Battery entity. Add flag_active to forms. #733

This commit is contained in:
Korina Cordero 2023-02-02 02:50:22 +00:00
parent 935dc15101
commit c478a4d0bf
4 changed files with 55 additions and 3 deletions

View file

@ -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);

View file

@ -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;
}
}

View file

@ -101,6 +101,20 @@
<div class="form-control-feedback hide" data-field="size"></div>
</div>
</div>
<div class="form-group m-form__group row">
<div class="col-lg-4">
<span class="m-switch m-switch--icon block-switch">
<label>
<input type="checkbox" name="flag_active" id="flag_active" value="1"{{ obj.isActive() ? ' checked' }}>
<label class="switch-label">Active</label>
<span></span>
</label>
</span>
<div class="form-control-feedback hide" data-field="flag_active"></div>
</div>
<div class="col-lg-8">
</div>
</div>
<div class="form-group m-form__group row">
<div class="col-lg-6">
<label data-field="image_file">

View file

@ -111,6 +111,21 @@
title: 'Brand',
width: 120
},
{
field: 'flag_active',
title: 'Active',
template: function (row, index, datatable) {
var tag = '';
if (row.flag_active === true) {
tag = '<span class="m-badge m-badge--success m-badge--wide">Yes</span>';
} else {
tag = '<span class="m-badge m-badge--danger m-badge--wide">No</span>';
}
return tag;
}
},
/*
{
field: 'prod_code',