api/1c, api/elt: use withHandleError util

This commit is contained in:
vchikalkin 2023-07-11 14:34:09 +03:00
parent 8c137229b8
commit ea7060745b
2 changed files with 11 additions and 35 deletions

View File

@ -1,25 +1,13 @@
import type { RequestTransTax, ResponseTransTax } from './types';
import getUrls from '@/config/urls';
import { withHandleError } from '@/utils/axios';
import type { QueryFunctionContext } from '@tanstack/react-query';
import type { AxiosError } from 'axios';
import axios from 'axios';
const { URL_1C_TRANSTAX } = getUrls();
export function getTransTax(payload: RequestTransTax, { signal }: QueryFunctionContext) {
return axios
.post<ResponseTransTax>(URL_1C_TRANSTAX, payload, { signal })
.then(({ data }) => {
if (data.error) {
throw new Error(data.error);
}
return data;
})
.catch((error: AxiosError | Error) => {
if (axios.isAxiosError(error)) {
// TODO: track error
throw new Error(error.message);
}
});
return withHandleError(
axios.post<ResponseTransTax>(URL_1C_TRANSTAX, payload, { signal }).then(({ data }) => data)
);
}

View File

@ -1,31 +1,19 @@
import type * as ELT from './types';
import getUrls from '@/config/urls';
import { withHandleError } from '@/utils/axios';
import type { QueryFunctionContext } from '@tanstack/react-query';
import type { AxiosError } from 'axios';
import axios from 'axios';
const { URL_ELT_KASKO, URL_ELT_OSAGO } = getUrls();
export async function getEltOsago(payload: ELT.RequestEltOsago, { signal }: QueryFunctionContext) {
return axios
.post<ELT.ResponseEltOsago>(URL_ELT_OSAGO, payload, { signal })
.then((response) => response.data)
.catch((error: AxiosError | Error) => {
if (axios.isAxiosError(error)) {
// TODO: track error
throw new Error(error.message);
}
});
return withHandleError(
axios.post<ELT.ResponseEltOsago>(URL_ELT_OSAGO, payload, { signal }).then(({ data }) => data)
);
}
export async function getEltKasko(payload: ELT.RequestEltKasko, { signal }: QueryFunctionContext) {
return axios
.post<ELT.ResponseEltKasko>(URL_ELT_KASKO, payload, { signal })
.then((response) => response.data)
.catch((error: AxiosError | Error) => {
if (axios.isAxiosError(error)) {
// TODO: track error
throw new Error(error.message);
}
});
return withHandleError(
axios.post<ELT.ResponseEltKasko>(URL_ELT_KASKO, payload, { signal }).then(({ data }) => data)
);
}