Эх сурвалжийг харах

修复上传序列号存在问题2_删除订单相关数据

locky 4 жил өмнө
parent
commit
29392b65ea

+ 10 - 5
Controller/FileController.py

@@ -304,18 +304,23 @@ class UploadSerialNumberFileView(View):
             serial_number_list = list(map(self.cut_len, serial_number_list))    # 截掉序列号后三位
             print('serial_number_list', serial_number_list)
 
-            # 重置使用状态为已下载的序列号为已分配
+            # 重置使用状态为已下载(2)的序列号为已分配(1)
             serial_number_qs = SerialNumberModel.objects.filter(serial_number__in=serial_number_list, use_status=2)
             count = serial_number_qs.count()    # 需要重置的序列号个数
             if count:
                 with transaction.atomic():
-                    serial_number_qs.update(use_status=1)
-                    OrderSerialNumberModel.objects.filter(serial_number__in=serial_number_qs).delete()
+                    # 删除订单
+                    order_serial_number = OrderSerialNumberModel.objects.filter(serial_number__in=serial_number_qs)
+                    order = order_serial_number.values('order_id').distinct()   # 确定订单id
+                    OrderTaskModel.objects.filter(id__in=order).delete()    # 删除订单
+                    order_serial_number.delete()    # 删除订单与序列号关联表数据
+
+                    serial_number_qs.update(use_status=1)   # 重置序列号状态为已分配
                     operation = self.formatOperation('重置', int(count))
                     self.add_log(request, operation, tko)
             return response.json(0)
         except Exception as e:
-            # print(e)
+            # print('e:', e)
             return response.json(500, repr(e))
 
     def cut_len(self, serial_number):
@@ -342,7 +347,7 @@ class UploadSerialNumberFileView(View):
         LogModel.objects.create(**log)
 
     def formatOperation(self, operation, quantity):
-        operate = '{operation}{quantity}个{p2p}序列号'
+        operate = '{operation}{quantity}个序列号'
         return operate.format(operation=operation, quantity=quantity)
 
 class DownloadUIDFileView(View):