reallife_asset/wwwroot/api/rl_vendor_config_update.dspy

31 lines
873 B
Plaintext

id = params_kw.get('id', '')
if not id: return {"success": False, "message": "id required"}
db = DBPools()
dbname = get_module_dbname('reallife_asset')
async with db.sqlorContext(dbname) as sor:
recs = await sor.R("rl_vendor_config", {"id": id})
if not recs: return {"success": False, "message": "Not found"}
upd = {}
for k in ['status', 'callback_url', 'vendor']:
if params_kw.get(k):
upd[k] = params_kw.get(k)
# Encrypt keys
ak = params_kw.get('ak', None)
sk = params_kw.get('sk', None)
if ak is not None:
env = ServerEnv()
upd['ak'] = env.password_encode(ak)
if sk is not None:
env = ServerEnv()
upd['sk'] = env.password_encode(sk)
upd['update_time'] = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
async with db.sqlorContext(dbname) as sor:
await sor.U("rl_vendor_config", upd, {"id": id})
return {"success": True}