HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers54/csbinstallatietechniek.nl/app/Products/ProductService.php
<?php


namespace App\Products;


use App\Base\Service;
use App\Products\Models\Product;
use Carbon\Carbon;

final class ProductService extends Service
{

    /**
     * Base query for get Product from DB
     *
     * @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
     */
    private function baseProductQuery()
    {
        return Product::where('active', 1)
            ->with('translation', 'images')
            ->orderBy('lft','asc');
    }

    /**
     * Get all Products
     *
     * @return \Illuminate\Database\Eloquent\Collection
     */
    public function getProducts()
    {
        return $this->baseProductQuery()->get();
    }

    /**
     * Get Products paginated per $amount on a page
     *
     * @param  int  $amountPerPage
     * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator
     */
    public function getProductsPaginated($amountPerPage = 12)
    {
        return $this->baseProductQuery()->paginate($amountPerPage);
    }

}