diff --git a/apps/assets/templates/assets/asset_list.html b/apps/assets/templates/assets/asset_list.html
index 970f21555..a2b1c306c 100644
--- a/apps/assets/templates/assets/asset_list.html
+++ b/apps/assets/templates/assets/asset_list.html
@@ -84,6 +84,7 @@
{% endblock %}
{% block custom_foot_js %}
+
diff --git a/apps/assets/views.py b/apps/assets/views.py
index 5f70c0ef5..7070d78bf 100644
--- a/apps/assets/views.py
+++ b/apps/assets/views.py
@@ -772,7 +772,7 @@ class BulkImportAssetView(AdminUserRequiredMixin, JSONResponseMixin, FormView):
'cabinet_pos', 'number', 'status', 'type', 'env', 'sn', 'comment']
header_min = ['hostname', 'ip', 'port', 'admin_user', 'comment']
header = [col.value for col in next(rows)]
- if header not in header_all and header_min not in header:
+ if not set(header).issubset(set(header_all)) and not set(header).issuperset(set(header_min)):
data = {'valid': False, 'msg': 'Must be same format as template or export file'}
return self.render_json_response(data)
@@ -790,12 +790,12 @@ class BulkImportAssetView(AdminUserRequiredMixin, JSONResponseMixin, FormView):
asset_dict['idc'] = idc
if asset_dict.get('type'):
- asset_display_type_map = dict(zip(dict(Asset.TYPE_CHOICES).values, dict(Asset.TYPE_CHOICES).keys()))
+ asset_display_type_map = dict(zip(dict(Asset.TYPE_CHOICES).values(), dict(Asset.TYPE_CHOICES).keys()))
asset_type = asset_display_type_map.get(asset_dict['type'], 'Server')
asset_dict['type'] = asset_type
if asset_dict.get('status'):
- asset_display_status_map = dict(zip(dict(Asset.STATUS_CHOICES).values,
+ asset_display_status_map = dict(zip(dict(Asset.STATUS_CHOICES).values(),
dict(Asset.STATUS_CHOICES).keys()))
asset_status = asset_display_status_map.get(asset_dict['status'], 'In use')
asset_dict['status'] = asset_status
diff --git a/apps/terminal/serializers.py b/apps/terminal/serializers.py
index 2903fa896..60b5c6c26 100644
--- a/apps/terminal/serializers.py
+++ b/apps/terminal/serializers.py
@@ -24,10 +24,10 @@ class TerminalSerializer(serializers.ModelSerializer):
@staticmethod
def get_is_alive(obj):
log = obj.terminalheatbeat_set.last()
- if timezone.now() - log.date_created > timezone.timedelta(seconds=600):
- return False
- else:
+ if log and timezone.now() - log.date_created < timezone.timedelta(seconds=600):
return True
+ else:
+ return False
class TerminalHeatbeatSerializer(serializers.ModelSerializer):