|
@@ -352,58 +352,54 @@ class SerialNumberView(View):
|
|
token = request_dict.get('token', None)
|
|
token = request_dict.get('token', None)
|
|
time_stamp = request_dict.get('time_stamp', None)
|
|
time_stamp = request_dict.get('time_stamp', None)
|
|
|
|
|
|
- if token and time_stamp and serial_number:
|
|
|
|
- token = int(CommonService.decode_data(token))
|
|
|
|
- time_stamp = int(time_stamp)
|
|
|
|
-
|
|
|
|
- now_time = int(time.time())
|
|
|
|
- distance = now_time - time_stamp
|
|
|
|
-
|
|
|
|
- if token != time_stamp or distance > 60000 or distance < -60000: # 为了全球化时间控制在一天内
|
|
|
|
- return response.json(404)
|
|
|
|
-
|
|
|
|
- serial = serial_number[0:6]
|
|
|
|
-
|
|
|
|
- uid_serial_qs = UIDCompanySerialModel.objects.filter(company_serial__serial_number=serial)
|
|
|
|
- if uid_serial_qs.exists():
|
|
|
|
- uid_serial = uid_serial_qs[0]
|
|
|
|
-
|
|
|
|
- iot = iotdeviceInfoModel.objects.filter(serial_number=serial)
|
|
|
|
- # iot = iotdeviceInfoModel.objects.filter(thing_name="Ansjer_Device_" + serial_number)
|
|
|
|
- if iot.exists():
|
|
|
|
- iot.delete()
|
|
|
|
-
|
|
|
|
- company_serial_qs = CompanySerialModel.objects.filter(id=uid_serial.company_serial.id)
|
|
|
|
- if company_serial_qs.exists():
|
|
|
|
- company_serial = company_serial_qs[0]
|
|
|
|
- company_serial.status = 1
|
|
|
|
- company_serial.save()
|
|
|
|
- mark = company_serial.company.mark
|
|
|
|
- dv_qs = Device_Info.objects.filter(serial_number=serial_number + mark)
|
|
|
|
- if dv_qs.exists():
|
|
|
|
- # a.主用户删除设备
|
|
|
|
- uid = dv_qs[0].UID
|
|
|
|
- dv_qs.delete()
|
|
|
|
- # 删除设备影子信息uid_set 外键关联删除设备推送配置信息 uid_push
|
|
|
|
- up_qs = UidPushModel.objects.filter(uid_set__uid=uid)
|
|
|
|
- DetectControllerView().do_delete_redis(uid)
|
|
|
|
- if up_qs.count() > 1:
|
|
|
|
- UidPushModel.objects.filter(uid_set__uid=uid).delete()
|
|
|
|
- else:
|
|
|
|
- up_qs.delete()
|
|
|
|
-
|
|
|
|
- uid_qs = UIDModel.objects.filter(uid=uid_serial.uid.uid)
|
|
|
|
- if uid_qs.exists():
|
|
|
|
- uid = uid_qs[0]
|
|
|
|
- uid.status = 0
|
|
|
|
- uid.save()
|
|
|
|
- uid_serial.delete()
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- else:
|
|
|
|
- return response.json(173)
|
|
|
|
- else:
|
|
|
|
|
|
+ if not all([token, time_stamp, serial_number]):
|
|
return response.json(444)
|
|
return response.json(444)
|
|
|
|
+ token = int(CommonService.decode_data(token))
|
|
|
|
+ time_stamp = int(time_stamp)
|
|
|
|
+
|
|
|
|
+ now_time = int(time.time())
|
|
|
|
+ distance = now_time - time_stamp
|
|
|
|
+
|
|
|
|
+ if token != time_stamp or distance > 60000 or distance < -60000: # 为了全球化时间控制在一天内
|
|
|
|
+ return response.json(404)
|
|
|
|
+
|
|
|
|
+ serial = serial_number[0:6]
|
|
|
|
+ uid_serial_qs = UIDCompanySerialModel.objects.filter(company_serial__serial_number=serial)
|
|
|
|
+ if not uid_serial_qs.exists():
|
|
|
|
+ return response.json(173)
|
|
|
|
+ uid_serial = uid_serial_qs[0]
|
|
|
|
+
|
|
|
|
+ iot = iotdeviceInfoModel.objects.filter(serial_number=serial)
|
|
|
|
+ # iot = iotdeviceInfoModel.objects.filter(thing_name="Ansjer_Device_" + serial_number)
|
|
|
|
+ if iot.exists():
|
|
|
|
+ iot.delete()
|
|
|
|
+
|
|
|
|
+ company_serial_qs = CompanySerialModel.objects.filter(id=uid_serial.company_serial.id)
|
|
|
|
+ if company_serial_qs.exists():
|
|
|
|
+ company_serial = company_serial_qs[0]
|
|
|
|
+ company_serial.status = 1
|
|
|
|
+ company_serial.save()
|
|
|
|
+ mark = company_serial.company.mark
|
|
|
|
+ dv_qs = Device_Info.objects.filter(serial_number=serial_number + mark)
|
|
|
|
+ if dv_qs.exists():
|
|
|
|
+ # a.主用户删除设备
|
|
|
|
+ uid = dv_qs[0].UID
|
|
|
|
+ dv_qs.delete()
|
|
|
|
+ # 删除设备影子信息uid_set 外键关联删除设备推送配置信息 uid_push
|
|
|
|
+ up_qs = UidPushModel.objects.filter(uid_set__uid=uid)
|
|
|
|
+ DetectControllerView().do_delete_redis(uid)
|
|
|
|
+ if up_qs.count() > 1:
|
|
|
|
+ UidPushModel.objects.filter(uid_set__uid=uid).delete()
|
|
|
|
+ else:
|
|
|
|
+ up_qs.delete()
|
|
|
|
+
|
|
|
|
+ uid_qs = UIDModel.objects.filter(uid=uid_serial.uid.uid)
|
|
|
|
+ if uid_qs.exists():
|
|
|
|
+ uid = uid_qs[0]
|
|
|
|
+ uid.status = 0
|
|
|
|
+ uid.save()
|
|
|
|
+ uid_serial.delete()
|
|
|
|
+ return response.json(0)
|
|
|
|
|
|
def do_update(self, userID, request_dict, response):
|
|
def do_update(self, userID, request_dict, response):
|
|
# perm = ModelService.check_perm_uid_manage(userID, 0)
|
|
# perm = ModelService.check_perm_uid_manage(userID, 0)
|