70 lines
1.7 KiB
PHP
70 lines
1.7 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
class UpgradePayment extends Model
|
|
{
|
|
public static function boot()
|
|
{
|
|
parent::boot();
|
|
|
|
self::creating(function ($model) {
|
|
$model->state = $model->state ?? 'INIT';
|
|
$model->trade_no = 'U' . date('ymdHis') . sprintf("%07d", mt_rand(0, pow(10, 7) - 1));
|
|
});
|
|
}
|
|
|
|
public function user()
|
|
{
|
|
return $this->belongsTo(User::class);
|
|
}
|
|
|
|
public function getTypeTextAttribute()
|
|
{
|
|
switch ($this->type) {
|
|
case 'vip':
|
|
return "升级会员";
|
|
break;
|
|
case 'agent':
|
|
return "升级代理商";
|
|
break;
|
|
default:
|
|
return "未知类型";
|
|
break;
|
|
}
|
|
}
|
|
|
|
public function getPayTypeTextAttribute()
|
|
{
|
|
switch ($this->pay_type) {
|
|
case 'WECHAT':
|
|
return "微信支付";
|
|
break;
|
|
case 'ADMIN':
|
|
return "空升";
|
|
break;
|
|
default:
|
|
return "未知类型";
|
|
break;
|
|
}
|
|
}
|
|
|
|
public function getStateTextAttribute()
|
|
{
|
|
switch ($this->state) {
|
|
case 'INIT':
|
|
return '<span style="color:#2180ea">未支付</span>';
|
|
break;
|
|
case 'SUCCESS':
|
|
return '<span style="color:#14d000">已支付</span>';
|
|
break;
|
|
case 'OVER':
|
|
return '<span style="color:#ff0000">已结束</span>';
|
|
break;
|
|
default:
|
|
return "未知状态";
|
|
break;
|
|
}
|
|
}
|
|
}
|