47 lines
1010 B
PHP
47 lines
1010 B
PHP
<?php
|
|
|
|
namespace Peidikeji\User\Models;
|
|
|
|
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
|
use EloquentFilter\Filterable;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Peidikeji\User\Enums\WithdrawStatus;
|
|
use Peidikeji\User\Filters\WithdrawFilter;
|
|
|
|
class UserWithdraw extends Model
|
|
{
|
|
use HasDateTimeFormatter;
|
|
use Filterable;
|
|
|
|
protected $table = 'user_withdraw';
|
|
|
|
protected $fillable = ['balance', 'amount', 'payee', 'payer', 'remarks', 'status', 'user_id', 'finish_at', 'reason'];
|
|
|
|
protected $casts = [
|
|
'status' => WithdrawStatus::class,
|
|
'payee' => 'json',
|
|
'payer' => 'json',
|
|
];
|
|
|
|
protected $dates = ['finish_at'];
|
|
|
|
protected $attributes = [
|
|
'status' => WithdrawStatus::None
|
|
];
|
|
|
|
public function user()
|
|
{
|
|
return $this->belongsTo(User::class, 'user_id');
|
|
}
|
|
|
|
public function modelFilter()
|
|
{
|
|
return WithdrawFilter::class;
|
|
}
|
|
|
|
public function scopeSort($q)
|
|
{
|
|
return $q->latest('created_at');
|
|
}
|
|
}
|