mirror of https://github.com/jumpserver/jumpserver
				
				
				
			fix: Asset perm calculate failed
							parent
							
								
									6d81fa7fdf
								
							
						
					
					
						commit
						b7a6454d65
					
				| 
						 | 
				
			
			@ -370,6 +370,7 @@ class NodeAllAssetsMappingMixin:
 | 
			
		|||
 | 
			
		||||
            nodeid_assetsid_mapping = defaultdict(set)
 | 
			
		||||
            for node_id, asset_id in nodes_asset_ids:
 | 
			
		||||
                node_id, asset_id = str(uuid.UUID(node_id)), str(uuid.UUID(asset_id))
 | 
			
		||||
                nodeid_assetsid_mapping[node_id].add(asset_id)
 | 
			
		||||
 | 
			
		||||
        t2 = time.time()
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -435,10 +435,10 @@
 | 
			
		|||
    "Endswith": "Ending with...",
 | 
			
		||||
    "EnsureThisValueIsGreaterThanOrEqualTo1": "Please make sure this number is greater than or equal to 1",
 | 
			
		||||
    "EnterForSearch": "Press enter to search",
 | 
			
		||||
    "EnterRunUser": "Enter running account",
 | 
			
		||||
    "EnterRunningPath": "Enter running path",
 | 
			
		||||
    "EnterRunUser": "Running account",
 | 
			
		||||
    "EnterRunningPath": "Running path",
 | 
			
		||||
    "EnterToContinue": "Press enter to continue",
 | 
			
		||||
    "EnterUploadPath": "Enter upload path",
 | 
			
		||||
    "EnterUploadPath": "Upload path",
 | 
			
		||||
    "Enterprise": "Enterprise",
 | 
			
		||||
    "EnterpriseEdition": "Enterprise edition",
 | 
			
		||||
    "Equal": "Equals",
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,6 @@
 | 
			
		|||
import time
 | 
			
		||||
from collections import defaultdict
 | 
			
		||||
from uuid import UUID
 | 
			
		||||
 | 
			
		||||
from django.conf import settings
 | 
			
		||||
from django.core.cache import cache
 | 
			
		||||
| 
						 | 
				
			
			@ -8,7 +9,8 @@ from django.db import transaction
 | 
			
		|||
from assets.models import Asset
 | 
			
		||||
from assets.utils import NodeAssetsUtil
 | 
			
		||||
from common.db.models import output_as_string
 | 
			
		||||
from common.decorators import on_transaction_commit, merge_delay_run
 | 
			
		||||
from common.decorators import merge_delay_run
 | 
			
		||||
from common.decorators import on_transaction_commit
 | 
			
		||||
from common.utils import get_logger
 | 
			
		||||
from common.utils.common import lazyproperty, timeit
 | 
			
		||||
from orgs.models import Organization
 | 
			
		||||
| 
						 | 
				
			
			@ -272,13 +274,11 @@ class UserPermTreeBuildUtil(object):
 | 
			
		|||
        for key in self.perm_node_keys_for_granted:
 | 
			
		||||
            asset_ids = PermNode.get_all_asset_ids_by_node_key(org_id, key)
 | 
			
		||||
            nodekey_assetid_mapper[key].update(asset_ids)
 | 
			
		||||
 | 
			
		||||
        for asset_id, node_id in self.direct_asset_id_node_id_pairs:
 | 
			
		||||
            node_key = self.perm_nodes_id_key_mapper.get(str(node_id))
 | 
			
		||||
            if not node_key:
 | 
			
		||||
                continue
 | 
			
		||||
            nodekey_assetid_mapper[node_key].add(asset_id)
 | 
			
		||||
 | 
			
		||||
        util = NodeAssetsUtil(self.perm_nodes, nodekey_assetid_mapper)
 | 
			
		||||
        util.generate()
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -400,7 +400,10 @@ class UserPermTreeBuildUtil(object):
 | 
			
		|||
            str_asset_id=output_as_string('asset_id'),
 | 
			
		||||
            str_node_id=output_as_string('node_id')
 | 
			
		||||
        ).values_list('str_asset_id', 'str_node_id')
 | 
			
		||||
        asset_node_pairs = list(asset_node_pairs)
 | 
			
		||||
        asset_node_pairs = [
 | 
			
		||||
            (str(UUID(asset_id)), str(UUID(node_id)))
 | 
			
		||||
            for asset_id, node_id in asset_node_pairs
 | 
			
		||||
        ]
 | 
			
		||||
        return asset_node_pairs
 | 
			
		||||
 | 
			
		||||
    @lazyproperty
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue