58 lines
2.1 KiB
Plaintext
58 lines
2.1 KiB
Plaintext
async def RebateDelete(ns={}):
|
|
"""
|
|
reseller rebate delete
|
|
id *
|
|
:param ns:
|
|
:return:
|
|
"""
|
|
db = DBPools()
|
|
async with db.sqlorContext('kboss') as sor:
|
|
try:
|
|
if ns.get('rebatectl_id'):
|
|
# 根据id查找对应字段具体内容
|
|
ctl_res_li = await sor.R('rp_rebate_ctl', {'id': ns.get('rebatectl_id')})
|
|
ctl_res = ctl_res_li[0]
|
|
|
|
# 获取rebateid 把 rebate 中对应字段删除
|
|
rebateid = ctl_res.get('rebateid')
|
|
rebate_del_sql = """update rp_rebate set del_flg = '1' where rebateid = '%s';""" % rebateid
|
|
await sor.sqlExe(rebate_del_sql, {})
|
|
await sor.U('rp_rebate_ctl', {'id': ns.get('rebatectl_id'), 'del_flg': '1'})
|
|
|
|
# 找到对应end_date的那一条数据并更新 end_date
|
|
ctl_find = {
|
|
'resellerid': ctl_res.get('resellerid'),
|
|
'productid': ctl_res.get('productid'),
|
|
'end_date': ctl_res.get('start_date')
|
|
}
|
|
ctl_data_li = await sor.R('rp_rebate_ctl', ctl_find)
|
|
if ctl_data_li:
|
|
ctl_data = ctl_data_li[0]
|
|
ctl_up = {
|
|
'id': ctl_data.get('id'),
|
|
'end_date': ctl_res.get('end_date')
|
|
}
|
|
await sor.U('rp_rebate_ctl', ctl_up)
|
|
return {
|
|
'status': True,
|
|
'msg': 'delete rebate success'
|
|
}
|
|
elif ns.get('rebate_table_id'):
|
|
nss = {
|
|
'id': ns.get('rebate_table_id'),
|
|
'del_flg': '1'
|
|
}
|
|
await sor.U('rp_rebate', nss)
|
|
return {
|
|
'status': True,
|
|
'msg': 'rebate delete success'
|
|
}
|
|
except Exception as e:
|
|
return {
|
|
'status': False,
|
|
'err_msg': e
|
|
}
|
|
|
|
|
|
ret = await RebateDelete(params_kw)
|
|
return ret |