83 lines
3.4 KiB
Python
83 lines
3.4 KiB
Python
|
|
"""
|
|||
|
|
本模块主要解决删除父级节点后,其他同级节点的key会重排,重排后子节点没有重排问题
|
|||
|
|
"""
|
|||
|
|
from apps.project.models import Round, Dut, Design, TestDemand
|
|||
|
|
|
|||
|
|
# 0.round删除后,重新排子节点
|
|||
|
|
def round_delete_sub_node_key(round: Round):
|
|||
|
|
for dut in round.rdField.all():
|
|||
|
|
remain_dut_key: str = dut.key.split('-')[-1]
|
|||
|
|
dut_key_list = [round.key, remain_dut_key]
|
|||
|
|
dut.key = '-'.join(dut_key_list)
|
|||
|
|
dut.save()
|
|||
|
|
for design in dut.rsField.all():
|
|||
|
|
# 取出design的key最后一位,该位是正确的
|
|||
|
|
remain_key: str = design.key.split('-')[-1]
|
|||
|
|
key_list = dut.key.split('-')
|
|||
|
|
key_list.append(remain_key)
|
|||
|
|
design.key = "-".join(key_list)
|
|||
|
|
design.save()
|
|||
|
|
for demand in design.dtField.all():
|
|||
|
|
remain_demand_key = demand.key.split('-')[-1]
|
|||
|
|
demand_key_list = design.key.split('-')
|
|||
|
|
demand_key_list.append(remain_demand_key)
|
|||
|
|
demand.key = '-'.join(demand_key_list)
|
|||
|
|
demand.save()
|
|||
|
|
for case in demand.tcField.all():
|
|||
|
|
remain_case_key = case.key.split('-')[-1]
|
|||
|
|
case_key_list = demand.key.split('-')
|
|||
|
|
case_key_list.append(remain_case_key)
|
|||
|
|
case.key = '-'.join(case_key_list)
|
|||
|
|
case.save()
|
|||
|
|
|
|||
|
|
# 1.dut删除后,重排同级子节点
|
|||
|
|
def dut_delete_sub_node_key(dut: Dut):
|
|||
|
|
"""
|
|||
|
|
传入一个删除同级dut后,遍历的dut对象,这里dut的key已经正确,依据该key遍历子节点修改key
|
|||
|
|
:param dut: dut对象
|
|||
|
|
:return: None
|
|||
|
|
"""
|
|||
|
|
for design in dut.rsField.all():
|
|||
|
|
# 取出design的key最后一位,该位是正确的
|
|||
|
|
remain_key: str = design.key.split('-')[-1]
|
|||
|
|
key_list = dut.key.split('-')
|
|||
|
|
key_list.append(remain_key)
|
|||
|
|
design.key = "-".join(key_list)
|
|||
|
|
design.save()
|
|||
|
|
for demand in design.dtField.all():
|
|||
|
|
remain_demand_key = demand.key.split('-')[-1]
|
|||
|
|
demand_key_list = design.key.split('-')
|
|||
|
|
demand_key_list.append(remain_demand_key)
|
|||
|
|
demand.key = '-'.join(demand_key_list)
|
|||
|
|
demand.save()
|
|||
|
|
for case in demand.tcField.all():
|
|||
|
|
remain_case_key = case.key.split('-')[-1]
|
|||
|
|
case_key_list = demand.key.split('-')
|
|||
|
|
case_key_list.append(remain_case_key)
|
|||
|
|
case.key = '-'.join(case_key_list)
|
|||
|
|
case.save()
|
|||
|
|
|
|||
|
|
# 2.design删除后,重排同级子节点
|
|||
|
|
def design_delete_sub_node_key(design: Design):
|
|||
|
|
for demand in design.dtField.all():
|
|||
|
|
remain_demand_key = demand.key.split('-')[-1]
|
|||
|
|
demand_key_list = design.key.split('-')
|
|||
|
|
demand_key_list.append(remain_demand_key)
|
|||
|
|
demand.key = '-'.join(demand_key_list)
|
|||
|
|
demand.save()
|
|||
|
|
for case in demand.tcField.all():
|
|||
|
|
remain_case_key = case.key.split('-')[-1]
|
|||
|
|
case_key_list = demand.key.split('-')
|
|||
|
|
case_key_list.append(remain_case_key)
|
|||
|
|
case.key = '-'.join(case_key_list)
|
|||
|
|
case.save()
|
|||
|
|
|
|||
|
|
# 3.demand删除后,重排case的key顺序
|
|||
|
|
def demand_delete_sub_node_key(demand: TestDemand):
|
|||
|
|
for case in demand.tcField.all():
|
|||
|
|
remain_case_key = case.key.split('-')[-1]
|
|||
|
|
case_key_list = demand.key.split('-')
|
|||
|
|
case_key_list.append(remain_case_key)
|
|||
|
|
case.key = '-'.join(case_key_list)
|
|||
|
|
case.save()
|