|
@@ -106,16 +106,15 @@ class SplitAccount(models.Model):
|
|
|
|
|
|
def handSplitAccont(self, spd, pay, app):
|
|
|
'''手动申请分账(在自动申请分账失败后 手动申请分账)'''
|
|
|
- spc = SplitAccountFuc(app.authorizer_appid, app.agent_num, app.private_key, app.cert_serial_no, app.apiv3_key, cert_dir=app.cert_dir, proxy=None)
|
|
|
+ spc = SplitAccountFuc(app.authorizer_appid, app.agent_num, app.cert_serial_no, app.apiv3_key)
|
|
|
# 状态是"待分账" 的查询分账 (状态是默认的怎么处理?没有申请过的 查询分账结果会报错--如果返回错误信息根据错误信息 如果没有发现该订单就重新申请 其他原因就不再申请)
|
|
|
if spd.status == SplitAccountDetail.PENDING:
|
|
|
self.splictAccountQuery(spc, pay.transaction_id, self.no, spd)
|
|
|
|
|
|
if spd.status == SplitAccountDetail.SUCCESS:
|
|
|
- raise CustomError(u'该分账已成功!')
|
|
|
-
|
|
|
+ return
|
|
|
if spd.status == SplitAccountDetail.PENDING:
|
|
|
- raise CustomError(u'该分账正在处理!')
|
|
|
+ return
|
|
|
spr = SplitAccountReceiver.objects.filter(account=spd.account).first()
|
|
|
if not spr:
|
|
|
spr = SplitAccountReceiver.objects.create(account=spd.account)
|
|
@@ -137,12 +136,12 @@ class SplitAccount(models.Model):
|
|
|
if item['result'] == 'PENDING':
|
|
|
spd.status = SplitAccountDetail.PENDING
|
|
|
elif item['result'] == 'SUCCESS':
|
|
|
+ spd.finish_time = datetime.datetime.strptime(item['finish_time'], "%Y-%m-%dT%H:%M:%S+08:00")
|
|
|
spd.status = SplitAccountDetail.SUCCESS
|
|
|
elif item['result'] == 'CLOSED':
|
|
|
spd.status = SplitAccountDetail.CLOSED
|
|
|
spd.fail_reason = item['fail_reason']
|
|
|
- spd.create_time = item['create_time']
|
|
|
- spd.finish_time = item['finish_time']
|
|
|
+ spd.create_time = datetime.datetime.strptime(item['create_time'], "%Y-%m-%dT%H:%M:%S+08:00")
|
|
|
spd.detail_no = item['detail_id']
|
|
|
spd.save()
|
|
|
|
|
@@ -165,11 +164,11 @@ class SplitAccount(models.Model):
|
|
|
if detail and detail.account == item['account']:
|
|
|
if item['result'] == 'SUCCESS':
|
|
|
detail.status = SplitAccountDetail.SUCCESS
|
|
|
+ detail.finish_time = datetime.datetime.strptime(item['finish_time'], "%Y-%m-%dT%H:%M:%S+08:00")
|
|
|
elif item['result'] == 'CLOSED':
|
|
|
detail.status = SplitAccountDetail.CLOSED
|
|
|
detail.fail_reason = item['fail_reason']
|
|
|
- detail.create_time = item['create_time']
|
|
|
- detail.finish_time = item['finish_time']
|
|
|
+ detail.create_time = datetime.datetime.strptime(item['create_time'], "%Y-%m-%dT%H:%M:%S+08:00")
|
|
|
detail.detail_no = item['detail_id']
|
|
|
detail.save()
|
|
|
|
|
@@ -179,7 +178,7 @@ class SplitAccount(models.Model):
|
|
|
return
|
|
|
if spd.status != SplitAccountDetail.DEFAULT:
|
|
|
return
|
|
|
- spc = SplitAccountFuc(app.authorizer_appid, app.agent_num, app.private_key, app.cert_serial_no, app.apiv3_key, cert_dir=app.cert_dir, proxy=None)
|
|
|
+ spc = SplitAccountFuc(app.authorizer_appid, app.agent_num, app.cert_serial_no, app.apiv3_key)
|
|
|
|
|
|
if spr.status != SplitAccountReceiver.ADD:
|
|
|
spc.splitaccount_addreceiver(spr.account)
|
|
@@ -202,21 +201,21 @@ class SplitAccount(models.Model):
|
|
|
spd.status = SplitAccountDetail.PENDING
|
|
|
elif item['result'] == 'SUCCESS':
|
|
|
spd.status = SplitAccountDetail.SUCCESS
|
|
|
+ spd.finish_time = datetime.datetime.strptime(item['finish_time'], "%Y-%m-%dT%H:%M:%S+08:00")
|
|
|
elif item['result'] == 'CLOSED':
|
|
|
spd.status = SplitAccountDetail.CLOSED
|
|
|
spd.fail_reason = item['fail_reason']
|
|
|
- spd.create_time = item['create_time']
|
|
|
- spd.finish_time = item['finish_time']
|
|
|
+ spd.create_time = datetime.datetime.strptime(item['create_time'], "%Y-%m-%dT%H:%M:%S+08:00")
|
|
|
spd.detail_no = item['detail_id']
|
|
|
spd.save()
|
|
|
|
|
|
@staticmethod
|
|
|
def _addnew(branch, order_id, rebate, customer):
|
|
|
if rebate <= 0:
|
|
|
- return ''
|
|
|
+ return
|
|
|
customer_wechat = CustomerWechat.objects.filter(customer=customer).first()
|
|
|
if not customer_wechat:
|
|
|
- return ''
|
|
|
+ return
|
|
|
|
|
|
no = "FZ" + timezone.now().strftime('%y%m%d%H%M%S') + str(order_id)
|
|
|
instance = SplitAccount.objects.create(
|