MergeSteps plugin updated and corrected

parent 43cd2083
...@@ -17,9 +17,10 @@ class MergeSteps(plugin.InputPreparationPlugin): ...@@ -17,9 +17,10 @@ class MergeSteps(plugin.InputPreparationPlugin):
""" merge the steps that constitute one single technology step """ merge the steps that constitute one single technology step
""" """
orders = data["input"]["BOM"]['orders'] orders = data["input"]["BOM"]['orders']
# for all the orders
for order in orders: for order in orders:
orderComponents = order.get("componentsList", []) orderComponents = order.get("componentsList", [])
# for each component of the order
for component in orderComponents: for component in orderComponents:
route = component.get("route", []) route = component.get("route", [])
updatedRoute = [] updatedRoute = []
...@@ -28,18 +29,20 @@ class MergeSteps(plugin.InputPreparationPlugin): ...@@ -28,18 +29,20 @@ class MergeSteps(plugin.InputPreparationPlugin):
for index, step in enumerate(route): for index, step in enumerate(route):
technology = step["technology"] technology = step["technology"]
technology = technology.split("-")[0] technology = technology.split("-")[0]
# loadType is always manual for this pilot # XXX loadType is always manual for this pilot
step["operationType"] = {"load" : "Manual"} step["operationType"] = {"load" : "Manual"}
step["operator"] = {}
# processingType + operator for processing # processingType + operator for processing
if step["operator"] == "Automatic" if step["operator"] == "Automatic":
step["operationType"]["processing"] = "Automatic" step["operationType"]["processing"] = "Automatic"
step.pop("operator")
else: else:
step["operationType"]["processing"] = "Manual" step["operationType"]["processing"] = "Manual"
tempOperator = copy.deepcopy(step["operator"]) tempOperator = copy.deepcopy(step["operator"])
step["operator"]["processing"] = [tempOperator], step["operator"] = {}
step["operator"]["load"] = [tempOperator]} step["operator"]["processing"] = [tempOperator]
step["operator"]["load"] = [tempOperator]
# find out if there is there is any previous step to merge with # find out if there is there is any previous step to merge with
if technologySequence:
if technology == technologySequence[-1]: if technology == technologySequence[-1]:
if len(route[index-1]["technology"].split("-")): if len(route[index-1]["technology"].split("-")):
if route[index-1]["technology"].split("-")[-1]=="SET": if route[index-1]["technology"].split("-")[-1]=="SET":
...@@ -53,20 +56,27 @@ class MergeSteps(plugin.InputPreparationPlugin): ...@@ -53,20 +56,27 @@ class MergeSteps(plugin.InputPreparationPlugin):
technologySequence.pop(-1) technologySequence.pop(-1)
stepToMerge = route[idxToMerge] stepToMerge = route[idxToMerge]
# parts needed # parts needed
step["parts_needed"] = route[idxToMerge]["parts_needed"] step["parts_needed"] = stepToMerge["parts_needed"]
# technology # technology
step["technology"] = technology step["technology"] = technology
# setupTime # setupTime
if route[idxToMerge]["processingTime"]: if stepToMerge["processingTime"]:
step["setupTime"] = route[idxToMerge]["processingTime"] step["setupTime"] = stepToMerge["processingTime"]
# setupType + operator for setup # setupType + operator for setup
if route[idxToMerge]["operator"] == "Automatic" if stepToMerge["operator"] == "Automatic"
step["operationType"]["setup"] = "Automatic" step["operationType"]["setup"] = "Automatic"
else: else:
step["operationType"]["setup"] = "Manual" step["operationType"]["setup"] = "Manual"
step["operator"]["setup"] = route[idxToMerge]["operator"] try:
step["operator"]["load"] = route[idxToMerge]["operator"] tempOperator = copy.deepcopy(step["operator"])
technologySequence.append(techonology) except:
tempOperator = None
step["operator"] = {}
step["operator"]["setup"] = route[idxToMerge]["operator"]["processing"]
step["operator"]["load"] = route[idxToMerge]["operator"]["load"]
if tempOperator:
step["operator"]["processing"] = tempOperator["processing"]
technologySequence.append(technology)
# append the (updated) step to the temporary route # append the (updated) step to the temporary route
updatedRoute.append(step) updatedRoute.append(step)
# update the route of the step # update the route of the step
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment