fix: index.ui用JS动态获取租户品牌数据,替代Jinja DB查询
This commit is contained in:
parent
ec51ff30da
commit
0dd7414d06
@ -1,8 +1,3 @@
|
||||
{% set userorgid = get_userorgid() %}
|
||||
{% set sor = db.sqlorContext() %}
|
||||
{% set org = sor.execute_sql('SELECT orgname, iconid FROM organization WHERE id = ${orgid}$', {'orgid': userorgid}).first() %}
|
||||
{% set orgname = org.orgname if org and org.orgname else 'OpenComputing' %}
|
||||
{% set icon = org.iconid if org and org.iconid else 'imgs/ocai.svg' %}
|
||||
{
|
||||
"widgettype": "VBox",
|
||||
"options": {
|
||||
@ -43,17 +38,19 @@
|
||||
},
|
||||
{
|
||||
"widgettype": "Svg",
|
||||
"id": "tenant_logo",
|
||||
"options": {
|
||||
"css": "sage-logo",
|
||||
"rate": 2,
|
||||
"url": "{{entire_url('/appbase/show_icon.dspy')}}?id={{icon}}"
|
||||
"url": "{{entire_url('/imgs/ocai.svg')}}"
|
||||
}
|
||||
},
|
||||
{
|
||||
"widgettype": "Title4",
|
||||
"id": "tenant_brand_title",
|
||||
"options": {
|
||||
"css": "sage-brand-title",
|
||||
"text": "{{orgname}}",
|
||||
"text": "元境",
|
||||
"fontWeight": "bold",
|
||||
"marginLeft": "8px"
|
||||
}
|
||||
@ -111,6 +108,15 @@
|
||||
"url": "{{entire_url('/rbac/user/user_panel.ui')}}"
|
||||
}
|
||||
}
|
||||
],
|
||||
"binds": [
|
||||
{
|
||||
"wid": "app",
|
||||
"event": "user_logined",
|
||||
"actiontype": "script",
|
||||
"target": "self",
|
||||
"script": "fetch('{{entire_url('/tenant_brand_data.dspy')}}').then(r=>r.json()).then(d=>{var l=bricks.getWidgetById('tenant_logo',bricks.app);if(l&&d.iconid)l.opts.url='{{entire_url('/appbase/show_icon.dspy')}}?id='+d.iconid;l.refresh();var t=bricks.getWidgetById('tenant_brand_title',bricks.app);if(t)t.opts.text=d.orgname;t.refresh();})"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
10
wwwroot/tenant_brand_data.dspy
Normal file
10
wwwroot/tenant_brand_data.dspy
Normal file
@ -0,0 +1,10 @@
|
||||
# 返回租户品牌数据(系统名+图标)
|
||||
userorgid = await get_userorgid()
|
||||
env = request._run_ns
|
||||
async with get_sor_context(env, 'sage') as sor:
|
||||
orgs = await sor.sqlExe('SELECT orgname, iconid FROM organization WHERE id = ${orgid}$', {'orgid': userorgid})
|
||||
org = orgs[0] if orgs else None
|
||||
orgname = org.orgname if org and org.orgname else 'OpenComputing'
|
||||
iconid = org.iconid if org and org.iconid else ''
|
||||
|
||||
result = json.dumps({"orgname": orgname, "iconid": iconid}, ensure_ascii=False)
|
||||
Loading…
x
Reference in New Issue
Block a user