|
@@ -55,8 +55,10 @@ class UserDeviceShareView(View):
|
|
try:
|
|
try:
|
|
uid = request_dict.get('uid', None)
|
|
uid = request_dict.get('uid', None)
|
|
user_id = request_dict.get('userId', None)
|
|
user_id = request_dict.get('userId', None)
|
|
- if not all([user_id, uid]):
|
|
|
|
- return response(444, 'uid and userId is required')
|
|
|
|
|
|
+ channel_count = request_dict.get('channelCount', None)
|
|
|
|
+ if not all([user_id, uid, channel_count]):
|
|
|
|
+ return response(444, 'uid, userId and channelCount is required')
|
|
|
|
+ channel_list = list(range(1, int(channel_count)+1))
|
|
user_permission_qs = DeviceChannelUserSet.objects.filter(user_id=user_id, uid=uid) \
|
|
user_permission_qs = DeviceChannelUserSet.objects.filter(user_id=user_id, uid=uid) \
|
|
.values('id', 'channels')
|
|
.values('id', 'channels')
|
|
if not user_permission_qs.exists():
|
|
if not user_permission_qs.exists():
|
|
@@ -66,15 +68,23 @@ class UserDeviceShareView(View):
|
|
.values('permission_id', 'channel_user_id')
|
|
.values('permission_id', 'channel_user_id')
|
|
if not channel_permission_qs.exists():
|
|
if not channel_permission_qs.exists():
|
|
return response.json(0, {})
|
|
return response.json(0, {})
|
|
- data = {'channels': [int(val) for val in user_permission_qs[0]['channels'].split(',')]}
|
|
|
|
|
|
+ share_channel_list = user_permission_qs[0]['channels'].split(',')
|
|
|
|
+ c_list = []
|
|
|
|
+ for channel in channel_list:
|
|
|
|
+ is_select = 1 if str(channel) in share_channel_list else 0
|
|
|
|
+ c_list.append({'channelIndex': channel, 'isSelect': is_select})
|
|
p_list = []
|
|
p_list = []
|
|
- for item in channel_permission_qs:
|
|
|
|
- permission_qs = DeviceSharePermission.objects.filter(id=item['permission_id']) \
|
|
|
|
- .values('code')
|
|
|
|
- if not permission_qs.exists():
|
|
|
|
- continue
|
|
|
|
- p_list.append({'permissionId': item['permission_id'], 'code': permission_qs[0]['code']})
|
|
|
|
- data['permissions'] = p_list
|
|
|
|
|
|
+ permission_qs = DeviceSharePermission.objects.all()
|
|
|
|
+ permission_list = list(range(1, permission_qs.count()+1))
|
|
|
|
+ share_permission_list = [item['permission_id'] for item in channel_permission_qs]
|
|
|
|
+ for permission_id in permission_list:
|
|
|
|
+ is_select = 0
|
|
|
|
+ if permission_id in share_permission_list:
|
|
|
|
+ is_select = 1
|
|
|
|
+ permission_qs = DeviceSharePermission.objects.filter(id=permission_id).values('code')
|
|
|
|
+ permission_name = permission_qs[0]['code']
|
|
|
|
+ p_list.append({'permissionId': permission_id, 'code': permission_name, 'isSelect': is_select})
|
|
|
|
+ data = {'channels': c_list, 'permissions': p_list}
|
|
return response.json(0, data)
|
|
return response.json(0, data)
|
|
except Exception as e:
|
|
except Exception as e:
|
|
LOGGER.info('异常详情,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
LOGGER.info('异常详情,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|