<?php

namespace App\Services;

use App\Repositories\Interfaces\ModuleRepositoryInterface;
use App\Repositories\Interfaces\PermissionRepositoryInterface;

class PermissionService
{

    protected $permissionRepository;
    protected $moduleRepository;

    public function __construct(PermissionRepositoryInterface $permissionRepository, ModuleRepositoryInterface $moduleRepository)
    {
        $this->permissionRepository = $permissionRepository;
        $this->moduleRepository = $moduleRepository;
    }

    public function all()
    {
        $modules = $this->moduleRepository->all();

        foreach ($modules as $key => $module) {
            $modules[$key]->permissions = $this->permissionRepository->getByModule($module->id);
        }

        return $modules;
    }
}
