rag/wwwroot/delete_folder_or_file.dspy
2025-08-13 18:15:43 +08:00

43 lines
1.4 KiB
Plaintext

debug(f'{params_kw=}')
orgid = await get_userorgid()
dbname = get_module_dbname('filemgr')
debug(f'delete_folder_or_file.dspy:here')
db = DBPools()
filemgr = RagFileMgr(params_kw.fiid)
delfiles = []
async with db.sqlorContext(dbname) as sor:
debug(f'delete_folder_or_file.dspy:here')
ownerid = await get_userorgid()
debug(f'delete_folder_or_file.dspy:here')
if params_kw.filetype == 'folder':
has_sub = await filemgr.has_sub(sor, params_kw.id)
debug(f'delete_folder_or_file.dspy:here')
if has_sub:
return UiConform(title='Delete Conform',
message='This folder has subitem, are you sure to delete it?', binds=[
{
"wid":"self",
"event":"conformed",
"actiontype":"urlwidget",
"target":"self",
"options":{
"params":{
"id":params_kw.id,
"filetype": params_kw.filetype
},
url: entire_url('conformed_delete.dspy')
}
}
])
delfiles = await filemgr._del_folder(sor, params_kw.id, ownerid)
debug(f'delete_folder_or_file.dspy:here')
else:
dfile = await filemgr._del_file(sor, params_kw.id, ownerid)
delfiles.append(dfile)
debug(f'delete_folder_or_file.dspy:here')
user = await get_user()
await filemgr.file_deleted(request, delfiles, user)
return UiMessage(title='delete file', message='delete success')
debug(f'delete_folder_or_file.dspy:here')
return UiError(title='delete file', message='delete failed')