pricing/wwwroot/test_pricing_program.dspy
Hermes Agent edee247a11 fix: test_pricing结果直接返回完整控件JSON
- dspy: 直接return VScrollPanel+Text子控件的完整JSON,不再用status/data包装
- ui: actiontype从urldata改为bricks,直接实例化返回的控件
- 解决status_of模板${items}数组替换不支持的问题
2026-06-18 16:13:52 +08:00

30 lines
842 B
Plaintext

ppid = params_kw.ppid
data = params_kw.data
try:
if isinstance(data, str):
data = json.loads(data)
x = await buffered_charging(ppid, data)
subwidgets = []
if isinstance(x, list):
for r in x:
subwidgets.append({
"widgettype": "Text",
"options": {"text": json.dumps(r, ensure_ascii=False), "width": "100%"}
})
else:
subwidgets.append({
"widgettype": "Text",
"options": {"text": json.dumps(x, ensure_ascii=False), "width": "100%"}
})
return json.dumps({
"widgettype": "VScrollPanel",
"options": {"width": "100%", "height": "100%"},
"subwidgets": subwidgets
}, ensure_ascii=False)
except Exception as e:
exception(f'{ppid=}, {data=}, {e}{format_exc()}')
return json.dumps({
"widgettype": "Text",
"options": {"width": "100%", "color": "red", "text": f'{ppid=}, {data=}, {e}'}
}, ensure_ascii=False)