DONE: layout letter with letterhead and footer, notification for newly...

This commit is contained in:
ISMAIL MASSERAN
2026-06-28 02:16:49 +00:00
parent 94ecbe5887
commit 034ecf947f
400 changed files with 29802 additions and 5446 deletions
@@ -0,0 +1,28 @@
<?php
namespace Modules\User\Repositories\Contracts;
use Illuminate\Database\Eloquent\Collection;
use Modules\User\Entities\Address;
interface AddressRepositoryInterface
{
public function getAllPaginated(int $perPage = 10, string $search = '');
public function getAllWithRelationsPaginated(
int $perPage = 10,
string $search = '',
string $sortBy = 'address_type',
string $sortOrder = 'asc'
);
public function getAllWithRelations(string $search = ''): Collection;
public function create(array $data): Address;
public function findById(string $id): ?Address;
public function delete(string $id): bool;
public function all(string $search = ''): Collection;
}
@@ -0,0 +1,21 @@
<?php
namespace Modules\User\Repositories\Contracts;
use Illuminate\Database\Eloquent\Collection;
use Modules\User\Entities\BankDetail;
interface BankDetailRepositoryInterface
{
public function getAllPaginated(int $perPage = 10, string $search = '');
public function getAllWithRelations(string $search = ''): Collection;
public function create(array $data): BankDetail;
public function findById(string $id): ?BankDetail;
public function delete(string $id): bool;
public function all(string $search = ''): Collection;
}
@@ -0,0 +1,30 @@
<?php
namespace Modules\User\Repositories\Contracts;
use Illuminate\Database\Eloquent\Collection;
use Modules\User\Entities\Bank;
interface BankRepositoryInterface
{
public function getAllPaginated(int $perPage = 10, string $search = '');
public function getAllWithRelationsPaginated(
int $perPage = 10,
string $search = '',
string $sortBy = 'name',
string $sortOrder = 'asc'
);
public function getAllWithRelations(string $search = ''): Collection;
public function create(array $data): Bank;
public function findById(string $id): ?Bank;
// public function delete(string $id): bool;
public function all(string $search = ''): Collection;
public function active(): Collection;
}
@@ -0,0 +1,28 @@
<?php
namespace Modules\User\Repositories\Contracts;
use Illuminate\Database\Eloquent\Collection;
use Modules\User\Entities\Employment;
interface EmploymentRepositoryInterface
{
public function getAllPaginated(int $perPage = 10, string $search = '');
public function getAllWithRelationsPaginated(
int $perPage = 10,
string $search = '',
string $sortBy = 'company_name',
string $sortOrder = 'asc'
);
public function getAllWithRelations(string $search = ''): Collection;
public function create(array $data): Employment;
public function findById(string $id): ?Employment;
public function delete(string $id): bool;
public function all(string $search = ''): Collection;
}
@@ -0,0 +1,28 @@
<?php
namespace Modules\User\Repositories\Contracts;
use Illuminate\Database\Eloquent\Collection;
use Modules\User\Entities\Heir;
interface HeirRepositoryInterface
{
public function getAllPaginated(int $perPage = 10, string $search = '');
// public function getAllWithRelationsPaginated(
// int $perPage = 10,
// string $search = '',
// string $sortBy = 'name',
// string $sortOrder = 'asc'
// );
public function getAllWithRelations(string $search = ''): Collection;
public function create(array $data): Heir;
public function findById(string $id): ?Heir;
public function delete(string $id): bool;
public function all(string $search = ''): Collection;
}
@@ -43,6 +43,27 @@ interface UserRepositoryInterface
*/
public function delete(string $id): bool;
/**
* Get soft-deleted Users with their relationships and pagination
*/
public function getDeletedWithRelationsPaginated(
int $perPage = 10,
string $search = '',
string $status = '',
string $sortBy = 'deleted_at',
string $sortOrder = 'desc'
);
/**
* Find soft-deleted User by ID
*/
public function findTrashedById(string $id): ?User;
/**
* Restore a soft-deleted User
*/
public function restore(string $id): bool;
/**
* Get all Users
*/