|
@@ -139,6 +139,10 @@ class OrderRefund
|
|
// 查找符合条件的 pays 并从中退指定金额
|
|
// 查找符合条件的 pays 并从中退指定金额
|
|
$this->refundPaysByMoney((string)$refund_money, $data);
|
|
$this->refundPaysByMoney((string)$refund_money, $data);
|
|
|
|
|
|
|
|
+ //退回善豆支付的
|
|
|
|
+// dd($item->goods_bean_amount);
|
|
|
|
+ $this->refundPaysByBean($item->goods_bean_amount,$data);
|
|
|
|
+
|
|
// 订单商品退款后
|
|
// 订单商品退款后
|
|
$eventData = [
|
|
$eventData = [
|
|
'order' => $this->order,
|
|
'order' => $this->order,
|
|
@@ -171,7 +175,20 @@ class OrderRefund
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public function refundPaysByBean(string $refund_money,$data = [])
|
|
|
|
+ {
|
|
|
|
+ // 商城订单,已支付的 pay 记录
|
|
|
|
+ $pays = PayModel::typeOrder()->paid()->where('pay_type','bean')->where('order_id', $this->order->id)->lock(true)->select();
|
|
|
|
|
|
|
|
+ $refund = new PayRefund($this->order->user_id);
|
|
|
|
+ foreach ($pays as $key => $pay) {
|
|
|
|
+ $refund->Refund($pay, $refund_money, [
|
|
|
|
+ 'refund_type' => $data['refund_type'] ?? $this->default_refund_type,
|
|
|
|
+ 'platform' => $this->order->platform,
|
|
|
|
+ 'remark' => $data['remark'] ?? ''
|
|
|
|
+ ]);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|