基础数据-校区服务

This commit is contained in:
Aether
2025-09-19 15:14:20 +08:00
parent 824510d57c
commit b69f14ded2
16 changed files with 757 additions and 300 deletions

View File

@@ -7,6 +7,7 @@ namespace App\Model;
use Aether\AetherModel;
use Carbon\Carbon;
use Hyperf\Database\Model\Builder;
use Hyperf\Database\Model\Relations\BelongsTo;
use Hyperf\Database\Model\Relations\HasMany;
/**
@@ -41,11 +42,26 @@ class Campus extends AetherModel
];
protected array $casts = [
'id' => 'integer',
'parent_id' => 'integer',
'level' => 'integer',
'status' => 'integer',
'created_at' => 'datetime',
'updated_at' => 'datetime',
'deleted_at' => 'datetime',
];
/**
* 获取父级校区.
* @return BelongsTo
*/
public function parent(): BelongsTo
{
return $this->belongsTo(Campus::class, 'parent_id', 'id')
->where('status', 1)
->whereNull('deleted_at');
}
/**
* 获取子校区.
*/
@@ -77,4 +93,12 @@ class Campus extends AetherModel
{
return $query->where('level', $level);
}
/**
* 查询启用的校区.
*/
public function scopeEnabled(Builder $query): Builder
{
return $query->where('status', 1);
}
}