24 lines
No EOL
1.1 KiB
TypeScript
24 lines
No EOL
1.1 KiB
TypeScript
import { withClientErrorHandler } from "@/shared/actions/withClientErrorHandler/withClientErrorHandler";
|
|
import TImovelInterface from "../../interfaces/TImovel/TImovelInterface";
|
|
import ApiResponseInterface from "@/shared/services/api/interfaces/ApiResponseInterface";
|
|
import API from "@/shared/services/api/Api";
|
|
import { Methods } from "@/shared/services/api/enums/ApiMethodEnum";
|
|
|
|
async function executeTImovelSaveData(data: TImovelInterface): Promise<ApiResponseInterface> {
|
|
|
|
// Verifica se existe ID da cidade para decidir se é atualização (PUT) ou criação (POST)
|
|
const isUpdate = Boolean(data.imovel_id);
|
|
|
|
// Instancia o cliente da API para enviar a requisição
|
|
const api = new API();
|
|
|
|
// Executa a requisição para a API com o método apropriado e envia os dados no corpo
|
|
return await api.send({
|
|
method: isUpdate ? Methods.PUT : Methods.POST, // PUT se atualizar, POST se criar
|
|
endpoint: `administrativo/t_imovel/${data.imovel_id || ''}`, // endpoint dinâmico
|
|
body: data, // payload enviado para a API
|
|
});
|
|
|
|
}
|
|
|
|
export const TImovelSaveData = withClientErrorHandler(executeTImovelSaveData); |