This commit is contained in:
王思川 2024-06-05 23:29:00 +08:00
parent 20a3f98b32
commit 07267bc151
3 changed files with 19 additions and 14 deletions

View File

@ -182,25 +182,30 @@ def get_user_existing_permissions(request, user_id):
if key not in processed_permissions:
processed_permissions[key] = {
'id': perm['id'],
'resource_group': perm['resource_group'],
'resource': perm['resource'],
'add': False,
'remove': False,
'change': False,
'view': False
'add': {'id': None, 'has_permission': False},
'remove': {'id': None, 'has_permission': False},
'change': {'id': None, 'has_permission': False},
'view': {'id': None, 'has_permission': False}
}
if perm['permission'] == '新增':
processed_permissions[key]['add'] = perm['codename'] in user_permissions
processed_permissions[key]['add'] = {'id': perm['id'], 'has_permission': perm['codename'] in user_permissions}
elif perm['permission'] == '删除':
processed_permissions[key]['remove'] = perm['codename'] in user_permissions
processed_permissions[key]['remove'] = {'id': perm['id'], 'has_permission': perm['codename'] in user_permissions}
elif perm['permission'] == '修改':
processed_permissions[key]['change'] = perm['codename'] in user_permissions
processed_permissions[key]['change'] = {'id': perm['id'], 'has_permission': perm['codename'] in user_permissions}
elif perm['permission'] == '查看':
processed_permissions[key]['view'] = perm['codename'] in user_permissions
processed_permissions[key]['view'] = {'id': perm['id'], 'has_permission': perm['codename'] in user_permissions}
return JsonResponse({'permissions': list(processed_permissions.values()), 'user_id': user_id})
# 将processed_permissions从字典转换为列表
permissions_list = []
for key, perms in processed_permissions.items():
perms['resource_group'], perms['resource'] = key
permissions_list.append(perms)
return JsonResponse({'permissions': permissions_list, 'user_id': user_id})
@login_required

View File

@ -73,10 +73,10 @@ $(document).ready(function() {
<tr>
<td>${perm.resource_group}</td>
<td>${perm.resource}</td>
<td><input type="checkbox" name="add_permission" data-id="${perm.id}" ${perm.add ? 'checked' : ''}></td>
<td><input type="checkbox" name="delete_permission" data-id="${perm.id}" ${perm.remove ? 'checked' : ''}></td>
<td><input type="checkbox" name="edit_permission" data-id="${perm.id}" ${perm.change ? 'checked' : ''}></td>
<td><input type="checkbox" name="view_permission" data-id="${perm.id}" ${perm.view ? 'checked' : ''}></td>
<td><input type="checkbox" name="add_permission" data-id="${perm.add.id}" ${perm.add.has_permission ? 'checked' : ''}></td>
<td><input type="checkbox" name="delete_permission" data-id="${perm.remove.id}" ${perm.remove.has_permission ? 'checked' : ''}></td>
<td><input type="checkbox" name="edit_permission" data-id="${perm.change.id}" ${perm.change.has_permission ? 'checked' : ''}></td>
<td><input type="checkbox" name="view_permission" data-id="${perm.view.id}" ${perm.view.has_permission ? 'checked' : ''}></td>
</tr>
`);
});