6
0
Fork 0
jiqu-library-server/app/Models/BalanceLog.php

62 lines
1.4 KiB
PHP

<?php
namespace App\Models;
use Dcat\Admin\Traits\HasDateTimeFormatter;
use EloquentFilter\Filterable;
use Illuminate\Database\Eloquent\Model;
class BalanceLog extends Model
{
use Filterable;
use HasDateTimeFormatter;
public const ACTION_MIGRATE_OLD = 0; // 老数据迁移
public const ACTION_ORDER_PAID = 1;
public const ACTION_ORDER_CANCELLED = 2;
public const ACTION_ORDER_AFTER_SALE = 3;
public const ACTION_WALLET_IN = 4;
public const ACTION_TRANSFER_OUT = 5;
public const ACTION_TRANSFER_IN = 6;
public const ACTION_ADMIN_RECHARGE = 7;
public const ACTION_ADMIN_DEDUCTION = 8;
/**
* @var array
*/
protected $fillable = [
'user_id',
'loggable_id',
'loggable_type',
'action',
'before_balance',
'change_balance',
'remarks',
];
public function user()
{
return $this->belongsTo(User::class);
}
/**
* 转账记录
*
* @return void
*/
public function scopeOnlyTransfer($query)
{
return $query->whereIn('action', [self::ACTION_TRANSFER_OUT, self::ACTION_TRANSFER_IN]);
}
/**
* 获取变动金额
*
* @return string
*/
public function getChangeBalanceFormatAttribute()
{
return trim_trailing_zeros(bcdiv($this->attributes['change_balance'], 100, 2));
}
}