diff --git a/app/Console/Commands/Dealer/OrderProcessCommand.php b/app/Console/Commands/Dealer/OrderProcessCommand.php index ff06580a..5f120dd2 100644 --- a/app/Console/Commands/Dealer/OrderProcessCommand.php +++ b/app/Console/Commands/Dealer/OrderProcessCommand.php @@ -342,19 +342,14 @@ class OrderProcessCommand extends Command */ protected function handlePurchaseLogsOfContractedDealer(DealerOrder $dealerOrder, string $tz) { + if (! $this->isContractedDealerToPurchase($dealerOrder)) { + return; + } + $dealer = $dealerOrder->userInfo->dealer; // 采购业绩是否算自己的业绩 - $valid = true; - - if ($dealer->lvl->value < DealerLvl::Contracted->value) { - // 如果订单金额小于升级签约经销商的金额,则结束 - if ($dealerOrder->total_amount < app_settings('dealer.upgrade_amount_'.DealerLvl::Contracted->value)) { - return; - } - - $valid = false; - } + $valid = $dealer->lvl->value >= DealerLvl::Contracted->value; $log = new DealerPurchaseLog([ 'user_id' => $dealer->user_id, @@ -379,6 +374,10 @@ class OrderProcessCommand extends Command */ protected function handleManageSubsidyLogs(DealerOrder $dealerOrder, array $dealers, string $tz) { + if (! $this->isContractedDealerToPurchase($dealerOrder)) { + return; + } + $logs = []; foreach ($dealerOrder->products as $product) { @@ -491,6 +490,10 @@ class OrderProcessCommand extends Command */ protected function handleManagerSalesLogs(DealerOrder $dealerOrder, array $dealers, string $tz): void { + if (! $this->isContractedDealerToPurchase($dealerOrder)) { + return; + } + if (is_null($manager = $this->firstManager($dealers))) { return; } @@ -527,4 +530,23 @@ class OrderProcessCommand extends Command } return null; } + + /** + * 确认是否是签约经销商进货 + * + * @param DealerOrder $dealerOrder + * @return bool + */ + protected function isContractedDealerToPurchase(DealerOrder $dealerOrder): bool + { + $dealer = $dealerOrder->userInfo->dealer; + + if ($dealer->lvl->value < DealerLvl::Contracted->value) { + if ($dealerOrder->total_amount < app_settings('dealer.upgrade_amount_'.DealerLvl::Contracted->value)) { + return false; + } + } + + return true; + } }