kboss/b/reseller/resellerRebateOldSearch.dspy
2025-07-16 14:27:17 +08:00

49 lines
1.9 KiB
Plaintext

async def resellerRebateOldSearch(ns={}):
if not ns:
return {
"status": False,
"msg": "reseller rebate failed, user id is empty",
}
db = DBPools()
async with db.sqlorContext('kboss') as sor:
try:
if ns.get('resellerid') and ns.get('productid'):
rebate_sql = """SELECT tl.*, te.rebate_cycle, te.sale_amount, te.rebate_rate from rp_rebate_ctl as tl LEFT join rp_rebate
as te on tl.rebateid=te.rebateid WHERE resellerid = '%s' and productid = '%s' and tl.del_flg='0' order by tl.start_date desc;""" % (ns.get('resellerid'), ns.get('productid'))
res = await sor.sqlExe(rebate_sql, {})
result = []
exist_id = []
for item in res:
sdate = item.get('start_date')
if not sdate in exist_id:
exist_id.append(sdate)
data = {
'id': item.get('id'),
'rebateid': item.get('rebateid'),
'start_date': sdate,
'end_date': item.get('end_date')
}
result.append(data)
return {
'status': True,
'msg': 'reseller rebate search success',
'data': result
}
else:
ns['del_flg'] = '0'
result = await sor.R('rp_rebate', ns)
return {
'status': True,
'msg': 'reseller rebate search success',
'data': result
}
except Exception as e:
return {
'status': False,
'msg': 'reseller rebate search failed',
'err_msg': e
}
ret = await resellerRebateOldSearch(params_kw)
return ret