31 lines
1.4 KiB
TypeScript
31 lines
1.4 KiB
TypeScript
'use server'
|
|
// Indica que este módulo será executado no lado do servidor (Server Action do Next.js)
|
|
|
|
import { Methods } from '@/shared/services/api/enums/ApiMethodEnum';
|
|
// Importa o enumerador que contém os métodos HTTP padronizados (GET, POST, PUT, DELETE)
|
|
|
|
import API from '@/shared/services/api/Api';
|
|
// Importa a classe responsável por realizar requisições HTTP à API backend
|
|
|
|
import { withClientErrorHandler } from '@/withClientErrorHandler/withClientErrorHandler';
|
|
// Importa o wrapper que padroniza o tratamento de erros e respostas para o cliente
|
|
|
|
// Função principal responsável por buscar um usuário específico pelo seu ID
|
|
async function executeLogIndexByIDData(client_id: number) {
|
|
|
|
// Cria uma nova instância da classe de comunicação com a API
|
|
const api = new API();
|
|
|
|
// Envia uma requisição GET ao endpoint que retorna os dados de um usuário específico
|
|
const response = await api.send({
|
|
'method': Methods.GET, // Define o método HTTP da requisição
|
|
'endpoint': `administrativo/log/${client_id}` // Monta dinamicamente o endpoint com o ID do usuário
|
|
});
|
|
|
|
// Retorna a resposta recebida da API (dados do usuário ou erro)
|
|
return response;
|
|
}
|
|
|
|
// Exporta a função encapsulada com o handler de erro
|
|
// Isso garante que exceções sejam tratadas de forma padronizada na camada superior
|
|
export const LogIndexByClientIDData = withClientErrorHandler(executeLogIndexByIDData);
|