EmployeeRepositoryInterface.php 779 B

12345678910111213141516171819202122232425262728
  1. <?php
  2. namespace App\Shop\Employees\Repositories\Interfaces;
  3. use Jsdecena\Baserepo\BaseRepositoryInterface;
  4. use App\Shop\Employees\Employee;
  5. use Illuminate\Support\Collection;
  6. interface EmployeeRepositoryInterface extends BaseRepositoryInterface
  7. {
  8. public function listEmployees(string $order = 'id', string $sort = 'desc'): Collection;
  9. public function createEmployee(array $params) : Employee;
  10. public function findEmployeeById(int $id) : Employee;
  11. public function updateEmployee(array $params): bool;
  12. public function syncRoles(array $roleIds);
  13. public function listRoles() : Collection;
  14. public function hasRole(string $roleName) : bool;
  15. public function isAuthUser(Employee $employee): bool;
  16. public function deleteEmployee() : bool;
  17. }