Filter hubs in hubs dropdown to those with flag_hub_view set to true. Add flag_hub_view to Hub entity. Filter JOs whose status are not cancelled or fulfilled. #411

This commit is contained in:
Korina Cordero 2020-05-20 05:22:08 +00:00
parent 039710750f
commit c5eaf348a8
4 changed files with 48 additions and 5 deletions

View file

@ -152,8 +152,9 @@ class HubController extends Controller
->setTimeClose($time_close)
->setCoordinates($point)
->setBranchCode($req->request->get('branch_code', ''))
->setStatusOpen($req->request->get('status_open') ?? false)
->setRiderSlots($req->request->get('rider_slots', 0));
->setStatusOpen($req->request->get('status_open', false))
->setRiderSlots($req->request->get('rider_slots', 0))
->setHubViewFlag($req->request->get('flag_hub_view', false));
}
protected function setQueryFilters($datatable, QueryBuilder $query)

View file

@ -62,6 +62,12 @@ class Hub
*/
protected $rider_slots;
// flag to see if hub will be displayed in Hub View
/**
* @ORM\Column(type="boolean")
*/
protected $flag_hub_view;
public function __construct()
{
$this->time_open = new DateTime();
@ -69,6 +75,7 @@ class Hub
$this->riders = new ArrayCollection();
$this->outlets = new ArrayCollection();
$this->status_open = true;
$this->flag_hub_view = false;
}
public function getRiders()
@ -167,4 +174,16 @@ class Hub
return $this->rider_slots;
}
public function setHubViewFlag($flag_hub_view = true)
{
$this->flag_hub_view = $flag_hub_view;
return $this;
}
public function isHubView()
{
return $this->flag_hub_view;
}
}

View file

@ -2342,7 +2342,7 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface
$params['riders'] = $this->em->getRepository(Rider::class)->findAll();
// get hubs for dropdown
$params['hubs'] = $this->em->getRepository(Hub::class)->findAll();
$params['hubs'] = $this->em->getRepository(Hub::class)->findBy(['flag_hub_view' => true]);
return $params;
}
@ -2575,7 +2575,13 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface
$rows_route = 'jo_hub_view_rows';
$edit_route = 'jo_hub_view_form';
$unlock_route = '';
$jo_status = '';
$jo_status = [
JOStatus::PENDING,
JOStatus::RIDER_ASSIGN,
JOStatus::ASSIGNED,
JOStatus::IN_PROGRESS,
JOStatus::IN_TRANSIT,
];
break;
default:
throw new AccessDeniedHttpException('No access.');
@ -2724,6 +2730,12 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface
->andWhere('h.id = :hub_id')
->setParameter('hub_id', $datatable['query']['hub']);
}
else
{
$query->innerJoin('q.hub', 'h')
->andWhere('h.flag_hub_view = :flag_hub_view')
->setParameter('flag_hub_view', true);
}
$c_date = new DateTime();
$start_curr_date = $c_date->format('Y-m-d') . ' ' . '00:00:00';
@ -2734,8 +2746,10 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface
$query->andWhere('q.date_schedule >= :start_current_date')
->andWhere('q.date_schedule <= :end_current_date')
->andWhere('q.status IN (:statuses)')
->setParameter('start_current_date', $start_current_date)
->setParameter('end_current_date', $end_current_date);
->setParameter('end_current_date', $end_current_date)
->setParameter('statuses', $status, Connection::PARAM_STR_ARRAY);
break;
default:
$query->where('q.status = :status')

View file

@ -132,6 +132,15 @@
</div>
<div class="form-control-feedback hide" data-field="time_close"></div>
</div>
<div class="col-lg-3">
<span class="m-switch m-switch--icon block-switch">
<label>
<input type="checkbox" name="flag_hub_view" id="flag-hub-view" value="1"{{ obj.isHubView ? ' checked' }}>
<label class="switch-label">Hub View</label>
<span></span>
</label>
</span>
</div>
</div>
<div class="form-group m-form__group row">
<div class="col-lg-12">