28 lines
712 B
Plaintext
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 []
|