monitoring-app/src/packages/administrativo/data/TImovel/TImovelSaveData.ts
2025-10-08 17:24:41 -03:00

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);