ソースを参照

software,plan 添加公司id字段

bigcat 2 年 前
コミット
385bc82ef4

+ 1 - 0
apps/plan/models.py

@@ -19,6 +19,7 @@ class TestPlan(models.Model):
     type = models.CharField(max_length=20,verbose_name='测试任务类型')
     creator = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, verbose_name='测试计划执行者')
     state = models.IntegerField(verbose_name='测试计划执行状态')
+    company_id = models.IntegerField(verbose_name='公司id')
     description = models.TextField(verbose_name='测试计划描述')
     statement_file = models.TextField(verbose_name='说明文档id路径')
     create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')

+ 5 - 1
apps/plan/views/planlistview.py

@@ -34,6 +34,7 @@ class PlanListView(APIView):
         files = request.FILES.getlist('files')
         creator_id = request.POST.get('creator')
         type = request.POST.get('type')
+        company_id = request.POST.get('company_id')
         # step1:判断所属软件及版本是否存在
         software = Software.objects.filter(id=software_id, delete=False)
         if not software:
@@ -99,7 +100,7 @@ class PlanListView(APIView):
         try:
             plan = TestPlan.objects.create(id=id_plan, title=title, description=description, state='0',
                                            creator=creator, software=software, version=software_version.number,
-                                           statement_file=fids, type=type,
+                                           statement_file=fids, type=type, company_id=company_id,
                                            create_time=create_time, update_time=update_time)
         except:
             logger.error("测试计划写入数据库失败")
@@ -130,6 +131,7 @@ class PlanListView(APIView):
         software_id = request.GET.get('software_id')
         state = request.GET.get('state')
         creator_id = request.GET.get('creator_id')
+        company_id = request.GET.get('company_id')
         sort = request.GET.get('sort')
 
         plan_all = TestPlan.objects.order_by('-create_time')
@@ -141,6 +143,8 @@ class PlanListView(APIView):
             plan_all = plan_all.filter(state=state)
         if creator_id:
             plan_all = plan_all.filter(creator__id__contains=creator_id)
+        if company_id:
+            plan_all = plan_all.filter(company__id__contains=company_id)
         """
         sort=update_time, -update_time, create_time, -create_time, title, -title, state
         """

+ 1 - 0
apps/software/models.py

@@ -14,6 +14,7 @@ class Software(models.Model):
                           default='TestLaboratory_V1_Software_1')
     type = models.CharField(max_length=20, verbose_name='被测试软件类型')
     creator_id = models.CharField(max_length=128, verbose_name='创建者id')
+    company_id = models.IntegerField(verbose_name='公司id')
     report_file = models.TextField(null=True, verbose_name='测试报告id文件')
     create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
     update_time = models.DateTimeField(auto_now=True, verbose_name='修改时间')

+ 7 - 1
apps/software/views/softwarelistview.py

@@ -27,6 +27,7 @@ class SoftwareListView(APIView):
         software_type = request.POST.get('type')
         version_num = request.POST.get('version')
         creator_id = request.POST.get('creator_id')
+        company_id = request.POST.get('company_id')
         file = request.FILES.get('file')
         if not file:
             logger.error("软件上传失败")
@@ -70,7 +71,7 @@ class SoftwareListView(APIView):
                                                   create_time=create_time, update_time=update_time)
 
             # step3:数据库新增软件字段
-            software = Software.objects.create(name=name, id=id_, type=software_type,
+            software = Software.objects.create(name=name, id=id_, type=software_type, company_id=company_id,
                                                creator_id=creator_id,
                                                create_time=create_time,
                                                update_time=update_time)
@@ -91,6 +92,7 @@ class SoftwareListView(APIView):
             'type': software.type,
             'create_time': software.create_time,
             'update_time': software.update_time,
+            'company_id': software.company_id,
         })
 
     # software list
@@ -101,12 +103,15 @@ class SoftwareListView(APIView):
         software_type = request.GET.get('type')
         sort = request.GET.get('sort')
         creator_id = request.GET.get('creator_id')
+        company_id = request.GET.get('company_id')
 
         software_all = Software.objects.order_by('-create_time')
         if name:
             software_all = software_all.filter(name__contains=name)
         if software_type:
             software_all = software_all.filter(type__contains=software_type)
+        if company_id:
+            software_all = software_all.filter(company__id__contains=company_id)
         """
         sort=update_time, -update_time, create_time, -create_time, name, -name, type, -type
         """
@@ -126,5 +131,6 @@ class SoftwareListView(APIView):
                 'type': software.type,
                 'create_time': software.create_time,
                 'update_time': software.update_time,
+                'company_id': software.company_id,
             })
         return Response(info)