39 lines
1.5 KiB
Plaintext
39 lines
1.5 KiB
Plaintext
org_id = params_kw.get('org_id', (await get_userorgid()) or '0')
|
|
id = params_kw.get('id', getID())
|
|
now = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
|
|
|
vendor = params_kw.get('vendor', '')
|
|
upappid = params_kw.get('upappid', '')
|
|
api_mapping = params_kw.get('api_mapping', '{}')
|
|
|
|
if not vendor:
|
|
return {"widgettype":"Error","options":{"title":"创建失败","message":"供应商标识不能为空","cwidth":16,"cheight":9,"timeout":3}}
|
|
if not upappid:
|
|
return {"widgettype":"Error","options":{"title":"创建失败","message":"上位系统ID不能为空","cwidth":16,"cheight":9,"timeout":3}}
|
|
|
|
try:
|
|
api_mapping_dict = json.loads(api_mapping) if api_mapping else {}
|
|
api_mapping = json.dumps(api_mapping_dict, ensure_ascii=False)
|
|
except json.JSONDecodeError:
|
|
return {"widgettype":"Error","options":{"title":"创建失败","message":"API映射必须是有效的JSON","cwidth":16,"cheight":9,"timeout":3}}
|
|
|
|
data = {
|
|
"id": id,
|
|
"org_id": org_id,
|
|
"vendor": vendor,
|
|
"vendor_title": params_kw.get('vendor_title', ''),
|
|
"upappid": upappid,
|
|
"api_mapping": api_mapping,
|
|
"status": params_kw.get('status', 'active'),
|
|
"callback_url": params_kw.get('callback_url', ''),
|
|
"create_time": now,
|
|
"update_time": now
|
|
}
|
|
|
|
db = DBPools()
|
|
dbname = get_module_dbname('reallife_asset')
|
|
async with db.sqlorContext(dbname) as sor:
|
|
await sor.I("rl_vendor_config", data)
|
|
|
|
return {"widgettype":"Message","options":{"title":"创建成功","message":"ok","cwidth":16,"cheight":9,"timeout":3,"user_data": data}}
|