make(StoreOrderCreateServices::class); if ($cartInfo && $priceData) { /** @var StoreOrderCartInfoServices $cartServices */ $cartServices = app()->make(StoreOrderCartInfoServices::class); [$cartInfo, $spread_ids] = $createService->computeOrderProductTruePrice($cartInfo, $priceData, $addressId, $uid); $cartServices->updateCartInfo($orderId, $cartInfo); } $orderData = []; $spread_uid = $spread_two_uid = 0; /** @var UserServices $userServices */ $userServices = app()->make(UserServices::class); if ($spread_ids) { [$spread_uid, $spread_two_uid] = $spread_ids; $orderData['spread_uid'] = $spread_uid; $orderData['spread_two_uid'] = $spread_two_uid; } else { $spread_uid = $userServices->getSpreadUid($uid); $orderData = ['spread_uid' => 0, 'spread_two_uid' => 0]; if ($spread_uid) { $orderData['spread_uid'] = $spread_uid; } if ($spread_uid > 0) { $spread_two_uid = $userServices->getSpreadUid($spread_uid, [], false); if ($spread_two_uid) { $orderData['spread_two_uid'] = $spread_two_uid; } } } if ($cartInfo && !$activity) { /** @var StoreOrderComputedServices $orderComputed */ $orderComputed = app()->make(StoreOrderComputedServices::class); if ($userServices->checkUserPromoter($spread_uid)) $orderData['one_brokerage'] = $orderComputed->getOrderSumPrice($cartInfo, 'one_brokerage', false); if ($userServices->checkUserPromoter($spread_two_uid)) $orderData['two_brokerage'] = $orderComputed->getOrderSumPrice($cartInfo, 'two_brokerage', false); } $createService->update(['id' => $orderId], $orderData); } catch (\Throwable $e) { Log::error('计算订单实际优惠、积分、邮费、佣金失败,原因:' . $e->getMessage()); } return true; } }