Compare commits

..

No commits in common. "5ab8171552e6cfbfe7cfe30822c3e6b6118538a1" and "4abd5533024084f679be5ed5bca5ac837125d6fd" have entirely different histories.

2 changed files with 68 additions and 53 deletions

View File

@ -44,10 +44,10 @@ try:
conditions.append("f.use_date<=${end_date}$")
ns['end_date'] = filters['end_date']
if filters.get('filter_userid'):
conditions.append("(u.username LIKE ${filter_userid}$ OR u.name LIKE ${filter_userid}$)")
conditions.append("f.userid LIKE ${filter_userid}$")
ns['filter_userid'] = '%' + filters['filter_userid'] + '%'
if filters.get('filter_llmid'):
conditions.append("(f.llmid LIKE ${filter_llmid}$ OR l.name LIKE ${filter_llmid}$)")
conditions.append("(f.llmid LIKE ${filter_llmid}$ OR f.llmid_text LIKE ${filter_llmid}$)")
ns['filter_llmid'] = '%' + filters['filter_llmid'] + '%'
where = ""
@ -61,7 +61,7 @@ SELECT f.*,
o.orgname as userorgid_text,
l.name as llmid_text
FROM llmusage_accounting_failed f
LEFT JOIN {sage_db}.users u ON f.userid = u.id
LEFT JOIN {sage_db}.users u ON f.userid = u.userid
LEFT JOIN {sage_db}.organization o ON f.userorgid = o.id
LEFT JOIN {llmage_db}.llm l ON f.llmid = l.id
{where}
@ -71,7 +71,7 @@ ORDER BY f.failed_time DESC
count_sql = f"""
SELECT count(*) as cnt
FROM llmusage_accounting_failed f
LEFT JOIN {sage_db}.users u ON f.userid = u.id
LEFT JOIN {sage_db}.users u ON f.userid = u.userid
LEFT JOIN {sage_db}.organization o ON f.userorgid = o.id
LEFT JOIN {llmage_db}.llm l ON f.llmid = l.id
{where}

View File

@ -6,6 +6,14 @@
"padding": "8px",
"gap": "8px"
},
"subwidgets": [
{
"widgettype": "HBox",
"options": {
"width": "100%",
"gap": "8px",
"alignItems": "flex-end"
},
"subwidgets": [
{
"widgettype": "InlineForm",
@ -51,6 +59,25 @@
}
]
},
{
"widgettype": "Button",
"id": "retry_btn",
"options": {
"label": "重试记账",
"bgcolor": "#4caf50",
"color": "#ffffff",
"cwidth": 6
},
"binds": [{
"wid": "self",
"event": "click",
"actiontype": "script",
"target": "self",
"script": "var dv = bricks.getWidgetById('failed_table', bricks.app.root); if(!dv || !dv.select_row || !dv.select_row.user_data) { alert('请先选中一条记录'); return; } var row = dv.select_row.user_data; if(!row.llmusageid) { alert('记录缺少llmusageid'); return; } var resp = await fetch('{{entire_url('/llmage/api/retry_accounting.dspy')}}?id=' + row.llmusageid); var d = await resp.json(); if(d.success) { alert(d.message); await dv.render({}); } else { alert('失败: ' + d.message); }"
}]
}
]
},
{
"widgettype": "Tabular",
"id": "failed_table",
@ -64,11 +91,6 @@
"name": "show_reason",
"label": "原因",
"selected_row": true
},
{
"name": "retry_accounting",
"label": "重试记账",
"selected_row": true
}
]
},
@ -158,13 +180,6 @@
"options": {
"url": "{{entire_url('/llmage/api/show_failed_reason.dspy')}}?id=${id}$"
}
},
{
"wid": "self",
"event": "retry_accounting",
"actiontype": "script",
"target": "self",
"script": "var dv = bricks.getWidgetById('failed_table', bricks.app.root); if(!dv || !dv.select_row || !dv.select_row.user_data) { alert('请先选中一条记录'); return; } var row = dv.select_row.user_data; if(!row.llmusageid) { alert('记录缺少llmusageid'); return; } var resp = await fetch('{{entire_url('/llmage/api/retry_accounting.dspy')}}?id=' + row.llmusageid); var d = await resp.json(); if(d.success) { alert(d.message); await dv.render({}); } else { alert('失败: ' + d.message); }"
}
]
}