where('status', 'active'); } /** * Scope a query to only include hospital data. * * @param \Illuminate\Database\Eloquent\Builder $query * @return void */ public function scopeHospital($query) { $query->where('organizations.type', 'hospital'); } public function setCodeAttribute($value) { $this->attributes['code'] = !empty($value) ? $value : Str::upper(Str::random('6')); } public function getMetaAttribute() { $orgMeta = []; foreach ($this->metas as $meta) { $orgMeta[$meta->type] = $meta->value; } return (object) $orgMeta; } public function addresses() { return $this->morphMany(Address::class, 'addressable'); } public function currentAddress() { return $this->belongsTo(Address::class, 'main_address_id'); } public function parent() { return $this->belongsTo(Organization::class, 'part_of', 'id'); } public function metas() { return $this->morphMany(Meta::class, 'metaable'); } public function practitionerRoles() { return $this->hasMany(PractitionerRole::class, 'organization_id'); } public function claims() { return $this->hasMany(Claim::class, 'organization_id', 'id'); } public function claim_request() { return $this->hasMany(ClaimRequest::class, 'organization_id', 'id'); } }