35 lines
1.1 KiB
PHP
35 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace App\Services\Admin\Contracts;
|
|
|
|
use Illuminate\Pagination\LengthAwarePaginator;
|
|
|
|
interface AdminServiceInterface
|
|
{
|
|
public function getUserListWithStats(
|
|
string|\App\DTOs\UserFilterDto $monthOrFilters,
|
|
?string $search = null,
|
|
?string $status = '1',
|
|
?string $role = null,
|
|
?string $department = null,
|
|
?string $flagSend = null
|
|
): array;
|
|
|
|
public function getUserTransactions(string $msnv, string $selectedMonth): LengthAwarePaginator;
|
|
|
|
public function createUser(array $data): void;
|
|
|
|
public function updateUser(string|\App\Models\User $userOrMsnv, array $data): void;
|
|
|
|
public function deactivateUser(string $msnv): void;
|
|
|
|
public function resetAllCards(): void;
|
|
|
|
public function updateAddCard(int $id, array $data): void;
|
|
|
|
public function getUserByMsnv(string $msnv): \App\Models\User;
|
|
|
|
public function getAddCardsHistory(string $buyerMsnv, ?string $selectedMonth = null): \Illuminate\Database\Eloquent\Collection;
|
|
|
|
public function getActiveAdmins(): \Illuminate\Database\Eloquent\Collection;
|
|
} |