store-manage/app/Models/StoreMasterCommission.php

46 lines
1.1 KiB
PHP

<?php
namespace App\Models;
use App\Enums\CheckStatus;
use App\Traits\HasCheckable;
use App\Traits\HasDateTimeFormatter;
use EloquentFilter\Filterable;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class StoreMasterCommission extends Model
{
use Filterable, HasCheckable, HasDateTimeFormatter, HasFactory;
protected $fillable = [
'month',
'store_id',
'store_master_id',
'commission',
'daily_expenses',
'employee_expenses',
'other_expenses',
];
/**
* 仅查询审核通过的店长佣金提成
*/
public function scopeOnlyApproved(Builder $query): void
{
$query->whereRelation('workflow', 'check_status', '=', CheckStatus::Success);
}
public function store()
{
return $this->belongsTo(Store::class, 'store_id');
}
public function master(): BelongsTo
{
return $this->belongsTo(Employee::class, 'store_master_id');
}
}