75 lines
1.8 KiB
Plaintext
75 lines
1.8 KiB
Plaintext
|
|
||
|
ns = params_kw.copy()
|
||
|
print(f'get_userapikey.dspy:{ns=}')
|
||
|
if not ns.get('page'):
|
||
|
ns['page'] = 1
|
||
|
if not ns.get('sort'):
|
||
|
|
||
|
ns['sort'] = 'id'
|
||
|
|
||
|
filterjson = params_kw.get('data_filter')
|
||
|
userid = await get_user()
|
||
|
ns['userid'] = userid
|
||
|
if not filterjson:
|
||
|
fields = [ f['name'] for f in [
|
||
|
{
|
||
|
"name": "id",
|
||
|
"title": "id",
|
||
|
"type": "str",
|
||
|
"length": 32
|
||
|
},
|
||
|
{
|
||
|
"name": "providerid",
|
||
|
"title": "\u4f9b\u5e94\u5546id",
|
||
|
"type": "str",
|
||
|
"length": 200
|
||
|
},
|
||
|
{
|
||
|
"name": "customerid",
|
||
|
"title": "\u7528\u6237id",
|
||
|
"type": "str",
|
||
|
"length": 32,
|
||
|
"default": "0"
|
||
|
},
|
||
|
{
|
||
|
"name": "apikey",
|
||
|
"title": "api\u5bc6\u94a5",
|
||
|
"type": "str",
|
||
|
"length": 4000,
|
||
|
"default": "0"
|
||
|
},
|
||
|
{
|
||
|
"name": "secretkey",
|
||
|
"title": "\u9644\u5c5e\u5bc6\u94a5",
|
||
|
"type": "str",
|
||
|
"length": 4000
|
||
|
},
|
||
|
{
|
||
|
"name": "rfname",
|
||
|
"title": "\u51fd\u6570\u540d",
|
||
|
"type": "str",
|
||
|
"length": 400
|
||
|
}
|
||
|
] ]
|
||
|
filterjson = default_filterjson(fields, ns)
|
||
|
sql = '''select a.*, b.providerid_text, c.customerid_text
|
||
|
from (select y.* from users x, userapikey y where x.id=${userid}$ and x.orgid = y.customerid) a left join (select id as providerid,
|
||
|
orgname as providerid_text from organization where 1 = 1) b on a.providerid = b.providerid left join (select id as customerid,
|
||
|
orgname as customerid_text from organization where 1 = 1) c on a.customerid = c.customerid'''
|
||
|
|
||
|
if filterjson:
|
||
|
dbf = DBFilter(filterjson)
|
||
|
conds = dbf.gen(ns)
|
||
|
if conds:
|
||
|
ns.update(dbf.consts)
|
||
|
sql += ' and ' + conds
|
||
|
info(f'{ns=},{sql=}')
|
||
|
db = DBPools()
|
||
|
async with db.sqlorContext('sage') as sor:
|
||
|
r = await sor.sqlPaging(sql, ns)
|
||
|
return r
|
||
|
return {
|
||
|
"total":0,
|
||
|
"rows":[]
|
||
|
}
|