diff --git a/app/Http/Controllers/BaseController.php b/app/Http/Controllers/BaseController.php index ff93209bc00a..84a0608a9b47 100644 --- a/app/Http/Controllers/BaseController.php +++ b/app/Http/Controllers/BaseController.php @@ -11,36 +11,36 @@ namespace App\Http\Controllers; -use App\Models\User; -use App\Utils\Ninja; -use App\Models\Client; -use App\Models\Design; -use App\Utils\Statics; use App\Models\Account; -use App\Models\TaxRate; -use App\Models\Webhook; -use App\Models\Scheduler; -use App\Models\TaskStatus; -use App\Models\PaymentTerm; -use Illuminate\Support\Str; -use League\Fractal\Manager; -use App\Models\GroupSetting; -use Illuminate\Http\Response; -use App\Models\CompanyGateway; -use App\Utils\Traits\AppSetup; use App\Models\BankIntegration; use App\Models\BankTransaction; -use App\Models\ExpenseCategory; -use League\Fractal\Resource\Item; use App\Models\BankTransactionRule; -use Illuminate\Support\Facades\Auth; +use App\Models\Client; +use App\Models\CompanyGateway; +use App\Models\Design; +use App\Models\ExpenseCategory; +use App\Models\GroupSetting; +use App\Models\PaymentTerm; +use App\Models\Scheduler; +use App\Models\TaskStatus; +use App\Models\TaxRate; +use App\Models\User; +use App\Models\Webhook; use App\Transformers\ArraySerializer; use App\Transformers\EntityTransformer; -use League\Fractal\Resource\Collection; -use Illuminate\Database\Eloquent\Builder; -use League\Fractal\Serializer\JsonApiSerializer; -use League\Fractal\Pagination\IlluminatePaginatorAdapter; +use App\Utils\Ninja; +use App\Utils\Statics; +use App\Utils\Traits\AppSetup; use Illuminate\Contracts\Container\BindingResolutionException; +use Illuminate\Database\Eloquent\Builder; +use Illuminate\Http\Response; +use Illuminate\Support\Facades\Auth; +use Illuminate\Support\Str; +use League\Fractal\Manager; +use League\Fractal\Pagination\IlluminatePaginatorAdapter; +use League\Fractal\Resource\Collection; +use League\Fractal\Resource\Item; +use League\Fractal\Serializer\JsonApiSerializer; /** * Class BaseController. @@ -298,6 +298,7 @@ class BaseController extends Controller */ protected function refreshResponse($query) { + /** @var \App\Models\User $user */ $user = auth()->user(); $this->manager->parseIncludes($this->first_load); @@ -536,7 +537,9 @@ class BaseController extends Controller $paginator = $query->paginate($limit); - $query = $paginator->getCollection(); + /** @phpstan-ignore-next-line */ + $query = $paginator->getCollection(); /** @phpstan-ignore-line */ + $resource = new Collection($query, $transformer, $this->entity_type); @@ -568,10 +571,11 @@ class BaseController extends Controller * Mini Load Query * * @param Builder $query - * + * */ protected function miniLoadResponse($query) { + /** @var \App\Models\User $user */ $user = auth()->user(); $this->serializer = request()->input('serializer') ?: EntityTransformer::API_SERIALIZER_ARRAY; @@ -638,6 +642,8 @@ class BaseController extends Controller $limit = $this->resolveQueryLimit(); $paginator = $query->paginate($limit); + + /** @phpstan-ignore-next-line */ $query = $paginator->getCollection(); $resource = new Collection($query, $transformer, $this->entity_type); $resource->setPaginator(new IlluminatePaginatorAdapter($paginator)); @@ -671,10 +677,11 @@ class BaseController extends Controller * Passes back the miniloaded data response * * @param Builder $query - * + * */ protected function timeConstrainedResponse($query) { + /** @var \App\Models\User $user */ $user = auth()->user(); if ($user->getCompany()->is_large) { @@ -902,19 +909,24 @@ class BaseController extends Controller $limit = $this->resolveQueryLimit(); $paginator = $query->paginate($limit); + + /** @phpstan-ignore-next-line */ $query = $paginator->getCollection(); + $resource = new Collection($query, $transformer, $this->entity_type); $resource->setPaginator(new IlluminatePaginatorAdapter($paginator)); - } else { - $resource = new Collection($query, $transformer, $this->entity_type); - } + } + + // else { + // $resource = new Collection($query, $transformer, $this->entity_type); + // } return $this->response($this->manager->createData($resource)->toArray()); } /** * List response - * + * * @param Builder $query */ protected function listResponse($query) diff --git a/app/Models/CompanyToken.php b/app/Models/CompanyToken.php index 3a6dac72e768..d4b879a9eb23 100644 --- a/app/Models/CompanyToken.php +++ b/app/Models/CompanyToken.php @@ -25,8 +25,8 @@ use Illuminate\Database\Eloquent\SoftDeletes; * @property int|null $created_at * @property int|null $updated_at * @property int|null $deleted_at - * @property int $is_deleted - * @property int $is_system + * @property bool $is_deleted + * @property bool $is_system * @property-read \App\Models\Account $account * @property-read \App\Models\Company $company * @property-read \App\Models\CompanyUser|null $company_user diff --git a/app/Models/Traits/Excludable.php b/app/Models/Traits/Excludable.php index ba8f87431da2..d5d4c73f61dc 100644 --- a/app/Models/Traits/Excludable.php +++ b/app/Models/Traits/Excludable.php @@ -25,12 +25,12 @@ trait Excludable /** * Exclude an array of elements from the result. - * @param $query - * @param $columns + * @param Builder $query + * @param array $columns * * @return mixed */ - public function scopeExclude($query, $columns) + public function scopeExclude($query, $columns): \Illuminate\Database\Eloquent\Builder { return $query->select(array_diff($this->getTableColumns(), (array) $columns)); } diff --git a/app/Models/User.php b/app/Models/User.php index 4ce87a66e1ee..6567d8f1413b 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -148,7 +148,7 @@ use Laracasts\Presenter\PresentableTrait; * @property-read \Illuminate\Notifications\DatabaseNotificationCollection $notifications * @property-read \Illuminate\Database\Eloquent\Collection $tokens * @method bool hasPermissionTo(string $permission) - * @method \Illuminate\Database\Eloquent\Builder|Company getCompany() + * @method \App\Models\Company getCompany() * @method bool hasExcludedPermissions(array $matched_permission, array $excluded_permissions) * @method bool isAdmin() * @method bool isSuperUser()