1. json/downapp.json: 添加更新和删除工具栏按钮,移除noedit限制 2. wwwroot/update_apikey.dspy: 查询并返回预填充的更新表单 3. wwwroot/do_update_apikey.dspy: 处理更新表单提交 4. wwwroot/delete_apikey.dspy: 删除API Key及关联应用 5. wwwroot/apikey_manage.ui: 独立API Key管理页面 6. scripts/load_path.py: 使用通配符%/dapi/%注册所有路径
30 lines
853 B
Plaintext
30 lines
853 B
Plaintext
debug(f'{params_kw=}')
|
|
dbname = get_module_dbname('dapi')
|
|
db = DBPools()
|
|
userid = await get_user()
|
|
orgid = await get_userorgid()
|
|
if not userid:
|
|
return UiError(title='删除API Key', message='需要登录')
|
|
|
|
try:
|
|
async with db.sqlorContext(dbname) as sor:
|
|
# 验证权限
|
|
ns = {
|
|
"id": params_kw.id,
|
|
"orgid": orgid
|
|
}
|
|
sql = """select * from downapp
|
|
where id = ${id}$ and orgid = ${orgid}$"""
|
|
recs = await sor.sqlExe(sql, ns)
|
|
if not recs:
|
|
return UiError(title='删除API Key', message='API Key不存在或无权访问')
|
|
|
|
# 删除downapikey
|
|
await sor.D('downapikey', {"dappid": params_kw.id})
|
|
# 删除downapp
|
|
await sor.D('downapp', {"id": params_kw.id})
|
|
|
|
return UiMessage(title="删除API Key", message="API Key删除成功")
|
|
except Exception as e:
|
|
return UiError(title='删除API Key', message=f'删除失败: {e}')
|