Refactor DeviceListMix: split code in smaller methods
This commit is contained in:
parent
2457f776e1
commit
3e33b7d63b
|
@ -46,11 +46,6 @@ class DeviceListMix(GenericMixView):
|
||||||
form_filter = FilterForm(lots, lot_id)
|
form_filter = FilterForm(lots, lot_id)
|
||||||
devices = form_filter.search()
|
devices = form_filter.search()
|
||||||
lot = None
|
lot = None
|
||||||
tags = (
|
|
||||||
Tag.query.filter(Tag.owner_id == current_user.id)
|
|
||||||
.filter(Tag.device_id.is_(None))
|
|
||||||
.order_by(Tag.id.asc())
|
|
||||||
)
|
|
||||||
|
|
||||||
if lot_id:
|
if lot_id:
|
||||||
lot = lots.filter(Lot.id == lot_id).one()
|
lot = lots.filter(Lot.id == lot_id).one()
|
||||||
|
@ -67,10 +62,6 @@ class DeviceListMix(GenericMixView):
|
||||||
form_new_allocate = AllocateForm()
|
form_new_allocate = AllocateForm()
|
||||||
form_new_datawipe = DataWipeForm()
|
form_new_datawipe = DataWipeForm()
|
||||||
form_new_trade = ''
|
form_new_trade = ''
|
||||||
action_devices = form_new_action.devices.data
|
|
||||||
list_devices = []
|
|
||||||
if action_devices:
|
|
||||||
list_devices.extend([int(x) for x in action_devices.split(",")])
|
|
||||||
|
|
||||||
self.context.update(
|
self.context.update(
|
||||||
{
|
{
|
||||||
|
@ -83,13 +74,27 @@ class DeviceListMix(GenericMixView):
|
||||||
'form_filter': form_filter,
|
'form_filter': form_filter,
|
||||||
'form_print_labels': PrintLabelsForm(),
|
'form_print_labels': PrintLabelsForm(),
|
||||||
'lot': lot,
|
'lot': lot,
|
||||||
'tags': tags,
|
'tags': self.get_user_tags(),
|
||||||
'list_devices': list_devices,
|
'list_devices': self.get_selected_devices(form_new_action),
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
return self.context
|
return self.context
|
||||||
|
|
||||||
|
def get_user_tags(self):
|
||||||
|
return (
|
||||||
|
Tag.query.filter(Tag.owner_id == current_user.id)
|
||||||
|
.filter(Tag.device_id.is_(None))
|
||||||
|
.order_by(Tag.id.asc())
|
||||||
|
)
|
||||||
|
|
||||||
|
def get_selected_devices(self, action_form):
|
||||||
|
"""Retrieve selected devices (when action form is submited)"""
|
||||||
|
action_devices = action_form.devices.data
|
||||||
|
if action_devices:
|
||||||
|
return [int(x) for x in action_devices.split(",")]
|
||||||
|
return []
|
||||||
|
|
||||||
|
|
||||||
class DeviceListView(DeviceListMix):
|
class DeviceListView(DeviceListMix):
|
||||||
def dispatch_request(self, lot_id=None):
|
def dispatch_request(self, lot_id=None):
|
||||||
|
|
Reference in New Issue