feat: AI 测试对话框增加动态参数表单和参数定义编辑

- 测试对话框支持从 defaultInputs 解析参数并渲染动态表单
- 支持 _meta 格式的参数定义(label/type/required/value)
- 接口工作流编辑页面增加参数定义区域(增删改)
- 后端 AiTemplateRenderer.mergeInputs 兼容 _meta 格式
- JSON 编辑区折叠为「高级编辑」模式

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-05-23 15:01:21 +08:00
parent 5888816646
commit e06b22ad69
3 changed files with 170 additions and 20 deletions
@@ -15,7 +15,15 @@ public class AiTemplateRenderer {
Map<String, Object> inputs = new HashMap<>();
if (StringUtils.hasText(defaultInputs)) {
try {
inputs.putAll(JSON.parseObject(defaultInputs));
JSONObject parsed = JSON.parseObject(defaultInputs);
parsed.forEach((key, value) -> {
// 兼容 _meta 格式:{ "_meta": {...}, "value": "..." }
if (value instanceof JSONObject && ((JSONObject) value).containsKey("_meta")) {
inputs.put(key, ((JSONObject) value).get("value"));
} else {
inputs.put(key, value);
}
});
} catch (Exception ignored) {
inputs.put("default_input", defaultInputs);
}