ConfigType.php 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. namespace App\Models;
  3. use Illuminate\Database\Eloquent\Model;
  4. use Illuminate\Database\Eloquent\SoftDeletes;
  5. /**
  6. * App\Models\ConfigType
  7. *
  8. * @property int $id
  9. * @property string $name 配置类型名称
  10. * @property string $alias 别名(代码获取配置使用)
  11. * @property int $parent 父级
  12. * @property string|null $tips 提示
  13. * @property int $listorder 排序
  14. * @property \Illuminate\Support\Carbon|null $created_at
  15. * @property \Illuminate\Support\Carbon|null $updated_at
  16. * @property string|null $deleted_at
  17. * @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\Config[] $configs
  18. * @property-read \App\Models\ConfigType $parentType
  19. * @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\ConfigType[] $subTypes
  20. * @method static bool|null forceDelete()
  21. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType newModelQuery()
  22. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType newQuery()
  23. * @method static \Illuminate\Database\Query\Builder|\App\Models\ConfigType onlyTrashed()
  24. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType query()
  25. * @method static bool|null restore()
  26. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereAlias($value)
  27. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereCreatedAt($value)
  28. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereDeletedAt($value)
  29. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereId($value)
  30. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereListorder($value)
  31. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereName($value)
  32. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereParent($value)
  33. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereTips($value)
  34. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\ConfigType whereUpdatedAt($value)
  35. * @method static \Illuminate\Database\Query\Builder|\App\Models\ConfigType withTrashed()
  36. * @method static \Illuminate\Database\Query\Builder|\App\Models\ConfigType withoutTrashed()
  37. * @mixin \Eloquent
  38. */
  39. class ConfigType extends Model
  40. {
  41. use SoftDeletes;
  42. protected $table = 'config_types';
  43. public function configs()
  44. {
  45. return $this->hasMany(Config::class, 'type_id')->orderBy('listorder');
  46. }
  47. public function subTypes()
  48. {
  49. return $this->hasMany(ConfigType::class, 'parent')->orderBy('listorder');
  50. }
  51. public function parentType()
  52. {
  53. return $this->belongsTo(ConfigType::class, 'parent')->orderBy('listorder');
  54. }
  55. }