<?php namespace App\Http\Models; use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsToMany; use Illuminate\Database\Eloquent\Relations\HasOne; class Project extends Model { public function permissions(): BelongsToMany { return $this->belongsToMany( Permission::class, 'project_has_permissions', 'project_id', 'permission_id' ); } public function info(): HasOne { return $this->hasOne( ProjectInfo::class, 'project_id', 'id' ); } public function ae(): HasOne { return $this->hasOne( User::class, 'id', 'ae_id' ); } public function scopeProject(Builder $query, $projectIds = null) { if ($projectIds === null) { return $query; } return $query->where('id', $projectIds); } public function serialNo() { return sprintf('R%s-%s', date('Y'), $this->newQuery()->count()); } const COMPANY_TYPE = [ [ 'key' => 1, 'title' => '中小型企业' ], [ 'key' => 2, 'title' => '国企/上市公司' ] ]; }