Skip to content

Commit 9324abb

Browse files
committed
fix root resource with its own parent resource update
1 parent 6a4dfe5 commit 9324abb

1 file changed

Lines changed: 13 additions & 8 deletions

File tree

unilabos/ros/nodes/base_device_node.py

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1015,10 +1015,15 @@ def _handle_update(
10151015
original_parent_resource = original_instance.parent
10161016
original_parent_resource_uuid = getattr(original_parent_resource, "unilabos_uuid", None)
10171017
target_parent_resource_uuid = tree.root_node.res_content.uuid_parent
1018-
not_same_parent = (
1019-
original_parent_resource_uuid != target_parent_resource_uuid
1020-
and original_parent_resource is not None
1021-
)
1018+
if target_parent_resource_uuid == self.uuid:
1019+
not_same_parent = False
1020+
original_parent_resource = None
1021+
original_parent_resource_uuid = self.uuid
1022+
else:
1023+
not_same_parent = (
1024+
original_parent_resource_uuid != target_parent_resource_uuid
1025+
and original_parent_resource is not None
1026+
)
10221027
old_name = original_instance.name
10231028
new_name = plr_resource.name
10241029
parent_appended = False
@@ -1055,13 +1060,13 @@ def _handle_update(
10551060
# 判断是否变更了resource_site,重新登记
10561061
target_site = original_instance.unilabos_extra.get("update_resource_site")
10571062
sites = (
1058-
original_instance.parent.sites
1059-
if original_instance.parent is not None and hasattr(original_instance.parent, "sites")
1063+
original_parent_resource.sites
1064+
if original_parent_resource is not None and hasattr(original_parent_resource, "sites")
10601065
else None
10611066
)
10621067
site_names = (
1063-
list(original_instance.parent._ordering.keys())
1064-
if original_instance.parent is not None and hasattr(original_instance.parent, "sites")
1068+
list(original_parent_resource._ordering.keys())
1069+
if original_parent_resource is not None and hasattr(original_parent_resource, "sites")
10651070
else []
10661071
)
10671072
if target_site is not None and sites is not None and site_names is not None:

0 commit comments

Comments
 (0)