31 lines
1.5 KiB
Plaintext
31 lines
1.5 KiB
Plaintext
async def addledgers(ns):
|
||
""" 录入客户余额
|
||
action: RECHARGE = 充值;RECHARGE_REVERSE = 充值冲账
|
||
"""
|
||
db = DBPools()
|
||
async with db.sqlorContext('kboss') as sor:
|
||
if not ns.get('apv_id'):
|
||
return {'status': False, 'msg': '充值失败'}
|
||
if ns.get('apv_id'):
|
||
if ns.get('status') != 'agree':
|
||
return {'status': False, 'msg': '充值失败'}
|
||
apv = await sor.R('apv_data',{'apv_id':ns.get('apv_id')})
|
||
balance = float(apv[0]['apv_text'][5:])
|
||
date = await get_business_date(sor=None)
|
||
recharge_log = {'customerid': apv[0]['result_org'], 'recharge_amt': balance,
|
||
'action': 'RECHARGE', 'recharge_path': '2', 'recharge_date': date}
|
||
try:
|
||
ra = RechargeAccounting(recharge_log)
|
||
await ra.accounting(sor)
|
||
await sor.C('recharge_log', {'id': uuid(), 'customerid': apv[0]['result_org'],
|
||
'recharge_date': datetime.datetime.now().strftime("%Y-%m-%d"),
|
||
'recharge_path': '2', 'recharge_amt': balance,
|
||
'recharge_timestamp': date, 'action': 'RECHARGE', 'op_userid': apv[0]['apv_sender'],
|
||
})
|
||
return {'status': True, 'msg': '充值成功'}
|
||
except Exception as e:
|
||
raise e
|
||
return {'status': False, 'msg': '充值失败'}
|
||
|
||
ret = await addledgers(params_kw)
|
||
return ret |