31 lines
1.2 KiB
Plaintext
31 lines
1.2 KiB
Plaintext
result = {'success': False, 'message': ''}
|
|
|
|
try:
|
|
dbname = get_module_dbname('llmage')
|
|
luid = params_kw.get('id') or params_kw.get('llmusageid')
|
|
if not luid:
|
|
result['message'] = '缺少llmusageid参数'
|
|
else:
|
|
async with DBPools().sqlorContext(dbname) as sor:
|
|
await sor.U('llmusage', {
|
|
'id': luid,
|
|
'accounting_status': 'created'
|
|
})
|
|
|
|
now = curDateString() + ' ' + timestampstr().split(' ')[1] if ' ' not in curDateString() else curDateString()
|
|
await sor.execute("""
|
|
UPDATE llmusage_accounting_failed
|
|
SET handled = '1',
|
|
retry_count = IFNULL(retry_count, 0) + 1,
|
|
handled_time = ${now}$,
|
|
handled_note = CONCAT(IFNULL(handled_note, ''), '[', ${now}$, '] 触发重试; ')
|
|
WHERE llmusageid = ${luid}$
|
|
""", {'luid': luid, 'now': now})
|
|
|
|
result['success'] = True
|
|
result['message'] = '已重置为待记账状态,后台循环将重新处理'
|
|
except Exception as e:
|
|
result['message'] = str(e)
|
|
|
|
return json.dumps(result, ensure_ascii=False)
|