架构变更: - 废弃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透传
41 lines
1.2 KiB
Plaintext
41 lines
1.2 KiB
Plaintext
org_id = params_kw.get('org_id', (await get_userorgid()) or '0')
|
|
id = params_kw.get('id', getID())
|
|
now = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
|
|
|
vendor = params_kw.get('vendor', '')
|
|
upappid = params_kw.get('upappid', '')
|
|
api_mapping = params_kw.get('api_mapping', '{}')
|
|
|
|
if not vendor:
|
|
return {"success": False, "message": "供应商标识不能为空"}
|
|
if not upappid:
|
|
return {"success": False, "message": "上位系统ID不能为空"}
|
|
|
|
# Validate api_mapping is valid JSON
|
|
import json
|
|
try:
|
|
api_mapping_dict = json.loads(api_mapping) if api_mapping else {}
|
|
api_mapping = json.dumps(api_mapping_dict, ensure_ascii=False)
|
|
except json.JSONDecodeError:
|
|
return {"success": False, "message": "API映射必须是有效的JSON"}
|
|
|
|
data = {
|
|
"id": id,
|
|
"org_id": org_id,
|
|
"vendor": vendor,
|
|
"vendor_title": params_kw.get('vendor_title', ''),
|
|
"upappid": upappid,
|
|
"api_mapping": api_mapping,
|
|
"status": params_kw.get('status', 'active'),
|
|
"callback_url": params_kw.get('callback_url', ''),
|
|
"create_time": now,
|
|
"update_time": now
|
|
}
|
|
|
|
db = DBPools()
|
|
dbname = get_module_dbname('reallife_asset')
|
|
async with db.sqlorContext(dbname) as sor:
|
|
await sor.I("rl_vendor_config", data)
|
|
|
|
return {"success": True, "id": id}
|