MCPcopy Create free account
hub / github.com/Tong89/smartNode / scenarios_save

Function scenarios_save

backend/api.py:1046–1067  ·  view source on GitHub ↗

将当前仿真资源配置与运行统计快照保存到场景库(按名称 upsert)。 请求体(JSON):: {"name": "场景名称"} # name 必填,最长 128 字符 响应返回完整场景记录。

()

Source from the content-addressed store, hash-verified

1044@require_role('admin')
1045@rate_limit(20, 60)
1046def scenarios_save():
1047 """将当前仿真资源配置与运行统计快照保存到场景库(按名称 upsert)。
1048
1049 请求体(JSON)::
1050
1051 {"name": "场景名称"} # name 必填,最长 128 字符
1052
1053 响应返回完整场景记录。
1054 """
1055 body = request.get_json(silent=True) or {}
1056 name = str(body.get("name", "")).strip()
1057 if not name:
1058 return error_response("VALIDATION_ERROR", "缺少必填字段 'name'")
1059 try:
1060 stats = simulation_engine.get_stats()
1061 record = _scenario_store.save_scenario(name, simulation_engine, stats)
1062 except ValueError as ve:
1063 return error_response("VALIDATION_ERROR", str(ve))
1064 except Exception:
1065 logger.exception("场景库保存失败")
1066 return error_response("INTERNAL_ERROR")
1067 return ok(record)
1068
1069
1070@app.route('/api/scenarios/<path:name>', methods=['DELETE'])

Callers

nothing calls this directly

Calls 5

error_responseFunction · 0.90
okFunction · 0.90
get_statsMethod · 0.80
save_scenarioMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected