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/MdnDirecteur/hours.komma.cloud/app/Komma/Companies/CompanyRepository.php
<?php


namespace App\Komma\Companies;


class CompanyRepository
{

    /**
     * @param $id
     * @param $search
     * @return mixed
     */
    public function fullCompany($id, $search)
    {
        return Company::with(['Acquisition', 'Kind', 'Projects' => function ($query) use ($search) {
            $query->where('name', 'LIKE', '%' . $search . '%')->with([
                'ProjectWorkers',
                'ProjectWorkers.User',
                'Subprojects',
                'Subprojects.Tasks',
                'Subprojects.Tasks.Hours',
                'Subprojects.Tasks.Hours.User',
            ])->orderBy('archived', 'asc')->orderBy('name', 'asc');
        }])->find($id);
    }


    /**
     * @param $search
     * @return mixed
     */
    public function allCompanies($search)
    {
        $searchArray = explode(" ", $search);
        return Company::with([
            'Contacts',
            'Projects' => function ($query){
                $query->where('archived', '0');
            }
        ])
            ->where(function ($query) use ($searchArray) {
                for ($i = 0; $i < count($searchArray); $i++){
                    if ($i == 0) {
                        $query->where('name', 'LIKE', '%' .$searchArray[$i] . '%');
                    } else {
                        $query->Where('name', 'LIKE', '%' .$searchArray[$i] . '%');
                    }
                }
            })
            ->orderBy('name', 'asc');
    }
}