87 lines
3.3 KiB
Plaintext
87 lines
3.3 KiB
Plaintext
async def providerUpdate(ns={}):
|
|
"""
|
|
update new provider
|
|
`name`: 名称,
|
|
`description`: 描述,
|
|
`appid`: 应用id,
|
|
`providerkey`: 应用key,
|
|
`state`: 状态,
|
|
`start_date`: 起效日期,
|
|
`end_date`: 失效日期,
|
|
`sale_mode`: 销售方式,
|
|
`del_flag`: 删除标志
|
|
:param ns:
|
|
:return:
|
|
"""
|
|
ns_org = {
|
|
'id': ns.get('id'),
|
|
'orgname': ns.get('orgname') or '',
|
|
'contactor': ns.get('contactor') or '',
|
|
'contactor_phone': ns.get('contactor_phone') or '',
|
|
'province_id': ns.get('province_id') or '',
|
|
'city_id': ns.get('city_id') or '',
|
|
'distinct_id': ns.get('distinct_id') or '',
|
|
'emailaddress': ns.get('emailaddress') or '',
|
|
'address': ns.get('address') or '',
|
|
'main_business': ns.get('main_business') or '',
|
|
'orgcode': ns.get('orgcode') or '',
|
|
'license_img': ns.get('license_img') or '',
|
|
'id_img': ns.get('id_img') or '',
|
|
'accountid': ns.get('accountid') or ''
|
|
}
|
|
ns_provider = {
|
|
'id': ns.get('provider_table_id'),
|
|
'name': ns.get('name') or '',
|
|
'description': ns.get('description') or '',
|
|
'appid': ns.get('appid') or '',
|
|
'providerkey': ns.get('providerkey') or '',
|
|
'state': ns.get('state') or '',
|
|
'settle_mode': ns.get('settle_mode') or '',
|
|
'settle_flowid': ns.get('settle_flowid') or '',
|
|
'settle_datep': ns.get('settle_datep') or '',
|
|
'start_date': ns.get('start_date') or '',
|
|
'end_date': ns.get('end_date') or '',
|
|
'sale_mode': ns.get('sale_mode') or ''
|
|
}
|
|
ns_sale_protocol = {
|
|
'id': ns.get('protocolid'),
|
|
'salemode': ns.get('salemode'),
|
|
'start_date': ns.get('start_date'),
|
|
'end_date': ns.get('end_date'),
|
|
}
|
|
db = DBPools()
|
|
async with db.sqlorContext('kboss') as sor:
|
|
try:
|
|
await sor.U('organization',ns_org)
|
|
await sor.U('provider',ns_provider)
|
|
await sor.U('saleprotocol',ns_sale_protocol)
|
|
# 如果只是改起始时间 子表不需要删除
|
|
exist_mode_li = await sor.R('saleprotocol', {'id': ns.get('protocolid'), 'del_flg': '0'})
|
|
exist_mode = exist_mode_li[0]['salemode']
|
|
|
|
# 如果模式没有改变 只更新主表内容
|
|
if ns.get('protocolfile'):
|
|
ns_sale_protocol['protocolfile'] = ns.get('protocolfile')
|
|
if ns.get('settlemode'):
|
|
ns_sale_protocol['settle_mode'] = ns.get('settle_mode')
|
|
if ns.get('settle_dp'):
|
|
ns_sale_protocol['settle_dp'] = ns.get('settle_datep')
|
|
await sor.U('saleprotocol', ns_sale_protocol)
|
|
# 如果模式改变 就删除子表protocolid内容
|
|
if exist_mode != ns.get('salemode'):
|
|
up_sql = """update product_salemode set del_flg = '1' where protocolid = '%s';""" % ns.get('protocolid')
|
|
await sor.sqlExe(up_sql, {})
|
|
return {
|
|
"status": True,
|
|
"msg": "provider update success"
|
|
}
|
|
except Exception as e:
|
|
raise e
|
|
return {
|
|
"status": False,
|
|
"msg": "provider update failed"
|
|
}
|
|
|
|
|
|
ret = await providerUpdate(params_kw)
|
|
return ret |