mirror of
https://github.com/ProxyPanel/ProxyPanel.git
synced 2026-04-11 15:10:54 +00:00
1. models 关系规范化; 2. 本地-在线 订单处理改写; 3. 优化用户界面节点的查表操作; 4. 半修复 VNet SSR版需要面板主动提交用户信息变动的问题;(节点等级,用户分组,Node信息修改 主动通知节点尚未添加); 5. 简化并提取出了 返利佣金相关处理逻辑;
50 lines
1.2 KiB
PHP
50 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use Auth;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
|
|
|
/**
|
|
* 邀请码
|
|
*/
|
|
class Invite extends Model {
|
|
use SoftDeletes;
|
|
|
|
protected $table = 'invite';
|
|
protected $dates = ['dateline', 'deleted_at'];
|
|
protected $fillable = ['invitee_id', 'status'];
|
|
|
|
public function scopeUid($query) {
|
|
return $query->whereInviterId(Auth::id());
|
|
}
|
|
|
|
public function inviter(): BelongsTo {
|
|
return $this->belongsTo(User::class);
|
|
}
|
|
|
|
public function invitee(): BelongsTo {
|
|
return $this->belongsTo(User::class);
|
|
}
|
|
|
|
public function getStatusLabelAttribute(): string {
|
|
switch($this->attributes['status']){
|
|
case 0:
|
|
$status_label = '<span class="badge badge-success">'.trans('home.invite_code_table_status_un').'</span>';
|
|
break;
|
|
case 1:
|
|
$status_label = '<span class="badge badge-danger">'.trans('home.invite_code_table_status_yes').'</span>';
|
|
break;
|
|
case 2:
|
|
$status_label = '<span class="badge badge-default">'.trans('home.invite_code_table_status_expire').'</span>';
|
|
break;
|
|
default:
|
|
$status_label = '<span class="badge badge-default"> 未知 </span>';
|
|
}
|
|
|
|
return $status_label;
|
|
}
|
|
}
|