diff --git a/src/entities/transaction/api/use-all-transaction-cancel-info-mutation.ts b/src/entities/transaction/api/use-all-transaction-cancel-info-mutation.ts index 895a157..f2de448 100644 --- a/src/entities/transaction/api/use-all-transaction-cancel-info-mutation.ts +++ b/src/entities/transaction/api/use-all-transaction-cancel-info-mutation.ts @@ -10,11 +10,20 @@ import { useMutation, UseMutationOptions } from '@tanstack/react-query'; - +import { getHeaderUserAgent } from '@/shared/constants/url'; export const allTransactionCancelInfo = (params: AllTransactionCancelInfoParams) => { + let headerOptions = { + menuId: 31, + apiType: 'SELECT' + }; + let options = { + headers: { + 'X-User-Agent': getHeaderUserAgent(headerOptions) + } + }; return resultify( - axios.post(API_URL_TRANSACTION.allTransactionCancelInfo(), params), + axios.post(API_URL_TRANSACTION.allTransactionCancelInfo(), params, options), ); }; diff --git a/src/entities/transaction/api/use-all-transaction-cancel-mutation.ts b/src/entities/transaction/api/use-all-transaction-cancel-mutation.ts index 706ac2f..59d6265 100644 --- a/src/entities/transaction/api/use-all-transaction-cancel-mutation.ts +++ b/src/entities/transaction/api/use-all-transaction-cancel-mutation.ts @@ -10,10 +10,20 @@ import { useMutation, UseMutationOptions } from '@tanstack/react-query'; +import { getHeaderUserAgent } from '@/shared/constants/url'; export const allTransactionCancel = (params: AllTransactionCancelParams) => { + let headerOptions = { + menuId: 31, + apiType: 'SELECT' + }; + let options = { + headers: { + 'X-User-Agent': getHeaderUserAgent(headerOptions) + } + }; return resultify( - axios.post(API_URL_TRANSACTION.allTransactionCancel(), params), + axios.post(API_URL_TRANSACTION.allTransactionCancel(), params, options), ); }; diff --git a/src/entities/transaction/api/use-all-transaction-detail-mutation.ts b/src/entities/transaction/api/use-all-transaction-detail-mutation.ts index e957345..8341f29 100644 --- a/src/entities/transaction/api/use-all-transaction-detail-mutation.ts +++ b/src/entities/transaction/api/use-all-transaction-detail-mutation.ts @@ -10,10 +10,20 @@ import { useMutation, UseMutationOptions } from '@tanstack/react-query'; +import { getHeaderUserAgent } from '@/shared/constants/url'; export const allTransactionDetail = (params: AllTransactionDetailParams) => { + let headerOptions = { + menuId: 31, + apiType: 'SELECT' + }; + let options = { + headers: { + 'X-User-Agent': getHeaderUserAgent(headerOptions) + } + }; return resultify( - axios.post(API_URL_TRANSACTION.allTransactionDetail(), params), + axios.post(API_URL_TRANSACTION.allTransactionDetail(), params, options), ); }; diff --git a/src/entities/transaction/api/use-all-transaction-list-mutation.ts b/src/entities/transaction/api/use-all-transaction-list-mutation.ts index 40cc8c4..34de288 100644 --- a/src/entities/transaction/api/use-all-transaction-list-mutation.ts +++ b/src/entities/transaction/api/use-all-transaction-list-mutation.ts @@ -10,11 +10,20 @@ import { useMutation, UseMutationOptions } from '@tanstack/react-query'; +import { getHeaderUserAgent } from '@/shared/constants/url'; export const allTransactionList = (params: AllTransactionListParams) => { - //axios.AxiosHeaders[] + let headerOptions = { + menuId: 31, + apiType: 'SELECT' + }; + let options = { + headers: { + 'X-User-Agent': getHeaderUserAgent(headerOptions) + } + }; return resultify( - axios.post(API_URL_TRANSACTION.allTransactionList(), params), + axios.post(API_URL_TRANSACTION.allTransactionList(), params, options), ); }; diff --git a/src/entities/transaction/api/use-all-transaction-list-summary-mutation.ts b/src/entities/transaction/api/use-all-transaction-list-summary-mutation.ts index 1e01d1d..fa4be7b 100644 --- a/src/entities/transaction/api/use-all-transaction-list-summary-mutation.ts +++ b/src/entities/transaction/api/use-all-transaction-list-summary-mutation.ts @@ -10,10 +10,20 @@ import { useMutation, UseMutationOptions } from '@tanstack/react-query'; +import { getHeaderUserAgent } from '@/shared/constants/url'; export const allTransactionListSummary = (params: AllTransactionListSummaryParams) => { + let headerOptions = { + menuId: 31, + apiType: 'SELECT' + }; + let options = { + headers: { + 'X-User-Agent': getHeaderUserAgent(headerOptions) + } + }; return resultify( - axios.post(API_URL_TRANSACTION.allTransactionListSummary(), params), + axios.post(API_URL_TRANSACTION.allTransactionListSummary(), params, options), ); }; diff --git a/src/entities/transaction/api/use-cash-receipt-detail-mutation.ts b/src/entities/transaction/api/use-cash-receipt-detail-mutation.ts index ac7f5c1..5220411 100644 --- a/src/entities/transaction/api/use-cash-receipt-detail-mutation.ts +++ b/src/entities/transaction/api/use-cash-receipt-detail-mutation.ts @@ -10,10 +10,20 @@ import { useMutation, UseMutationOptions } from '@tanstack/react-query'; +import { getHeaderUserAgent } from '@/shared/constants/url'; export const cashReceiptDetail = (params: CashReceiptDetailParams) => { + let headerOptions = { + menuId: 32, + apiType: 'SELECT' + }; + let options = { + headers: { + 'X-User-Agent': getHeaderUserAgent(headerOptions) + } + }; return resultify( - axios.post(API_URL_TRANSACTION.cashReceiptDetail(), params), + axios.post(API_URL_TRANSACTION.cashReceiptDetail(), params, options), ); }; diff --git a/src/entities/transaction/api/use-cash-receipt-list-mutation.ts b/src/entities/transaction/api/use-cash-receipt-list-mutation.ts index a0fb875..e194d6f 100644 --- a/src/entities/transaction/api/use-cash-receipt-list-mutation.ts +++ b/src/entities/transaction/api/use-cash-receipt-list-mutation.ts @@ -10,10 +10,20 @@ import { useMutation, UseMutationOptions } from '@tanstack/react-query'; +import { getHeaderUserAgent } from '@/shared/constants/url'; export const cashReceiptList = (params: CashReceiptListParams) => { + let headerOptions = { + menuId: 32, + apiType: 'SELECT' + }; + let options = { + headers: { + 'X-User-Agent': getHeaderUserAgent(headerOptions) + } + }; return resultify( - axios.post(API_URL_TRANSACTION.cashReceiptList(), params), + axios.post(API_URL_TRANSACTION.cashReceiptList(), params, options), ); }; diff --git a/src/entities/transaction/api/use-cash-receipt-manual-issue-mutation.ts b/src/entities/transaction/api/use-cash-receipt-manual-issue-mutation.ts index 161d7d7..f2b541e 100644 --- a/src/entities/transaction/api/use-cash-receipt-manual-issue-mutation.ts +++ b/src/entities/transaction/api/use-cash-receipt-manual-issue-mutation.ts @@ -10,10 +10,20 @@ import { useMutation, UseMutationOptions } from '@tanstack/react-query'; +import { getHeaderUserAgent } from '@/shared/constants/url'; export const cashReceiptManualIssue = (params: CashReceiptManualIssueParams) => { + let headerOptions = { + menuId: 32, + apiType: 'INSERT' + }; + let options = { + headers: { + 'X-User-Agent': getHeaderUserAgent(headerOptions) + } + }; return resultify( - axios.post(API_URL_TRANSACTION.cashReceiptManualIssue(), params), + axios.post(API_URL_TRANSACTION.cashReceiptManualIssue(), params, options), ); }; diff --git a/src/entities/transaction/api/use-cash-receipt-purpose-update-mutation.ts b/src/entities/transaction/api/use-cash-receipt-purpose-update-mutation.ts index 973f77f..2a3d500 100644 --- a/src/entities/transaction/api/use-cash-receipt-purpose-update-mutation.ts +++ b/src/entities/transaction/api/use-cash-receipt-purpose-update-mutation.ts @@ -10,10 +10,20 @@ import { useMutation, UseMutationOptions } from '@tanstack/react-query'; +import { getHeaderUserAgent } from '@/shared/constants/url'; export const cashReceiptPurposeUpdate = (params: CashReceiptPurposeUpdateParams) => { + let headerOptions = { + menuId: 32, + apiType: 'UPDATE' + }; + let options = { + headers: { + 'X-User-Agent': getHeaderUserAgent(headerOptions) + } + }; return resultify( - axios.post(API_URL_TRANSACTION.cashReceiptPurposeUpdate(), params), + axios.post(API_URL_TRANSACTION.cashReceiptPurposeUpdate(), params, options), ); }; diff --git a/src/shared/configs/axios/index.ts b/src/shared/configs/axios/index.ts index cbd8f53..fae32d0 100644 --- a/src/shared/configs/axios/index.ts +++ b/src/shared/configs/axios/index.ts @@ -4,17 +4,20 @@ import { WHITE_LIST_URLS } from '@/shared/api/urls'; import { StorageKeys } from '@/shared/constants/local-storage'; import { checkIsAxiosError, getLocalStorage, setLocalStorage } from '@/shared/lib'; import { finalizeConfig } from './utils'; -import { HEADER_USER_AGENT } from '@/shared/constants/url'; import { appBridge } from '@/utils/appBridge'; import { useAppBridge } from '@/hooks'; import { useUserInfo } from '@/entities/user/lib/use-user-info'; import { LoginResponse } from '@/entities/user/model/types'; import { useStore } from '@/shared/model/store'; +import { getHeaderUserAgent } from '@/shared/constants/url'; const onRequestFulfilled = (config: InternalAxiosRequestConfig) => { config.headers['Content-Type'] = 'application/json;charset=UTF-8'; - config.headers['X-User-Agent'] = HEADER_USER_AGENT; + if(!config.headers['X-User-Agent']){ + config.headers['X-User-Agent'] = getHeaderUserAgent(); + } + if(WHITE_LIST_URLS.includes(config?.url ?? '')){ if(config.headers.hasOwnProperty('Authorization')){ delete config.headers.Authorization; diff --git a/src/shared/constants/url.ts b/src/shared/constants/url.ts index 1e8f3e6..f4ade2a 100644 --- a/src/shared/constants/url.ts +++ b/src/shared/constants/url.ts @@ -19,7 +19,7 @@ const getAPIAuthBaseUrl = () => { } return rs; } -const getHeaderUserAgent = (options?: { +export const getHeaderUserAgent = (options?: { menuId?: number, apiType?: string }) => { @@ -32,12 +32,11 @@ const getHeaderUserAgent = (options?: { let appVersion = '1.0.0'; let browserInformation = result.browser.name; - return `${os} ${deviceType} ${deviceID} ${appVersion} ${browserInformation} ${options?.menuId} ${options?.apiType}`; + return `${os} ${deviceType} ${deviceID} ${appVersion} ${browserInformation} ${options?.menuId || ''} ${options?.apiType || ''}`; }; export const API_BASE_URL = getAPIBaseUrl(); export const API_AUTH_BASE_URL = getAPIAuthBaseUrl(); export const API_URL_KEY = 'nmsa'; -export const HEADER_USER_AGENT = getHeaderUserAgent(); export const API_PARAM = {};