* +---------------------------------------------------------------------- */ namespace App\Http\Model\Position; use App\Http\Model\Admin\Admin; use App\Http\Model\BaseModel; use Illuminate\Database\Eloquent\Relations\HasOne; use Illuminate\Database\Query\Builder; /** * 企业职级 * Class Position. */ class Position extends BaseModel { /** * 表名. * @var string */ protected $table = 'rank'; /** * 主键. * @var string */ protected $primaryKey = 'id'; /** * 一对一关联职级类型. * @return HasOne */ public function cate() { return $this->hasOne(Category::class, 'id', 'cate_id'); } /** * 一对一关联用户名片. * @return HasOne */ public function card() { return $this->hasOne(Admin::class, 'id', 'card_id'); } /** * id作用域 * @param Builder $query */ public function scopeId($query, $value) { if (is_array($value)) { $query->whereIn('id', $value); } elseif ($value !== '') { $query->where('id', $value); } } /** * id作用域 * @param Builder $query */ public function scopeNotid($query, $value) { if (is_array($value)) { $query->whereNotIn('id', $value); } } /** * cate_id作用域 * @param Builder $query */ public function scopeCateId($query, $value) { if ($value !== '') { $query->where('cate_id', $value); } } /** * entid作用域 * @param Builder $query */ public function scopeEntid($query, $value) { if ($value !== '') { $query->where('entid', $value); } } /** * 职级. * @param Builder $query * @return mixed */ public function scopeNameLike($query, $value) { if ($value) { return $query->where('name', 'like', '%' . $value . '%'); } } }