Files
water-back/modules/Mall/Models/Region.php
2023-01-12 14:47:38 +08:00

63 lines
1.4 KiB
PHP

<?php
namespace Modules\Mall\Models;
use App\Models\Model;
use GeneaLabs\LaravelModelCaching\Traits\Cachable;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
class Region extends Model
{
use Cachable;
protected $table = 'mall_regions';
public $timestamps = false;
/**
* Notes: 上级地区
* @Author: <C.Jason>
* @Date : 2019/11/19 3:01 下午
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
*/
public function parent(): BelongsTo
{
return $this->belongsTo(__CLASS__, 'parent_id');
}
/**
* Notes: 下级地区
* @Author: <C.Jason>
* @Date : 2019/11/19 3:01 下午
* @return \Illuminate\Database\Eloquent\Relations\HasMany
*/
public function children(): HasMany
{
return $this->hasMany(__CLASS__, 'parent_id');
}
/**
* Notes : 获取区划层级名称
* @Date : 2021/5/6 1:47 下午
* @Author : < Jason.C >
* @return string
*/
public function getDepthNameAttribute(): string
{
switch ($this->depth) {
case 0:
return '国家级';
case 1:
return '省级';
case 2:
return '市级';
case 3:
return '区县';
default:
return '';
}
}
}