1
0
Files
GongShangLian/app/Listeners/OrderPaiddListener.php
2020-08-06 15:36:28 +08:00

50 lines
1.1 KiB
PHP

<?php
namespace App\Listeners;
use App\Bonus\Agent;
use App\Bonus\Direct;
use App\Events\OrderPaid;
use App\Models\Config;
use Carbon\Carbon;
class OrderPaiddListener
{
/**
* 创建事件监听器。
* @return void
*/
public function __construct()
{
}
/**
* 处理事件。
* @param \App\Events\OrderPaid $event
* @return void
*/
public function handle(OrderPaid $event)
{
$order = $event->order;
if ($order->type == 2) {
$year = Config::where('name', 'upgrade_time')->value('value') ?? 1;
$user = $order->user;
$user->identityUpdate(1, 'AutoUp', ['orderid' => $order->orderid]);
$user->vipd_at = Carbon::now();
$user->vip_end_at = Carbon::now()->addYear($year);
$user->save();
}
if ($order->remark) {
$remark = json_decode($order->remark, true);
$order->user->info->update($remark);
}
$bonus = Direct::settlement($order);
Agent::settlement($order, null, $bonus);
}
}