Files
water-back/app/Console/Commands/MonthPerfCommand.php
2023-01-11 11:00:43 +08:00

37 lines
891 B
PHP

<?php
namespace App\Console\Commands;
use App\Jobs\Bonus\MonthPerfJob;
use Illuminate\Console\Command;
use Modules\User\Models\User;
class MonthPerfCommand extends Command
{
protected $signature = 'Bonus:MonthPerf {last?}';
protected $description = '分红:计算用户月度业绩';
public function __construct()
{
parent::__construct();
}
public function handle()
{
$last = $this->argument('last') ?: 0;
User::whereHas('identities', function ($query) {
$query->where('id', 6);
})
->whereHas('identityMiddle', function ($query) {
$query->where('star', '>', 0);
})
->chunkById(100, function ($users) use ($last) {
foreach ($users as $user) {
MonthPerfJob::dispatch($user, $last);
}
});
}
}