namespace App\Repositories;
use App\Models\User;
use DesignPattern\LaravelMakeRepositoryService\Repository\BaseRepository;
use App\Repositories\UserRepositoryInterface;
class UserRepository extends BaseRepository implements UserRepositoryInterface
{
/**
* Specify Model class name
*
* @return string
*/
public function model()
{
return User::class;
}
public function getFindUserCompany($id) {
return $this->model->join('companies as c', 'cp.id','=','users.company_id')->where('c.id',$id)->first()
}
}
`
namespace App\Services;
use App\Repositories\UserRepository;
use App\Services\UserServiceInterface;
class UserService implements UserServiceInterface
{
protected $userRepository;
public function __construct(UserRepository $userRepository)
{
$this->userRepository = $userRepository;
}
public function getFindUser($id) {
return $this->userRepository->where('id',$id)->first();
}
}
`
namespace App\Http\Controllers;
use App\Services\UserService;
use Illuminate\Http\Request;
class UserController extends Controller
{
protected $userService;
public function __construct(UserService $userService)
{
$this->userService = $userService;
}
public function index (Request $request){
$user = $this->userService->getFindUser($request->id);
return $user;
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.