From b4d48c96d474349507f69c80c040405a5b1a033c Mon Sep 17 00:00:00 2001 From: David Bomba Date: Fri, 11 Aug 2023 18:04:41 +1000 Subject: [PATCH] Updates for static analysis --- app/Models/CompanyUser.php | 62 +++++++++++++++++++++++++++++--------- 1 file changed, 48 insertions(+), 14 deletions(-) diff --git a/app/Models/CompanyUser.php b/app/Models/CompanyUser.php index 1dfe71544f3e..101aeb0c9e31 100644 --- a/app/Models/CompanyUser.php +++ b/app/Models/CompanyUser.php @@ -13,6 +13,8 @@ namespace App\Models; use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\Relations\Pivot; +use Awobaz\Compoships\Exceptions\InvalidUsageException; +use Awobaz\Compoships\Database\Eloquent\Relations\HasMany; /** * App\Models\CompanyUser @@ -44,6 +46,28 @@ use Illuminate\Database\Eloquent\Relations\Pivot; * @property-read \App\Models\User $user * @property-read \Illuminate\Database\Eloquent\Collection $users * @property-read int|null $users_count + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser authCompany() + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser newModelQuery() + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser newQuery() + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser onlyTrashed() + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser query() + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereAccountId($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereCompanyId($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereCreatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereDeletedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereId($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereIsAdmin($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereIsLocked($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereIsOwner($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereNinjaPortalUrl($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereNotifications($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser wherePermissions($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser wherePermissionsUpdatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereReactSettings($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereSettings($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereSlackWebhookUrl($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereUpdatedAt($value) + * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser whereUserId($value) * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser withTrashed() * @method static \Illuminate\Database\Eloquent\Builder|CompanyUser withoutTrashed() * @property-read \Illuminate\Database\Eloquent\Collection $token @@ -107,53 +131,63 @@ class CompanyUser extends Pivot } /** - * - * @return \Illuminate\Database\Eloquent\Relations\HasOne + * @return \Awobaz\Compoships\Database\Eloquent\Relations\HasOne */ - public function user_pivot(): \Illuminate\Database\Eloquent\Relations\HasOne + + public function user_pivot() { return $this->hasOne(User::class)->withPivot('permissions', 'settings', 'react_settings', 'is_admin', 'is_owner', 'is_locked', 'slack_webhook_url', 'migrating'); } /** - * - * @return \Illuminate\Database\Eloquent\Relations\HasOne + * @return \Awobaz\Compoships\Database\Eloquent\Relations\HasOne */ - public function company_pivot(): \Illuminate\Database\Eloquent\Relations\HasOne + public function company_pivot() { return $this->hasOne(Company::class)->withPivot('permissions', 'settings', 'react_settings', 'is_admin', 'is_owner', 'is_locked', 'slack_webhook_url', 'migrating'); } - public function user(): \Illuminate\Database\Eloquent\Relations\BelongsTo + /** + * @return \Illuminate\Database\Eloquent\Relations\BelongsTo + */ + public function user() { return $this->belongsTo(User::class)->withTrashed(); } - public function company(): \Illuminate\Database\Eloquent\Relations\BelongsTo + /** + * @return \Illuminate\Database\Eloquent\Relations\BelongsTo + */ + public function company() { return $this->belongsTo(Company::class); } /** - * @return \Illuminate\Database\Eloquent\Relations\HasMany + * @return HasMany */ - public function users(): \Illuminate\Database\Eloquent\Relations\HasMany + public function users() { return $this->hasMany(User::class)->withTrashed(); } - /*todo monitor this function - may fail under certain conditions*/ + /** + * @return HasMany + */ public function token() { return $this->hasMany(CompanyToken::class, 'user_id', 'user_id'); } - public function tokens(): \Illuminate\Database\Eloquent\Relations\HasMany + /** + * @return HasMany + */ + public function tokens() { return $this->hasMany(CompanyToken::class, 'user_id', 'user_id'); } - public function scopeAuthCompany($query) + public function scopeAuthCompany($query): \Illuminate\Database\Eloquent\Builder { /** @var \App\Models\User $user */ $user = auth()->user(); @@ -168,7 +202,7 @@ class CompanyUser extends Pivot * * @return bool */ - public function portalType():bool + public function portalType(): bool { return isset($this->react_settings->react_notification_link) && $this->react_settings->react_notification_link; }