[Update] 解决授权资产显示禁用资产的问题 (#2975)

* [Update] 解决授权资产显示禁用资产的问题

* [Bugfix] 解决资产更新页面取消激活失败的问题

* [Bugfix] 解决资产详情页面禁用资产时会清除协议的问题

* [Bugfix] 解决创建/更新管理用户、系统用户提交密钥错误时报错的问题
This commit is contained in:
BaiJiangJie
2019-07-17 12:10:14 +08:00
committed by GitHub
parent 1c7a09c9e3
commit 3451c2b418
4 changed files with 8 additions and 10 deletions

View File

@@ -499,7 +499,7 @@ class AssetPermissionUtil(AssetPermissionCacheMixin):
if pattern:
assets_ids = Asset.objects.filter(
nodes__key__regex=pattern
).values_list("id", flat=True).distinct()
).valid().values_list("id", flat=True).distinct()
else:
assets_ids = []
self.tree.add_assets_without_system_users(assets_ids)
@@ -523,8 +523,8 @@ class AssetPermissionUtil(AssetPermissionCacheMixin):
assets_ids = defaultdict(lambda: defaultdict(int))
for perm in self.permissions:
actions = [perm.actions]
_assets_ids = [a.id for a in perm.assets.all()]
system_users_ids = [s.id for s in perm.system_users.all()]
_assets_ids = perm.assets.valid().values_list("id", flat=True)
system_users_ids = perm.system_users.values_list("id", flat=True)
iterable = itertools.product(_assets_ids, system_users_ids, actions)
for asset_id, sys_id, action in iterable:
assets_ids[asset_id][sys_id] |= action