|
@@ -102,16 +102,16 @@ class SplitAccount(models.Model):
|
|
|
# 解冻剩余资金 如果由于客户或其他原因 无法完成分账 就手动解除资金冻结
|
|
|
pass
|
|
|
|
|
|
- def handSplitAccont(self, spd, spr, pay):
|
|
|
+ def handSplitAccont(self, spd, spr, pay, app):
|
|
|
'''手动申请分账(在自动申请分账失败后 手动申请分账)'''
|
|
|
+ if pay.status != Pay.CONFIRM:
|
|
|
+ raise CustomError(u'该订单未完成付款,无法分账!')
|
|
|
if spd.status == SplitAccountDetail.SUCCESS:
|
|
|
raise CustomError(u'该分账已成功,禁止重复申请!')
|
|
|
- appid = ''
|
|
|
- mchid = ''
|
|
|
private_key = ''
|
|
|
cert_serial_no = ''
|
|
|
apiv3_key = ''
|
|
|
- spc = SplitAccountFuc(appid, mchid, private_key, cert_serial_no, apiv3_key, cert_dir=None, proxy=None)
|
|
|
+ spc = SplitAccountFuc(app.authorizer_appid, app.agent_num, private_key, cert_serial_no, apiv3_key, cert_dir=None, proxy=None)
|
|
|
# 状态是"待分账" 的查询分账
|
|
|
if spd.status == SplitAccountDetail.PENDING:
|
|
|
self.splictAccountQuery(spc, pay.no, self.no, spd)
|
|
@@ -181,15 +181,15 @@ class SplitAccount(models.Model):
|
|
|
detail.detail_no = item['detail_id']
|
|
|
detail.save()
|
|
|
|
|
|
- def splitAccount(self, spd, spr, pay):
|
|
|
+ def splitAccount(self, app, spd, spr, pay):
|
|
|
+ if pay.status != Pay.CONFIRM:
|
|
|
+ return
|
|
|
if spd.status != SplitAccountDetail.DEFAULT:
|
|
|
return
|
|
|
- appid = ''
|
|
|
- mchid = ''
|
|
|
private_key = ''
|
|
|
cert_serial_no = ''
|
|
|
apiv3_key = ''
|
|
|
- spc = SplitAccountFuc(appid, mchid, private_key, cert_serial_no, apiv3_key, cert_dir=None, proxy=None)
|
|
|
+ spc = SplitAccountFuc(app.authorizer_appid, app.agent_num, private_key, cert_serial_no, apiv3_key, cert_dir=None, proxy=None)
|
|
|
|
|
|
if spr.status != SplitAccountReceiver.ADD:
|
|
|
add = spc.splitaccount_addreceiver(spr.account)
|
|
@@ -393,13 +393,13 @@ class Pay(models.Model):
|
|
|
data = wechatpay.getAppString()
|
|
|
return data
|
|
|
|
|
|
- def split_account(self):
|
|
|
+ def split_account(self, app):
|
|
|
order = Order.objects.filter(pay=self).first()
|
|
|
if order and self.status == Pay.CONFIRM and self.profit_sharing == "Y":
|
|
|
sp, spd, spr = SplitAccount._addnew(self.branch, self.id, self.rebate, self.recommend_member)
|
|
|
order.splitaccount = sp
|
|
|
order.save()
|
|
|
- sp.splitAccount(spd, spr, self)
|
|
|
+ sp.splitAccount(app, spd, spr, self)
|
|
|
|
|
|
|
|
|
class Order(models.Model):
|