56 lines
1.6 KiB
JavaScript
56 lines
1.6 KiB
JavaScript
import { API, authHeader } from './apiSlice';
|
|
|
|
export const siteServicesApi = API.injectEndpoints({
|
|
endpoints: (build) => ({
|
|
getSiteServicesList: build.query({
|
|
query: ({ search = '', page = '' }) => {
|
|
let queryString = '?';
|
|
if (page) queryString += `page=${page}&perPage=20`;
|
|
else queryString += `perPage=20`;
|
|
if (search) queryString += `&search=${encodeURIComponent(search)}`;
|
|
return {
|
|
url: `/site-services/list${queryString}`,
|
|
};
|
|
},
|
|
refetchOnMountOrArgChange: true,
|
|
keepUnusedDataFor: 0,
|
|
}),
|
|
getSiteServices: build.query({
|
|
query: ({ siteServicesId }) => ({
|
|
url: `/site-services/${siteServicesId}`,
|
|
}),
|
|
}),
|
|
createSiteServices: build.mutation({
|
|
query: ({ data }) => ({
|
|
url: `/site-services/create`,
|
|
method: 'POST',
|
|
headers: authHeader(),
|
|
body: JSON.stringify(data),
|
|
}),
|
|
}),
|
|
updateSiteServices: build.mutation({
|
|
query: ({ siteServicesId, data }) => ({
|
|
url: `/site-services/${siteServicesId}`,
|
|
method: 'PUT',
|
|
headers: authHeader(),
|
|
body: JSON.stringify(data),
|
|
}),
|
|
}),
|
|
deleteSiteServices: build.mutation({
|
|
query: ({ siteServicesId }) => ({
|
|
url: `/site-services/${siteServicesId}`,
|
|
method: 'DELETE',
|
|
headers: authHeader(),
|
|
}),
|
|
}),
|
|
}),
|
|
});
|
|
|
|
export const {
|
|
useGetSiteServicesQuery,
|
|
useGetSiteServicesListQuery,
|
|
useCreateSiteServicesMutation,
|
|
useUpdateSiteServicesMutation,
|
|
useDeleteSiteServicesMutation,
|
|
} = siteServicesApi;
|