CoachUser.php 939 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace App\Models;
  3. use App\Enums\TechnicianStatus;
  4. use App\Traits\HasStateText;
  5. use Illuminate\Database\Eloquent\SoftDeletes;
  6. use Slowlyo\OwlAdmin\Models\BaseModel as Model;
  7. /**
  8. * 技师用户模型
  9. */
  10. class CoachUser extends Model
  11. {
  12. use HasStateText, SoftDeletes;
  13. protected $table = 'coach_users';
  14. protected $guarded = [];
  15. /**
  16. * 状态枚举类
  17. */
  18. protected string $stateEnumClass = TechnicianStatus::class;
  19. /**
  20. * 获取技师的基本信息
  21. */
  22. public function info()
  23. {
  24. return $this->belongsTo(CoachInfoRecord::class, 'info_record_id');
  25. }
  26. /**
  27. * 获取技师关联的用户
  28. */
  29. public function user()
  30. {
  31. return $this->belongsTo(MemberUser::class, 'user_id');
  32. }
  33. /**
  34. * 获取技师的统计数据
  35. */
  36. public function statistic()
  37. {
  38. return $this->hasOne(CoachStatistic::class, 'coach_id');
  39. }
  40. }