|
@@ -1,13 +1,17 @@
|
|
#!/usr/bin/env python3
|
|
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
# -*- coding: utf-8 -*-
|
|
import json
|
|
import json
|
|
|
|
+import time
|
|
|
|
+
|
|
|
|
+from aioredis.commands import transaction
|
|
|
|
|
|
from Object.ResponseObject import ResponseObject
|
|
from Object.ResponseObject import ResponseObject
|
|
from Object.TokenObject import TokenObject
|
|
from Object.TokenObject import TokenObject
|
|
from django.views.generic.base import View
|
|
from django.views.generic.base import View
|
|
from Service.ModelService import ModelService
|
|
from Service.ModelService import ModelService
|
|
from Service.CommonService import CommonService
|
|
from Service.CommonService import CommonService
|
|
-from Model.models import Device_Info, UidSetModel
|
|
|
|
|
|
+from Model.models import Device_Info, UidSetModel, LogModel, UID_Bucket, Unused_Uid_Meal, Order_Model, StsCrdModel, \
|
|
|
|
+ VodHlsModel, ExperienceContextModel
|
|
import datetime
|
|
import datetime
|
|
from django.utils import timezone
|
|
from django.utils import timezone
|
|
|
|
|
|
@@ -41,6 +45,10 @@ class DeviceManagement(View):
|
|
return self.delete(request_dict, userID, response)
|
|
return self.delete(request_dict, userID, response)
|
|
elif operation == 'uidSetQuery':
|
|
elif operation == 'uidSetQuery':
|
|
return self.uidSetQuery(request_dict, userID, response)
|
|
return self.uidSetQuery(request_dict, userID, response)
|
|
|
|
+ elif operation == 'vod_reset':
|
|
|
|
+ return self.vod_reset(request, request_dict, response)
|
|
|
|
+ elif operation == 'primary_user_reset':
|
|
|
|
+ return self.primary_user_reset(request, request_dict, response)
|
|
return response.json(444, 'operation')
|
|
return response.json(444, 'operation')
|
|
|
|
|
|
|
|
|
|
@@ -104,3 +112,61 @@ class DeviceManagement(View):
|
|
uidset_json['count'] = count
|
|
uidset_json['count'] = count
|
|
return response.json(
|
|
return response.json(
|
|
0, {'list': uidset_json, 'total': count})
|
|
0, {'list': uidset_json, 'total': count})
|
|
|
|
+
|
|
|
|
+ # 重置设备云存
|
|
|
|
+ def vod_reset(self, request, request_dict, response):
|
|
|
|
+ uid = request_dict.get('uid', None)
|
|
|
|
+ if uid:
|
|
|
|
+ try:
|
|
|
|
+ # 记录操作日志
|
|
|
|
+ ip = CommonService.get_ip_address(request)
|
|
|
|
+ content = json.loads(json.dumps(request_dict))
|
|
|
|
+ log = {
|
|
|
|
+ 'ip': ip,
|
|
|
|
+ 'user_id': 1,
|
|
|
|
+ 'status': 200,
|
|
|
|
+ 'time': int(datetime.time.time()),
|
|
|
|
+ 'url': 'uidset/vod_reset',
|
|
|
|
+ 'content': json.dumps(content),
|
|
|
|
+ 'operation': '{}重置设备云存'.format(uid),
|
|
|
|
+ }
|
|
|
|
+ with transaction.atomic():
|
|
|
|
+ LogModel.objects.create(**log)
|
|
|
|
+ # 删除和更新设备云存相关数据
|
|
|
|
+ UID_Bucket.objects.filter(uid=uid).delete()
|
|
|
|
+ Unused_Uid_Meal.objects.filter(uid=uid).delete()
|
|
|
|
+ Order_Model.objects.filter(UID=uid).delete()
|
|
|
|
+ StsCrdModel.objects.filter(uid=uid).delete()
|
|
|
|
+ VodHlsModel.objects.filter(uid=uid).delete()
|
|
|
|
+ ExperienceContextModel.objects.filter(uid=uid).delete()
|
|
|
|
+ # UIDMainUser.objects.filter(UID=uid).delete()
|
|
|
|
+ Device_Info.objects.filter(UID=uid).update(vodPrimaryUserID='', vodPrimaryMaster='')
|
|
|
|
+ except Exception as e:
|
|
|
|
+ print(e)
|
|
|
|
+ return response.json(500, repr(e))
|
|
|
|
+ else:
|
|
|
|
+ return response.json(0)
|
|
|
|
+
|
|
|
|
+ # 重置设备主用户
|
|
|
|
+ def primary_user_reset(self, request, request_dict, response):
|
|
|
|
+ uid = request_dict.get('uid', None)
|
|
|
|
+ if not uid:
|
|
|
|
+ return response.json(404)
|
|
|
|
+ try:
|
|
|
|
+ # 记录操作日志
|
|
|
|
+ ip = CommonService.get_ip_address(request)
|
|
|
|
+ content = json.loads(json.dumps(request_dict))
|
|
|
|
+ log = {
|
|
|
|
+ 'ip': ip,
|
|
|
|
+ 'user_id': 1,
|
|
|
|
+ 'status': 200,
|
|
|
|
+ 'time': int(time.time()),
|
|
|
|
+ 'url': 'uidset/primary_user_reset',
|
|
|
|
+ 'content': json.dumps(content),
|
|
|
|
+ 'operation': '{}重置设备主用户'.format(uid),
|
|
|
|
+ }
|
|
|
|
+ LogModel.objects.create(**log)
|
|
|
|
+ Device_Info.objects.filter(UID=uid).update(vodPrimaryUserID='', vodPrimaryMaster='')
|
|
|
|
+ return response.json(0)
|
|
|
|
+ except Exception as e:
|
|
|
|
+ return response.json(500, repr(e))
|