Fixed some minor bugs and improved change fleet management for boards

Change-Id: Iec9848fb2a1cbb951591a6dad420543d9e7b6a8c
This commit is contained in:
Carmelo Romeo 2018-10-29 18:01:19 +01:00
parent 68d2d90906
commit b660cbfb5e
6 changed files with 42 additions and 14 deletions

View File

@ -100,7 +100,19 @@ class UpdateBoardForm(forms.SelfHandlingForm):
def __init__(self, *args, **kwargs):
super(UpdateBoardForm, self).__init__(*args, **kwargs)
self.fields["fleet_list"].choices = kwargs["initial"]["fleet_list"]
# Populate fleets
fleets = iotronic.fleet_list(self.request, None)
fleets.sort(key=lambda b: b.name)
fleet_list = []
fleet_list.append((None, _("-")))
for fleet in fleets:
fleet_list.append((fleet.uuid, _(fleet.name)))
# LOG.debug("FLEETS: %s", fleet_list)
self.fields["fleet_list"].choices = fleet_list
self.fields["fleet_list"].initial = kwargs["initial"]["fleet_id"]
# LOG.debug("INITIAL: %s", kwargs["initial"])

View File

@ -175,7 +175,8 @@ class BoardsTable(tables.DataTable):
type = tables.Column('type', verbose_name=_('Type'))
# mobile = tables.Column('mobile', verbose_name=_('Mobile'))
uuid = tables.Column('uuid', verbose_name=_('Board ID'))
fleet = tables.Column('fleet', verbose_name=_('Fleet ID'))
# fleet = tables.Column('fleet', verbose_name=_('Fleet ID'))
fleet_name = tables.Column('fleet_name', verbose_name=_('Fleet Name'))
# code = tables.Column('code', verbose_name=_('Code'))
status = tables.Column('status', verbose_name=_('Status'))
# location = tables.Column('location', verbose_name=_('Geo'))

View File

@ -25,6 +25,8 @@
<dd>{{ board.mobile }}</dd>
<dt>{% trans "Extra" %}</dt>
<dd>{{ board.extra }}</dd>
<dt>{% trans "Fleet Name" %}</dt>
<dd>{{ board.fleet_name }}</dd>
<dt>{% trans "Fleet ID" %}</dt>
<dd>{{ board.fleet }}</dd>
</dl>

View File

@ -77,6 +77,16 @@ class IndexView(tables.DataTableView):
# board.__dict__.update(dict(services=board_services))
board._info.update(dict(services=board_services))
if board.fleet != None:
fleet_info = api.iotronic.fleet_get(self.request,
board.fleet,
None)
board.fleet_name = fleet_info.name
else:
board.fleet_name = None
return boards
@ -123,19 +133,11 @@ class UpdateView(forms.ModalFormView):
board = self.get_object()
location = board.location[0]
# Populate fleets
fleets = api.iotronic.fleet_list(self.request, None)
fleets.sort(key=lambda b: b.name)
fleet_list = []
for fleet in fleets:
fleet_list.append((fleet.uuid, _(fleet.name)))
return {'uuid': board.uuid,
'name': board.name,
'mobile': board.mobile,
'owner': board.owner,
'fleet_list': fleet_list,
'fleet_id': board.fleet,
'latitude': location["latitude"],
'longitude': location["longitude"],
'altitude': location["altitude"]}
@ -499,6 +501,16 @@ class DetailView(tabs.TabView):
board_id)
board._info.update(dict(plugins=board_plugins))
# Adding fleet name
if board.fleet != None:
fleet_info = api.iotronic.fleet_get(self.request,
board.fleet,
None)
board.fleet_name = fleet_info.name
else:
board.fleet_name = None
# LOG.debug("BOARD: %s\n\n%s", board, board._info)
except Exception:

View File

@ -93,7 +93,8 @@ class FleetsTable(tables.DataTable):
class Meta(object):
name = "fleets"
verbose_name = _("fleets")
row_actions = (EditFleetLink, ActionFleetLink,
DeleteFleetsAction)
# row_actions = (EditFleetLink, ActionFleetLink,
# DeleteFleetsAction)
row_actions = (EditFleetLink, DeleteFleetsAction)
table_actions = (FleetFilterAction, CreateFleetLink,
DeleteFleetsAction)

View File

@ -193,7 +193,7 @@ class DetailView(tabs.TabView):
fleet = iotronic.fleet_get(self.request, fleet_id, None)
boards = iotronic.fleet_get_boards(self.request, fleet_id)
LOG.debug('XXXX: %s', boards)
# LOG.debug('Boards: %s', boards)
for board in boards:
fleet_boards.append(board._info)