34 lines
863 B
Plaintext
34 lines
863 B
Plaintext
|
|
db = DBPools()
|
|
dbname = get_module_dbname('rag')
|
|
async with db.sqlorContext(dbname) as sor:
|
|
u = await get_session_userinfo(request)
|
|
sql="select * from ragquote where orgid = ${orgid}$ order by enabled_date"
|
|
qs = await sor.sqlExe(sql, {'orgid': u.userorgid})
|
|
today = curDateString()
|
|
if len(qs) == 0:
|
|
if params_kw.program_type == 'free':
|
|
expired_date = dateadd(today, months=1)
|
|
else:
|
|
expired_date = '9999-12-31'
|
|
ns = {
|
|
"id": uuid(),
|
|
"orgid": u.userorgid,
|
|
"enabled_date": today,
|
|
"expired_date": expired_date,
|
|
'quota': params_kw.quota
|
|
}
|
|
await sor.C('ragquota', ns)
|
|
else:
|
|
lastq = qs[-1]
|
|
lastq.expired_date = today
|
|
await sor.U('ragquote', lastq.copy())
|
|
ns = {
|
|
"id": uuid(),
|
|
"orgid": u.userorgid,
|
|
"enabled_date": today,
|
|
"expired_date": expired_date,
|
|
'quota': params_kw.quota
|
|
}
|
|
await sor.C('ragquota', ns)
|