reallife_asset/wwwroot/vendor_config_edit.ui
yumoqing a21eabbb11 refactor(reallife_asset): uapi网关架构重构 + UI全面修复
架构变更:
- 废弃volcengine_client.py直连,改为通过Sage uapi网关调用供应商API
- rl_vendor_config表新增upappid和api_mapping(JSON)字段
- 新增_call_vendor()统一路由: vendor→upappid→apiname→UpAppApi.call()
- 支持多供应商灵活映射,各家API数量/逻辑不同通过api_mapping配置

管理端UI:
- vendor_config_manage.ui: Tabular列表展示供应商配置
- vendor_config_edit.ui: 供应商配置编辑页(AK/SK通过upapp/upappkey管理)
- org_group_manage.ui: 机构映射管理页
- 新增api/get_upapp_list.dspy获取上位系统下拉选项
- 新增api/get_status_list.dspy获取状态下拉选项

客户端UI:
- create_validate.ui: 真人认证页面,支持选择供应商创建H5认证
- upload_asset.ui: 上传素材页面,支持URL/base64上传
- index.ui: 新增客户端入口卡片(真人认证、上传素材)
- 所有Form字段使用正确uitype(code/str/text),确保可输入

清理:
- 废弃rl_app_user表,统一使用rl_asset_group+rl_org_group
- 简化API签名,去除冗余apikey/secretkey透传
2026-05-28 18:49:46 +08:00

156 lines
6.9 KiB
XML

{
"widgettype": "VBox",
"options": {
"width": "100%",
"padding": "16px"
},
"subwidgets": [
{
"widgettype": "HBox",
"options": {
"width": "100%",
"alignItems": "center",
"marginBottom": "16px"
},
"subwidgets": [
{
"widgettype": "Title4",
"options": {
"text": "供应商配置",
"fontWeight": "600"
}
},
{
"widgettype": "Filler"
},
{
"widgettype": "Button",
"options": {
"label": "返回列表"
},
"binds": [
{
"wid": "self",
"event": "click",
"actiontype": "urlwidget",
"target": "app.rl_content",
"options": {
"url": "{{entire_url('vendor_config_manage.ui')}}"
},
"mode": "replace"
}
]
}
]
},
{
"widgettype": "VScrollPanel",
"options": {
"height": "600px"
},
"subwidgets": [
{
"widgettype": "VBox",
"options": {
"padding": "16px",
"spacing": 12
},
"subwidgets": [
{
"widgettype": "Form",
"id": "vendor_config_form",
"options": {
"submit_url": "{{entire_url('api/rl_vendor_config_create.dspy')}}",
"fields": [
{
"uitype": "str",
"name": "vendor",
"label": "供应商标识",
"placeholder": "如 volcengine",
"required": true
},
{
"uitype": "str",
"name": "vendor_title",
"label": "供应商名称",
"placeholder": "如火山引擎"
},
{
"uitype": "code",
"name": "upappid",
"label": "上位系统(uapi)",
"dataurl": "{{entire_url('api/get_upapp_list.dspy')}}",
"data_field": "value",
"text_field": "text",
"required": true
},
{
"uitype": "text",
"name": "api_mapping",
"label": "API映射(JSON)",
"rows": 8,
"placeholder": '{\"create_session\":\"CreateVisualValidateSession\",\"get_result\":\"GetVisualValidateResult\",\"upload_asset\":\"CreateAsset\",\"get_asset\":\"GetAsset\",\"list_assets\":\"ListAssets\",\"list_groups\":\"ListAssetGroups\",\"delete_asset\":\"DeleteAsset\",\"delete_group\":\"DeleteAssetGroup\"}'
},
{
"uitype": "code",
"name": "status",
"label": "状态",
"dataurl": "{{entire_url('api/get_status_list.dspy')}}",
"data_field": "value",
"text_field": "text"
},
{
"uitype": "str",
"name": "callback_url",
"label": "回调URL",
"placeholder": "https://your-domain.com/reallife_asset/api/rl_callback.dspy"
}
]
}
},
{
"widgettype": "HBox",
"options": {
"gap": "12px",
"marginTop": "16px"
},
"subwidgets": [
{
"widgettype": "Button",
"options": {
"label": "提交"
},
"binds": [
{
"wid": "self",
"event": "click",
"actiontype": "script",
"target": "self",
"script": "var f=bricks.getWidgetById('vendor_config_form',bricks.app);if(f)f.submit()"
}
]
},
{
"widgettype": "Button",
"options": {
"label": "重置"
},
"binds": [
{
"wid": "self",
"event": "click",
"actiontype": "script",
"target": "self",
"script": "var f=bricks.getWidgetById('vendor_config_form',bricks.app);if(f)f.reset()"
}
]
}
]
}
]
}
]
}
]
}