浏览代码

修改记录钩子订阅行为

lang 3 年之前
父节点
当前提交
cf453c8d2a
共有 2 个文件被更改,包括 23 次插入3 次删除
  1. 22 2
      Controller/PaymentCycle.py
  2. 1 1
      Model/models.py

+ 22 - 2
Controller/PaymentCycle.py

@@ -360,7 +360,17 @@ class PaypalCycleNotify(View):
             agreement_id = paypal_body.get('billing_agreement_id')
             billing_agreement = paypalrestsdk.BillingAgreement.find(agreement_id)
             # 记录钩子日志
-            PaypalWebHookEventInsert['agreement_desc'] = json.dumps(json.loads(json.dumps(billing_agreement)))
+            PaypalWebHookEventInsert = {
+                'webhook_event_id': json_obj.get('id'),
+                'resource_type': json_obj.get('resource_type'),
+                'event_type': 1,
+                'summary': summary,
+                'agreement_id': billing_agreement_id,
+                'trade_no': paypal_transaction_id,
+                'resource': json_agreement_str,
+                'created_time': int(time.time()),
+                'agreement_desc':  json.dumps(billing_agreement),
+            }
             PaypalWebHookEvent.objects.create(**PaypalWebHookEventInsert)
 
             # 订阅续费订单(如果完成周期数`==0,则是自动续费第一次扣款。否则说明是续费订单)
@@ -571,7 +581,17 @@ class PaypalCycleNotify(View):
             agreement_id = paypal_body.get('billing_agreement_id')
             billing_agreement = paypalrestsdk.BillingAgreement.find(agreement_id)
             # 记录钩子日志
-            PaypalWebHookEventInsert['agreement_desc'] = json.dumps(json.loads(json.dumps(billing_agreement)))
+            PaypalWebHookEventInsert = {
+                'webhook_event_id': json_obj.get('id'),
+                'resource_type': json_obj.get('resource_type'),
+                'event_type': 1,
+                'summary': summary,
+                'agreement_id': billing_agreement_id,
+                'trade_no': paypal_transaction_id,
+                'resource': json_agreement_str,
+                'created_time': int(time.time()),
+                'agreement_desc': json.dumps(billing_agreement),
+            }
             PaypalWebHookEvent.objects.create(**PaypalWebHookEventInsert)
             return HttpResponse('success')
 

+ 1 - 1
Model/models.py

@@ -2289,7 +2289,7 @@ class PaypalWebHookEvent(models.Model):
     trade_no = models.CharField(max_length=22, db_index=True, verbose_name='交易ID', blank=True, default='')
     resource = models.TextField(blank=True, default='', verbose_name=u'资源详情')
     agreement_desc = models.TextField(blank=True, default='', verbose_name=u'订阅详情')
-    created_time = models.IntegerField(default=0, verbose_name='创建时间')
+    created_time = models.IntegerField(default=0, db_index=True, verbose_name='创建时间')
 
     class Meta:
         db_table = 'paypal_webhook_event'