appbase/wwwroot/get_code.dspy
2025-07-16 14:28:56 +08:00

28 lines
712 B
Plaintext

debug(params_kw)
ns = params_kw.copy()
db = DBPools()
sql = f"""select {params_kw.tblvalue} as {params_kw.valueField},
{params_kw.tbltext} as {params_kw.textField}
from {params_kw.table} where 1=1 """
if params_kw.cond:
sql += f" and {params_kw.cond} "
sql += f"order by {params_kw.textField}"
ac = ArgsConvert('[[', ']]')
vars = ac.findAllVariables(sql)
if 'userid' in vars:
ns['userid'] = await get_user()
if 'userorgid' in vars:
ns['userorgid'] = await get_userorgid()
NameSpace = {v:'${' + v + '}$' for v in vars}
sql = ac.convert(sql, NameSpace)
debug(f'/appbase/get_code.dspy: {sql=}')
async with db.sqlorContext(params_kw.dbname) as sor:
rs = await sor.sqlExe(sql, ns)
return rs
return []