|
@@ -28,6 +28,7 @@ from Object.TokenObject import TokenObject
|
|
|
from Service.CommonService import CommonService
|
|
|
from Service.ModelService import ModelService
|
|
|
from Object.RedisObject import RedisObject
|
|
|
+import base64
|
|
|
'''
|
|
|
http://192.168.136.40:8077/uiduser/add?token=local&UID=z123asdfqwerzxcvqw12&NickName=xxoxox&View_Account=user&View_Password=password&ChannelIndex=8&is_ap=1&Type=5&NickName=1234zcxv
|
|
|
http://192.168.136.40:8077/uiduser/query?token=local&page=1&line=10&is_ap=1&NickName=1234zcxv&uid=zxcvasdfqwerzxcvqwer
|
|
@@ -362,3 +363,91 @@ class UidUserView(View):
|
|
|
else:
|
|
|
return response.json(404)
|
|
|
|
|
|
+
|
|
|
+# v3添加设备字段
|
|
|
+def v3addInterface(request):
|
|
|
+ request.encoding = 'utf-8'
|
|
|
+ response = ResponseObject()
|
|
|
+ if request.method == 'POST':
|
|
|
+ request_dict = request.POST
|
|
|
+ elif request.method == 'GET':
|
|
|
+ request_dict = request.GET
|
|
|
+ else:
|
|
|
+ return response.json(444)
|
|
|
+ token = request_dict.get('token', None)
|
|
|
+ UID = request_dict.get('UID', None)
|
|
|
+ NickName = request_dict.get('NickName', None)
|
|
|
+ View_Account = request_dict.get('View_Account', None)
|
|
|
+ View_Password = request_dict.get('View_Password', '')
|
|
|
+ Type = request_dict.get('Type', None)
|
|
|
+ ChannelIndex = request_dict.get('ChannelIndex', None)
|
|
|
+ is_ap = request_dict.get('is_ap', None)
|
|
|
+ try:
|
|
|
+ for i in range(1, 4):
|
|
|
+ if i == 1:
|
|
|
+ View_Password = base64.b64decode(View_Password)
|
|
|
+ View_Password = View_Password.decode('utf-8')
|
|
|
+ View_Password = View_Password[1:-1]
|
|
|
+ if i == 2:
|
|
|
+ View_Password = base64.b64decode(View_Password)
|
|
|
+ View_Password = View_Password.decode('utf-8')
|
|
|
+ View_Password = View_Password[2:-2]
|
|
|
+ if i == 3:
|
|
|
+ View_Password = base64.b64decode(View_Password)
|
|
|
+ View_Password = View_Password.decode('utf-8')
|
|
|
+ View_Password = View_Password[3:-3]
|
|
|
+ print(View_Password)
|
|
|
+ except Exception as e:
|
|
|
+ return response.json(111)
|
|
|
+ if all([UID, NickName, View_Account, Type, ChannelIndex]):
|
|
|
+ tko = TokenObject(token)
|
|
|
+ response.lang = tko.lang
|
|
|
+ if tko.code == 0:
|
|
|
+ userID = tko.userID
|
|
|
+ re_uid = re.compile(r'^[A-Za-z0-9]{20}$')
|
|
|
+ if re_uid.match(UID):
|
|
|
+ is_ap = int(is_ap)
|
|
|
+ is_exist = UidUserModel.objects.filter(UID=UID, userID_id=userID, is_ap=is_ap)
|
|
|
+ if is_exist:
|
|
|
+ return response.json(174)
|
|
|
+ else:
|
|
|
+ try:
|
|
|
+ pk = CommonService.getUserID(getUser=False)
|
|
|
+ create_data = {
|
|
|
+ 'id': pk, 'userID_id': userID, 'UID': UID,
|
|
|
+ 'NickName': NickName, 'View_Account': View_Account,
|
|
|
+ 'View_Password': View_Password, 'Type': Type, 'ChannelIndex': ChannelIndex
|
|
|
+ }
|
|
|
+ UidUserModel.objects.create(**create_data)
|
|
|
+ # 判断影子信息
|
|
|
+ nowTime = int(time.time())
|
|
|
+ us_qs = UidSetModel.objects.filter(uid=UID)
|
|
|
+ if not us_qs.exists():
|
|
|
+ uid_set_create_dict = {
|
|
|
+ 'uid': UID,
|
|
|
+ 'addTime': nowTime,
|
|
|
+ 'updTime': nowTime,
|
|
|
+ 'ip': CommonService.get_ip_address(request),
|
|
|
+ 'channel': ChannelIndex,
|
|
|
+ 'nickname': NickName}
|
|
|
+ UidSetModel.objects.create(**uid_set_create_dict)
|
|
|
+ except Exception as e:
|
|
|
+ return response.json(10, repr(e))
|
|
|
+ else:
|
|
|
+ uid_user_qs = UidUserModel.objects.filter(id=pk). \
|
|
|
+ values('id', 'userID', 'NickName', 'UID', 'View_Account', 'View_Password',
|
|
|
+ 'ChannelIndex', 'Type', 'isShare', 'primaryUserID', 'primaryMaster',
|
|
|
+ 'data_joined', 'version', 'isVod', 'isExist','is_ap')
|
|
|
+ uid_user_ql = CommonService.qs_to_list(uid_user_qs)
|
|
|
+ ubqs = UID_Bucket.objects.filter(uid=UID). \
|
|
|
+ values('bucket__content', 'status', 'channel', 'endTime', 'uid')
|
|
|
+ res = uid_user_ql[0]
|
|
|
+ res['vod'] = list(ubqs)
|
|
|
+ return response.json(0, res)
|
|
|
+ else:
|
|
|
+ return response.json(444, {'param': 'UID'})
|
|
|
+ else:
|
|
|
+ return response.json(tko.code)
|
|
|
+ else:
|
|
|
+ return response.json(444, {'param': 'UID,NickName,View_Account,View_Password,Type,ChannelIndex'})
|
|
|
+
|