Procházet zdrojové kódy

增加公司关联序列号2

chenshibin před 4 roky
rodič
revize
d3baf7c3a9
2 změnil soubory, kde provedl 30 přidání a 14 odebrání
  1. 13 5
      Controller/FileController.py
  2. 17 9
      Controller/SerialNumberController.py

+ 13 - 5
Controller/FileController.py

@@ -678,8 +678,16 @@ class DownloadSerialNumberFileView(View):
             us_qs = UserSerialNumberModel.objects.filter(user__id=user.id, serial_number__p2p=area,
                                                           serial_number__use_status=1).values('serial_number__serial_number')
 
-            cs_qs = CompanySerialModel.objects.filter(serial_number__in=us_qs, status=1).values('serial_number')
-            sn_qs = SerialNumberModel.objects.filter(serial_number__in=cs_qs)
+            sns = []
+            for us in us_qs:
+                sns.append(us['serial_number__serial_number'])
+
+            cs_qs = CompanySerialModel.objects.filter(serial_number__in=sns, status=1).values('serial_number')
+            sns = []
+            for cs in cs_qs:
+                sns.append(cs['serial_number'])
+
+            sn_qs = SerialNumberModel.objects.filter(serial_number__in=sns)
             count = result['num']
             if count < quantity:
                 return response.json(444, '序列号不足')
@@ -724,10 +732,10 @@ class DownloadSerialNumberFileView(View):
         for i in range(len(sn_qs)):
             # print(item)
             item = sn_qs[i]
-            serial_number = item.serial_number + '11A'
-            sheet1.write(num, 0, serial_number)
+            serial_number = item.serial_number
+            sheet1.write(num, 0, serial_number + '11A')
             num += 1
-            content += serial_number.strip()
+            content += serial_number.strip() + '11A'
             content += '\n'
 
             serialNumberModel = SerialNumberModel(

+ 17 - 9
Controller/SerialNumberController.py

@@ -56,16 +56,16 @@ class SerialNumberView(View):
             return response.json(9)
 
         user = user_qs[0]
-        chenyunsuper = CompanySerialModel.objects.filter(serial_number__in=SerialNumberModel.objects.filter(p2p=1), status=1).count()
-        tutksuper = CompanySerialModel.objects.filter(serial_number__in=SerialNumberModel.objects.filter(p2p=2), status=1).count()
+        chenyunsuper = SerialNumberModel.objects.filter(p2p=1).count()
+        tutksuper = SerialNumberModel.objects.filter(p2p=2).count()
 
-        result = UserSerialNumberModel.objects.filter(user__id=user.id, serial_number__p2p= 1, serial_number__use_status=1).aggregate(num=Count('serial_number__use_status'))
+        result = UserSerialNumberModel.objects.filter(user__id=user.id, serial_number__p2p=1, serial_number__use_status=1).aggregate(num=Count('serial_number__use_status'))
         chenyundev = result['num']
-        result2 = UserSerialNumberModel.objects.filter(user__id=user.id, serial_number__p2p=2,serial_number__use_status=1).aggregate(num=Count('serial_number__use_status'))
-        tutkdev  = result2['num']
+        result2 = UserSerialNumberModel.objects.filter(user__id=user.id, serial_number__p2p=2, serial_number__use_status=1).aggregate(num=Count('serial_number__use_status'))
+        tutkdev = result2['num']
 
-        chenyun = CompanySerialModel.objects.filter(serial_number__in=SerialNumberModel.objects.filter(use_status=1 , p2p=1), status=1).count()
-        tutk = CompanySerialModel.objects.filter(serial_number__in=SerialNumberModel.objects.filter(use_status=1 , p2p=2), status=1).count()
+        chenyun = SerialNumberModel.objects.filter(use_status=1, p2p=1).count()
+        tutk = SerialNumberModel.objects.filter(use_status=1, p2p=2).count()
         res_data = {'code': 0, 'chenyun': chenyun, 'tutk': tutk, 'chenyunsuper': chenyunsuper, 'tutksuper': tutksuper, 'chenyundev': chenyundev, 'tutkdev': tutkdev}
         return response.json(0, {'data': res_data})
 
@@ -121,9 +121,17 @@ class SerialNumberView(View):
 
         # 取出对应区域可用的UID分配给allot_user
         sn_qs = SerialNumberModel.objects.filter(p2p=area, use_status=0)[0:quantity]
-        cs_qs = CompanySerialModel.objects.filter(serial_number__in=sn_qs).values('serial_number')
+        sns = []
+        for sn in sn_qs:
+            sns.append(sn.serial_number)
+
+        cs_qs = CompanySerialModel.objects.filter(serial_number__in=sns, status=1)
+
+        sns = []
+        for cs in cs_qs:
+            sns.append(cs.serial_number)
+        sn_qs = SerialNumberModel.objects.filter(serial_number__in=sns)
 
-        sn_qs = SerialNumberModel.objects.filter(serial_number__in=cs_qs)
         count = sn_qs.count()
         if count < quantity:
             return response.json(444, '序列号不足')