'integer', 'level' => 'integer', 'status' => 'integer', 'balance' => 'decimal:4', 'frozen_balance' => 'decimal:4', 'deposit_fee_rate' => 'decimal:4', 'withdraw_fee_rate' => 'decimal:4', 'flow_commission_rate' => 'decimal:4', 'profit_commission_rate' => 'decimal:4', 'last_login_at' => 'datetime', ]; public function parent() { return $this->belongsTo(self::class, 'parent_id'); } public function domains() { return $this->hasMany(AgentDomain::class); } public function token() { return $this->hasOne(AgentToken::class); } public function children() { return $this->hasMany(self::class, 'parent_id'); } public function members() { return $this->hasMany(User::class, 'agent_id'); } public function getLevelTextAttribute(): string { return (int) $this->level === self::LEVEL_ONE ? '一级代理' : '二级代理'; } public function getCanCreateSubAgentAttribute(): bool { return (int) $this->level === self::LEVEL_ONE; } }