love_php/app/Jobs/AddSystemCoin.php
2026-04-02 09:20:51 +08:00

71 lines
1.9 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace App\Jobs;
use Illuminate\Bus\Queueable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use App\Models\User;
use App\Models\CoinLog;
use App\Repositories\Eloquent\SmsRepository as Sms;
use App\Utils\Messenger;
use App\Models\Message;
class AddSystemCoin implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public $tries = 3;
protected $user_ids;
/**
* Create a new job instance.
*
* @return void
*/
public function __construct($user_ids)
{
$this->user_ids = $user_ids;
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
$user_ids = $this->user_ids;
if (empty(count($user_ids))) {
return true;
}
$message = "感谢您在2020年9月20号13点30分至19点之间观看福恋app直播相亲特赠送20福币以表感谢!【福恋】";
foreach ($user_ids as $user_id) {
$user = User::find($user_id);
if (empty($user)) continue;
//判断记录是否存在
$log = CoinLog::where('user_id', $user->id)->where('type', 'RECSYSTEM')->where('coin', 20)->first();
if ($log) continue;
$user->updateCoinInfo('add', 20, 'other');
$user->addCoinLog('RECSYSTEM', 0, 20);
//短信通知
$this->sentMessage($user->mobile, $message);
}
}
//发送普通消息
function sentMessage($mobile, $message){
if (empty($mobile)) {
return true;
}
Message::create([
'phone'=>$mobile,
'message'=>$message,
'confirmed' => 1,
'ip' => request()?request()->ip():'127.0.0.1',
]);
Messenger::sendSMS($mobile, $message);
return true;
}
}