mirror of
https://github.com/dptech-corp/Uni-Lab-OS.git
synced 2025-12-17 13:01:12 +00:00
fix itemized_carrier.unassign_child_resource
This commit is contained in:
@@ -639,6 +639,8 @@ def resource_bioyond_to_plr(bioyond_materials: list[dict], type_mapping: Dict[st
|
|||||||
|
|
||||||
# 处理子物料(detail)
|
# 处理子物料(detail)
|
||||||
if material.get("detail") and len(material["detail"]) > 0:
|
if material.get("detail") and len(material["detail"]) > 0:
|
||||||
|
for bottle in reversed(plr_material.children):
|
||||||
|
plr_material.unassign_child_resource(bottle)
|
||||||
child_ids = []
|
child_ids = []
|
||||||
for detail in material["detail"]:
|
for detail in material["detail"]:
|
||||||
number = (
|
number = (
|
||||||
@@ -646,12 +648,10 @@ def resource_bioyond_to_plr(bioyond_materials: list[dict], type_mapping: Dict[st
|
|||||||
+ (detail.get("y", 0) - 1) * plr_material.num_items_y
|
+ (detail.get("y", 0) - 1) * plr_material.num_items_y
|
||||||
+ (detail.get("x", 0) - 1)
|
+ (detail.get("x", 0) - 1)
|
||||||
)
|
)
|
||||||
bottle = plr_material[number]
|
typeName = detail.get("typeName", detail.get("name", ""))
|
||||||
if detail["typeName"] in type_mapping:
|
if typeName in type_mapping:
|
||||||
# plr_material.unassign_child_resource(bottle)
|
bottle = plr_material[number] = initialize_resource(
|
||||||
plr_material.sites[number] = None
|
{"name": f'{detail["name"]}_{number}', "class": type_mapping[typeName][0]}, resource_type=ResourcePLR
|
||||||
plr_material[number] = initialize_resource(
|
|
||||||
{"name": f'{detail["name"]}_{number}', "class": type_mapping[detail["typeName"]][0]}, resource_type=ResourcePLR
|
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
bottle.tracker.liquids = [
|
bottle.tracker.liquids = [
|
||||||
|
|||||||
@@ -164,8 +164,9 @@ class ItemizedCarrier(ResourcePLR):
|
|||||||
break
|
break
|
||||||
if not found:
|
if not found:
|
||||||
raise ValueError(f"Resource {resource} is not assigned to this carrier")
|
raise ValueError(f"Resource {resource} is not assigned to this carrier")
|
||||||
if hasattr(resource, "unassign"):
|
super().unassign_child_resource(resource)
|
||||||
resource.unassign()
|
# if hasattr(resource, "unassign"):
|
||||||
|
# resource.unassign()
|
||||||
|
|
||||||
def get_child_identifier(self, child: ResourcePLR):
|
def get_child_identifier(self, child: ResourcePLR):
|
||||||
"""Get the identifier information for a given child resource.
|
"""Get the identifier information for a given child resource.
|
||||||
|
|||||||
Reference in New Issue
Block a user