diff options
| author | Hongyuan Ma | 2018-07-10 18:14:21 +0000 |
|---|---|---|
| committer | Hongyuan Ma | 2018-07-10 18:14:21 +0000 |
| commit | e55210615b28e4fae27ce4d7cfe477e9a7ac4fcd (patch) | |
| tree | b989f986090d39685ff7a0f257cb66e81ad2ce5d /web/apps | |
| parent | e8d19d9bb977f473783242e9df8e5b520a65a28b (diff) | |
add HistoryRecordPane
Diffstat (limited to 'web/apps')
| -rw-r--r-- | web/apps/test_records/serializer.py | 20 | ||||
| -rw-r--r-- | web/apps/test_records/views.py | 2 | ||||
| -rw-r--r-- | web/apps/users/serializer.py | 8 |
3 files changed, 23 insertions, 7 deletions
diff --git a/web/apps/test_records/serializer.py b/web/apps/test_records/serializer.py index 556db49..11a8cf3 100644 --- a/web/apps/test_records/serializer.py +++ b/web/apps/test_records/serializer.py @@ -304,10 +304,10 @@ class MachineHistoryRecordSerializer(serializers.ModelSerializer): ''' machine_info = serializers.SerializerMethodField() reports = serializers.SerializerMethodField() - + branches = serializers.SerializerMethodField() class Meta: model = UserMachine - fields = ('machine_info', 'reports') + fields = ('machine_info', 'reports', 'branches') def get_reports(self, obj): target_records = TestRecord.objects.filter(test_machine_id=obj.id).values_list( @@ -330,3 +330,19 @@ class MachineHistoryRecordSerializer(serializers.ModelSerializer): serializer = UserMachineSerializer(target_machine) return serializer.data + + def get_branches(self, obj): + target_records = TestRecord.objects.filter(test_machine_id=obj.id).values_list( + 'branch').annotate(Count('id')) + + ret = [] + for branch_item in target_records: + item = {} + item['value'] = branch_item[0] + + branch = TestBranch.objects.filter(id=branch_item[0]).first() + serializer = TestBranchSerializer(branch) + item['branch'] = serializer.data["branch_name"] + ret.append(item) + + return ret diff --git a/web/apps/test_records/views.py b/web/apps/test_records/views.py index ce70145..e76db5a 100644 --- a/web/apps/test_records/views.py +++ b/web/apps/test_records/views.py @@ -78,7 +78,7 @@ def TestRecordCreate(request, format=None): # jsLoads = json.loads(data[0]) # todo get machine by token - # test_machine = UserMachine.objects.filter(secret) + test_machine = 1 from django.db import transaction diff --git a/web/apps/users/serializer.py b/web/apps/users/serializer.py index c3fffc8..91346b3 100644 --- a/web/apps/users/serializer.py +++ b/web/apps/users/serializer.py @@ -37,9 +37,9 @@ class UserMachineSerializer(serializers.ModelSerializer): return reports_num def get_owner(self, obj): - target_owner = UserProfile.objects.filter(id=obj.machine_owner_id).values('email').first() - - return target_owner['email'] + target_owner = UserProfile.objects.filter(id=obj.machine_owner_id).first() + serializer = JWTUserProfileSerializer(target_owner) + return serializer.data def get_avatar(self, obj): target_owner = UserProfile.objects.filter(id=obj.machine_owner_id).values('email').first() @@ -51,4 +51,4 @@ class UserMachineSerializer(serializers.ModelSerializer): class JWTUserProfileSerializer(serializers.ModelSerializer): class Meta: model = UserProfile - fields = ('username', )
\ No newline at end of file + fields = ('username', 'email')
\ No newline at end of file |
