diff --git a/crmeb/app/services/order/StoreOrderRefundServices.php b/crmeb/app/services/order/StoreOrderRefundServices.php index cd7c8d58c..95c3521f7 100644 --- a/crmeb/app/services/order/StoreOrderRefundServices.php +++ b/crmeb/app/services/order/StoreOrderRefundServices.php @@ -11,6 +11,7 @@ namespace app\services\order; use app\dao\order\StoreOrderRefundDao; +use app\jobs\ProductLogJob; use app\services\activity\advance\StoreAdvanceServices; use app\services\activity\bargain\StoreBargainServices; use app\services\activity\combination\StoreCombinationServices; @@ -250,7 +251,8 @@ class StoreOrderRefundServices extends BaseServices return $splitOrderInfo; }); - + //订单退款记录 + ProductLogJob::dispatch(['refund', ['uid' => $order['uid'], 'order_id' => $order['id']]]); //订单同意退款事件 event('order.refund', [$refundData, $order, 'order_refund']); event('notice.notice', [['data' => $refundData, 'order' => $order], 'order_refund']); diff --git a/crmeb/app/services/product/product/StoreProductLogServices.php b/crmeb/app/services/product/product/StoreProductLogServices.php index 126b27497..ce3af2539 100644 --- a/crmeb/app/services/product/product/StoreProductLogServices.php +++ b/crmeb/app/services/product/product/StoreProductLogServices.php @@ -16,6 +16,7 @@ use app\dao\product\product\StoreProductLogDao; use app\services\order\StoreOrderCartInfoServices; use app\services\BaseServices; use think\exception\ValidateException; +use think\facade\Log; /** * 商品访问记录日志 @@ -42,7 +43,7 @@ class StoreProductLogServices extends BaseServices */ public function createLog(string $type, array $data) { - if (!in_array($type, ['order', 'pay']) && (!isset($data['product_id']) || !$data['product_id'])) { + if (!in_array($type, ['order', 'pay', 'refund']) && (!isset($data['product_id']) || !$data['product_id'])) { throw new ValidateException('缺少商品ID'); } if ($type != 'visit' && (!isset($data['uid']) || !$data['uid'])) { @@ -95,6 +96,21 @@ class StoreProductLogServices extends BaseServices } break; case 'refund'://退款 + if (!isset($data['order_id']) || !$data['order_id']) { + throw new ValidateException('缺少订单ID'); + } + /** @var StoreOrderCartInfoServices $cartInfoServices */ + $cartInfoServices = app()->make(StoreOrderCartInfoServices::class); + $cartInfo = $cartInfoServices->getOrderCartInfo($data['order_id']); + foreach ($cartInfo as $value) { + $product = $value['cart_info']; + $log_data['product_id'] = $product['product_id'] ?? 0; + $log_data['uid'] = $data['uid'] ?? 0; + $log_data['pay_uid'] = $data['uid'] ?? 0; + $log_data['refund_num'] = $product['cart_num'] ?? 0; + $log_data['refund_price'] = $product['truePrice'] ?? 0; + $log_data_all[] = $log_data; + } break; default: throw new ValidateException('暂不支持该类型记录');