From 6beba0ba9324ac429c28f0182745cd858252e5c4 Mon Sep 17 00:00:00 2001 From: Arthur Bassi Date: Tue, 16 Jun 2026 09:11:58 -0300 Subject: [PATCH] fix(pm-schedules): handle empty save and delete responses --- .../pm-schedules/api/pm-schedules-api.ts | 21 +++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/src/domain/pm-schedules/api/pm-schedules-api.ts b/src/domain/pm-schedules/api/pm-schedules-api.ts index 6fbf00bd..ffb0fbb2 100644 --- a/src/domain/pm-schedules/api/pm-schedules-api.ts +++ b/src/domain/pm-schedules/api/pm-schedules-api.ts @@ -1,5 +1,5 @@ import { API_PATHS } from "@/api/api-paths"; -import { apiGet, apiPost } from "@/api/api"; +import { apiGet, apiPostNoContent } from "@/api/api"; import { handleApiResponse, handlePaginatedResponse } from "@/api/handle-api-response"; import { mapPmSchedule, @@ -45,12 +45,25 @@ export const pmSchedulesApi = { /** Create and update both use PMSchedule/Save — Id=0 for create. */ save: async (schedule: Partial & { id?: number }): Promise => { const payload = mapPmScheduleToSavePayload(schedule); - const data = await apiPost(API_PATHS.pmSchedule.save, payload); - return mapPmSchedule(handleApiResponse(data)); + await apiPostNoContent(API_PATHS.pmSchedule.save, payload); + + if (schedule.id && schedule.id > 0) { + return pmSchedulesApi.getById(schedule.id); + } + + return mapPmSchedule({ + Id: 0, + Name: payload.Name, + Frequency: payload.Frequency, + StartDate: payload.StartDate, + IsActive: payload.IsActive, + AssetId: payload.AssetId, + LocationId: payload.LocationId, + }); }, delete: async (id: string | number): Promise => { - await apiPost(API_PATHS.pmSchedule.delete, undefined, { + await apiPostNoContent(API_PATHS.pmSchedule.delete, undefined, { searchParams: { id }, }); },