<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\SoftDeletes; /** * App\Models\ConfigType * * @property int $id * @property string $name 配置类型名称 * @property string $alias 别名(代码获取配置使用) * @property int $parent 父级 * @property string|null $tips 提示 * @property int $listorder 排序 * @property \Illuminate\Support\Carbon|null $created_at * @property \Illuminate\Support\Carbon|null $updated_at * @property string|null $deleted_at * @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\Config[] $configs * @property-read \App\Models\ConfigType $parentType * @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\ConfigType[] $subTypes * @method static bool|null forceDelete() * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType newModelQuery() * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType newQuery() * @method static \Illuminate\Database\Query\Builder|\App\Models\ConfigType onlyTrashed() * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType query() * @method static bool|null restore() * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereAlias($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereCreatedAt($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereDeletedAt($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereId($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereListorder($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereName($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereParent($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereTips($value) * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereUpdatedAt($value) * @method static \Illuminate\Database\Query\Builder|\App\Models\ConfigType withTrashed() * @method static \Illuminate\Database\Query\Builder|\App\Models\ConfigType withoutTrashed() * @mixin \Eloquent */ class ConfigType extends Model { use SoftDeletes; protected $table = 'config_types'; public function configs() { return $this->hasMany(Config::class, 'type_id')->orderBy('listorder'); } public function subTypes() { return $this->hasMany(ConfigType::class, 'parent')->orderBy('listorder'); } public function parentType() { return $this->belongsTo(ConfigType::class, 'parent')->orderBy('listorder'); } }