| Server IP : 65.108.144.40 / Your IP : 216.73.217.165 Web Server : Apache/2.4.52 (Ubuntu) System : Linux ubuntu-8gb-hel1-1 5.15.0-173-generic #183-Ubuntu SMP Fri Mar 6 13:29:34 UTC 2026 x86_64 User : dev ( 1000) PHP Version : 8.2.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/project-slim/app/Repositories/Interfaces/ |
Upload File : |
<?php
namespace App\Repositories\Interfaces;
use App\Models\Company;
interface CompanyRepositoryInterface {
public function findById(int $id): ?Company;
public function findAll(int $page = 1, int $limit = 10, array $filters = []): array;
public function create(array $data): Company;
public function update(int $id, array $data): ?Company;
public function delete(int $id): bool;
public function updateStatus(int $id, string $status): bool;
public function getUsers(int $companyId, int $page = 1, int $limit = 10): array;
public function addUser(int $companyId, int $userId, string $role = 'employee'): bool;
public function removeUser(int $companyId, int $userId): bool;
public function getStatistics(int $companyId): array;
public function getReports(int $companyId, int $page = 1, int $limit = 10, array $filters = []): array;
public function count(array $filters = []): int;
}