先短暂去除限制,上传迁移脚本
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m51s
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m51s
This commit is contained in:
@@ -139,6 +139,7 @@ class AgentMapping:
|
||||
legacy_agent_id: str
|
||||
legacy_agent_name: str
|
||||
target_shop_code: Optional[str] # legacy_agent 模式下允许 null,表示该代理资产进平台库存
|
||||
no_downtime: bool = False # 迁移时免停机:有生效套餐的卡直接以 network_status=1 导入
|
||||
|
||||
|
||||
@dataclass
|
||||
@@ -166,6 +167,11 @@ class Mapping:
|
||||
return None
|
||||
return self.series.get(str(legacy_series_id).strip())
|
||||
|
||||
def is_no_downtime_agent(self, legacy_agent_id: str) -> bool:
|
||||
"""判断代理是否配置了免停机迁移。"""
|
||||
agent = self.agents.get(str(legacy_agent_id or "").strip())
|
||||
return agent.no_downtime if agent else False
|
||||
|
||||
def lookup_agent_shop_code(self, legacy_agent_id: str) -> Optional[str]:
|
||||
"""按 agent_id 查 target_shop_code,空字符串视为 None(进平台库存)。"""
|
||||
if not legacy_agent_id:
|
||||
@@ -260,6 +266,7 @@ def load_mapping(config_dir: Path) -> Mapping:
|
||||
legacy_agent_id=str(item["legacy_agent_id"]).strip(),
|
||||
legacy_agent_name=str(item.get("legacy_agent_name") or ""),
|
||||
target_shop_code=_opt_shop_code(item.get("target_shop_code"), "agents[].target_shop_code"),
|
||||
no_downtime=bool(item.get("no_downtime", False)),
|
||||
)
|
||||
m.agents[a.legacy_agent_id] = a
|
||||
|
||||
@@ -536,6 +543,7 @@ def _append_agents(lines: list[str], mapping: Mapping) -> None:
|
||||
f" - legacy_agent_id: {_yaml_scalar(item.legacy_agent_id)}",
|
||||
f" legacy_agent_name: {_yaml_scalar(item.legacy_agent_name)}",
|
||||
f" target_shop_code: {_yaml_scalar(item.target_shop_code)}",
|
||||
f" no_downtime: {_yaml_scalar(item.no_downtime)}",
|
||||
])
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user