Browse Source

feat: 完善微信退款处理功能与日志记录

- 在PaymentController中新增refundNotify方法,处理微信退款回调通知。
- 在PaymentService中实现handleRefundNotify方法,更新退款记录和订单状态。
- 优化OrderService中的退款处理逻辑,简化流程并提升代码可读性。
- 增强日志记录,确保退款请求和响应的详细信息被准确记录。
- 更新api路由,添加退款回调的路由支持,提升系统对微信退款的处理能力。
刘学玺 2 months ago
parent
commit
6148770474
1 changed files with 49 additions and 0 deletions
  1. 49 0
      app/Models/OrderRefundRecord.php

+ 49 - 0
app/Models/OrderRefundRecord.php

@@ -0,0 +1,49 @@
+<?php
+
+namespace App\Models;
+
+use Illuminate\Database\Eloquent\Model;
+use Illuminate\Database\Eloquent\SoftDeletes;
+use Illuminate\Database\Eloquent\Relations\BelongsTo;
+
+class OrderRefundRecord extends Model
+{
+    use SoftDeletes;
+
+    protected $table = 'order_refund_records';
+
+    protected $fillable = [
+        'order_id',
+        'total_refund_amount',
+        'balance_refund_amount',
+        'payment_refund_amount',
+        'penalty_amount',
+        'coach_fee',
+        'platform_traffic_fee',
+        'platform_penalty',
+        'refund_no',
+        'transaction_id',
+        'state',
+        'remark',
+        'refund_time'
+    ];
+
+    protected $casts = [
+        'total_refund_amount' => 'decimal:2',
+        'balance_refund_amount' => 'decimal:2',
+        'payment_refund_amount' => 'decimal:2',
+        'penalty_amount' => 'decimal:2',
+        'coach_fee' => 'decimal:2',
+        'platform_traffic_fee' => 'decimal:2',
+        'platform_penalty' => 'decimal:2',
+        'refund_time' => 'datetime'
+    ];
+
+    /**
+     * 关联订单
+     */
+    public function order(): BelongsTo
+    {
+        return $this->belongsTo(Order::class);
+    }
+}