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

277 lines
10 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"widgettype": "VBox",
"options": {
"width": "100%",
"height": "100%",
"padding": "20px"
},
"subwidgets": [
{
"widgettype": "Text",
"options": {
"text": "真人人像素材管理",
"fontSize": "24px",
"fontWeight": "bold",
"marginBottom": "20px"
}
},
{
"widgettype": "ResponsableBox",
"options": {
"gap": "16px",
"minWidth": "280px"
},
"subwidgets": [
{
"widgettype": "Button",
"options": {
"css": "card",
"padding": "20px",
"cursor": "pointer",
"borderRadius": "8px",
"border": "none"
},
"binds": [
{
"wid": "self",
"event": "click",
"actiontype": "urlwidget",
"target": "app.rl_content",
"options": {
"url": "{{entire_url('create_validate.ui')}}"
},
"mode": "replace"
}
],
"subwidgets": [
{
"widgettype": "Text",
"options": {
"text": "🔐 真人认证",
"fontSize": "18px",
"fontWeight": "bold"
}
},
{
"widgettype": "Text",
"options": {
"text": "创建真人认证会话获取H5认证链接",
"fontSize": "14px",
"color": "#666"
}
}
]
},
{
"widgettype": "Button",
"options": {
"css": "card",
"padding": "20px",
"cursor": "pointer",
"borderRadius": "8px",
"border": "none"
},
"binds": [
{
"wid": "self",
"event": "click",
"actiontype": "urlwidget",
"target": "app.rl_content",
"options": {
"url": "{{entire_url('upload_asset.ui')}}"
},
"mode": "replace"
}
],
"subwidgets": [
{
"widgettype": "Text",
"options": {
"text": "📤 上传素材",
"fontSize": "18px",
"fontWeight": "bold"
}
},
{
"widgettype": "Text",
"options": {
"text": "上传素材到供应商支持URL/base64",
"fontSize": "14px",
"color": "#666"
}
}
]
},
{
"widgettype": "Button",
"options": {
"css": "card",
"padding": "20px",
"cursor": "pointer",
"borderRadius": "8px",
"border": "none"
},
"binds": [
{
"wid": "self",
"event": "click",
"actiontype": "urlwidget",
"target": "app.rl_content",
"options": {
"url": "{{entire_url('group_manage.ui')}}"
},
"mode": "replace"
}
],
"subwidgets": [
{
"widgettype": "Text",
"options": {
"text": "📁 素材组合管理",
"fontSize": "18px",
"fontWeight": "bold"
}
},
{
"widgettype": "Text",
"options": {
"text": "创建真人认证、管理素材组合Asset Group",
"fontSize": "14px",
"color": "#666"
}
}
]
},
{
"widgettype": "Button",
"options": {
"css": "card",
"padding": "20px",
"cursor": "pointer",
"borderRadius": "8px",
"border": "none"
},
"binds": [
{
"wid": "self",
"event": "click",
"actiontype": "urlwidget",
"target": "app.rl_content",
"options": {
"url": "{{entire_url('asset_manage.ui')}}"
},
"mode": "replace"
}
],
"subwidgets": [
{
"widgettype": "Text",
"options": {
"text": "🖼️ 素材资产管理",
"fontSize": "18px",
"fontWeight": "bold"
}
},
{
"widgettype": "Text",
"options": {
"text": "上传/查看/同步真人人像素材Asset",
"fontSize": "14px",
"color": "#666"
}
}
]
},
{
"widgettype": "Button",
"options": {
"css": "card",
"padding": "20px",
"cursor": "pointer",
"borderRadius": "8px",
"border": "none"
},
"binds": [
{
"wid": "self",
"event": "click",
"actiontype": "urlwidget",
"target": "app.rl_content",
"options": {
"url": "{{entire_url('vendor_config_manage.ui')}}"
},
"mode": "replace"
}
],
"subwidgets": [
{
"widgettype": "Text",
"options": {
"text": "⚙️ 供应商配置",
"fontSize": "18px",
"fontWeight": "bold"
}
},
{
"widgettype": "Text",
"options": {
"text": "管理供应商AK/SK和回调URL",
"fontSize": "14px",
"color": "#666"
}
}
]
},
{
"widgettype": "Button",
"options": {
"css": "card",
"padding": "20px",
"cursor": "pointer",
"borderRadius": "8px",
"border": "none"
},
"binds": [
{
"wid": "self",
"event": "click",
"actiontype": "urlwidget",
"target": "app.rl_content",
"options": {
"url": "{{entire_url('org_group_manage.ui')}}"
},
"mode": "replace"
}
],
"subwidgets": [
{
"widgettype": "Text",
"options": {
"text": "🔗 机构映射管理",
"fontSize": "18px",
"fontWeight": "bold"
}
},
{
"widgettype": "Text",
"options": {
"text": "查看/管理机构和供应商组合的映射关系",
"fontSize": "14px",
"color": "#666"
}
}
]
}
]
},
{
"widgettype": "VBox",
"id": "rl_content",
"options": {
"width": "100%",
"flex": "1",
"marginTop": "20px"
}
}
]
}