Просмотр исходного кода

software/task/plan分别的列表和单独获取详情添加所属企业

bigcat 2 лет назад
Родитель
Сommit
e975dc261b

+ 2 - 1
TestLaboratory/settings.py

@@ -65,7 +65,8 @@ INSTALLED_APPS = [
     'apps.task',
     'file',
     'log',
-    'group'
+    'group',
+    'company'
 ]
 
 MIDDLEWARE = [

+ 10 - 0
apps/plan/views/planlistview.py

@@ -9,6 +9,7 @@ from django.http import HttpResponse
 from apps.file.models import FileManager
 from apps.log.models import get_log, gen_log
 from apps.plan.models import TestPlan
+from apps.company.models import Company
 from apps.software.models import Software
 from apps.user.middleware.rolecontrol import RoleControl
 from apps.user.models import User
@@ -16,6 +17,7 @@ from utils.util_add_id import gen_next_id, get_id
 from TestLaboratory.settings import PLAN_ROOT
 
 import logging
+
 logger = logging.getLogger('django')
 
 
@@ -156,7 +158,14 @@ class PlanListView(APIView):
             return Response([])
 
         info = []
+
         for plan in plan_all.all():
+            company_name = ''
+            try:
+                company = Company.objects.get(id=plan.company_id)
+                company_name = company.name
+            except:
+                pass
             info.append({
                 'software_id': plan.software.id,
                 'software_name': plan.software.name,
@@ -171,5 +180,6 @@ class PlanListView(APIView):
                 'create_time': plan.create_time,
                 'update_time': plan.update_time,
                 'company_id': plan.company_id,
+                'company_name': company_name
             })
         return Response(info)

+ 10 - 0
apps/plan/views/planview.py

@@ -5,6 +5,7 @@ from rest_framework.views import APIView
 from django.http import HttpResponse
 
 from TestLaboratory.settings import PLAN_ROOT, HTTP_HEAD
+from apps.company.models import Company
 from apps.log.models import get_log, gen_log
 from apps.plan.models import TestPlan
 from apps.file.models import FileManager
@@ -53,6 +54,14 @@ class PlanView(APIView):
                 })
         executor, action, method = get_log(request)
         gen_log(action, "测试计划", plan.title, method, executor)
+
+        company_name = ''
+        try:
+            company = Company.objects.get(id=plan.company_id)
+            company_name = company.name
+        except:
+            pass
+
         return Response({
             'software_id': plan.software.id,
             'software_name': plan.software.name,
@@ -67,6 +76,7 @@ class PlanView(APIView):
             'tasks': tasks_info,
             'create_time': plan.create_time,
             'update_time': plan.update_time,
+            'company_name':company_name,
             'statements': [{'file_id': file_sid, 'name': file_name, 'url': HTTP_HEAD + file_url} for file_sid, file_name
                            , file_url in zip(plan_sids, file_names, file_urls)]
         })

+ 10 - 0
apps/software/views/softwarelistview.py

@@ -6,6 +6,7 @@ from rest_framework.views import APIView
 from django.http import HttpResponse, JsonResponse, Http404
 
 from TestLaboratory.settings import SOFTWARE_ROOT
+from apps.company.models import Company
 from apps.file.models import FileManager
 from apps.log.models import gen_log, get_log
 from apps.software.models import Software, create_software, get_software, Version
@@ -15,6 +16,7 @@ from apps.user.middleware.rolecontrol import RoleControl
 from utils.util_add_id import gen_next_id
 
 import logging
+
 logger = logging.getLogger('django')
 
 
@@ -127,7 +129,14 @@ class SoftwareListView(APIView):
             return Response([])
 
         info = []
+
         for software in software_all.all():
+            company_name = ''
+            try:
+                company = Company.objects.get(id=software.company_id)
+                company_name = company.name
+            except:
+                pass
             info.append({
                 'id': software.id,
                 'name': software.name,
@@ -135,5 +144,6 @@ class SoftwareListView(APIView):
                 'create_time': software.create_time,
                 'update_time': software.update_time,
                 'company_id': software.company_id,
+                'company_name': company_name,
             })
         return Response(info)

+ 9 - 0
apps/software/views/softwareview.py

@@ -5,6 +5,7 @@ from rest_framework.response import Response
 from rest_framework.views import APIView
 
 from TestLaboratory.settings import SOFTWARE_ROOT, HTTP_HEAD
+from apps.company.models import Company
 from apps.file.models import FileManager
 from apps.log.models import get_log, gen_log
 from apps.software.models import Software
@@ -48,9 +49,17 @@ class SoftwareView(APIView):
                 for plan in software.testplan_set.filter(delete=False):
                     task_num += len(plan.testtask_set.filter(delete=False))
 
+            company_name = ''
+            try:
+                company = Company.objects.get(id=software.company_id)
+                company_name = company.name
+            except:
+                pass
+
             software_info = {'name': software.name, 'type': software.type, 'create_time': software.create_time,
                              'update_time': software.update_time,
                              'versions': versions,
+                             'company_name':company_name,
                              'case_num': len(software.testcase_set.filter(delete=False)),
                              'task_num': task_num}
         except:

+ 9 - 0
apps/task/views/tasklistview.py

@@ -5,6 +5,7 @@ from rest_framework.views import APIView
 from django.http import HttpResponse
 
 from TestLaboratory.settings import TASK_ROOT, CASE_TEMPLATE_ROOT, HTTP_HEAD
+from apps.company.models import Company
 from apps.file.models import FileManager
 from apps.log.models import get_log, gen_log
 from apps.plan.models import TestPlan
@@ -128,6 +129,13 @@ class TaskListView(APIView):
 
         info = []
         for task in task_all.all():
+            company_name = ''
+            try:
+                company = Company.objects.get(id=task.company_id)
+                company_name = company.name
+            except:
+                pass
+
             fail_num = len(TestCase.objects.filter(task=task, state=2, delete=False))
             info.append({
                 'software_id': task.plan.software.id,
@@ -143,5 +151,6 @@ class TaskListView(APIView):
                 'fail_num': fail_num,
                 'create_time': task.create_time,
                 'update_time': task.update_time,
+                'company_name':company_name
             })
         return Response(info)

+ 9 - 0
apps/task/views/taskview.py

@@ -5,6 +5,7 @@ from rest_framework.views import APIView
 from django.http import HttpResponse
 
 from TestLaboratory.settings import PLAN_ROOT, SOFTWARE_ROOT, HTTP_HEAD, TASK_ROOT, CASE_TEMPLATE_ROOT, CASE_FILE_ROOT
+from apps.company.models import Company
 from apps.file.models import FileManager
 from apps.log.models import get_log, gen_log
 from apps.task.models import TestTask
@@ -92,6 +93,13 @@ class TaskView(APIView):
 
         executor, action, method = get_log(request)
         gen_log(action, "测试任务", task.title, method, executor)
+        company_name = ''
+        try:
+            company = Company.objects.get(id=task.company_id)
+            company_name = company.name
+        except:
+            pass
+
         return Response({
             'software_id': task.plan.software.id,
             'software_name': task.plan.software.name,
@@ -122,6 +130,7 @@ class TaskView(APIView):
                 'case_not_execute': task.case_not_execute,
                 'case_success': task.case_success,
                 'case_fail': task.case_fail,
+                'company_name':company_name
             },
             'create_time': task.create_time,
             'update_time': task.update_time,