지급대행 api 정리

This commit is contained in:
focp212@naver.com
2025-09-22 09:02:05 +09:00
parent 9fc1ac908b
commit 1cd1f40e86
6 changed files with 141 additions and 17 deletions

View File

@@ -0,0 +1,29 @@
import axios from 'axios';
import { API_URL_ADDITIONAL_SERVICE } from '@/shared/api/api-url-additional-service';
import { resultify } from '@/shared/lib/resultify';
import { CBDCAxiosError } from '@/shared/@types/error';
import {
ExtensionPayoutDetailDownloadCertificateParams,
ExtensionPayoutDetailDownloadCertificateResponse
} from '../../model/payout/types';
import {
useMutation,
UseMutationOptions
} from '@tanstack/react-query';
export const extensionPayoutDetailDownloadCertificate = (params: ExtensionPayoutDetailDownloadCertificateParams) => {
return resultify(
axios.post<ExtensionPayoutDetailDownloadCertificateResponse>(API_URL_ADDITIONAL_SERVICE.extensionPayoutDetailDownloadCertificate(), params),
);
};
export const useExtensionPayoutDetailMutation = (options?: UseMutationOptions<ExtensionPayoutDetailDownloadCertificateResponse, CBDCAxiosError, ExtensionPayoutDetailDownloadCertificateParams>) => {
const mutation = useMutation<ExtensionPayoutDetailDownloadCertificateResponse, CBDCAxiosError, ExtensionPayoutDetailDownloadCertificateParams>({
...options,
mutationFn: (params: ExtensionPayoutDetailDownloadCertificateParams) => extensionPayoutDetailDownloadCertificate(params),
});
return {
...mutation,
};
};

View File

@@ -0,0 +1,29 @@
import axios from 'axios';
import { API_URL_ADDITIONAL_SERVICE } from '@/shared/api/api-url-additional-service';
import { resultify } from '@/shared/lib/resultify';
import { CBDCAxiosError } from '@/shared/@types/error';
import {
ExtensionPayoutDetailParams,
ExtensionPayoutDetailResponse
} from '../../model/payout/types';
import {
useMutation,
UseMutationOptions
} from '@tanstack/react-query';
export const extensionPayoutDetail = (params: ExtensionPayoutDetailParams) => {
return resultify(
axios.post<ExtensionPayoutDetailResponse>(API_URL_ADDITIONAL_SERVICE.extensionPayoutDetail(), params),
);
};
export const useExtensionPayoutDetailMutation = (options?: UseMutationOptions<ExtensionPayoutDetailResponse, CBDCAxiosError, ExtensionPayoutDetailParams>) => {
const mutation = useMutation<ExtensionPayoutDetailResponse, CBDCAxiosError, ExtensionPayoutDetailParams>({
...options,
mutationFn: (params: ExtensionPayoutDetailParams) => extensionPayoutDetail(params),
});
return {
...mutation,
};
};

View File

@@ -0,0 +1,29 @@
import axios from 'axios';
import { API_URL_ADDITIONAL_SERVICE } from '@/shared/api/api-url-additional-service';
import { resultify } from '@/shared/lib/resultify';
import { CBDCAxiosError } from '@/shared/@types/error';
import {
ExtensionPayoutExcelParams,
ExtensionPayoutExcelResponse
} from '../../model/payout/types';
import {
useMutation,
UseMutationOptions
} from '@tanstack/react-query';
export const extensionPayoutExcel = (params: ExtensionPayoutExcelParams) => {
return resultify(
axios.post<ExtensionPayoutExcelResponse>(API_URL_ADDITIONAL_SERVICE.extensionPayoutExcel(), params),
);
};
export const useExtensionPayoutExcelMutation = (options?: UseMutationOptions<ExtensionPayoutExcelResponse, CBDCAxiosError, ExtensionPayoutExcelParams>) => {
const mutation = useMutation<ExtensionPayoutExcelResponse, CBDCAxiosError, ExtensionPayoutExcelParams>({
...options,
mutationFn: (params: ExtensionPayoutExcelParams) => extensionPayoutExcel(params),
});
return {
...mutation,
};
};

View File

@@ -0,0 +1,29 @@
import axios from 'axios';
import { API_URL_ADDITIONAL_SERVICE } from '@/shared/api/api-url-additional-service';
import { resultify } from '@/shared/lib/resultify';
import { CBDCAxiosError } from '@/shared/@types/error';
import {
ExtensionPayoutListParams,
ExtensionPayoutListResponse
} from '../../model/payout/types';
import {
useMutation,
UseMutationOptions
} from '@tanstack/react-query';
export const extensionPayoutList = (params: ExtensionPayoutListParams) => {
return resultify(
axios.post<ExtensionPayoutListResponse>(API_URL_ADDITIONAL_SERVICE.extensionPayoutList(), params),
);
};
export const useExtensionPayoutListMutation = (options?: UseMutationOptions<ExtensionPayoutListResponse, CBDCAxiosError, ExtensionPayoutListParams>) => {
const mutation = useMutation<ExtensionPayoutListResponse, CBDCAxiosError, ExtensionPayoutListParams>({
...options,
mutationFn: (params: ExtensionPayoutListParams) => extensionPayoutList(params),
});
return {
...mutation,
};
};

View File

@@ -1,26 +1,26 @@
import axios from 'axios'; import axios from 'axios';
import { API_URL_PAYMENT } from '@/shared/api/api-url-payment'; import { API_URL_ADDITIONAL_SERVICE } from '@/shared/api/api-url-additional-service';
import { resultify } from '@/shared/lib/resultify'; import { resultify } from '@/shared/lib/resultify';
import { CBDCAxiosError } from '@/shared/@types/error'; import { CBDCAxiosError } from '@/shared/@types/error';
import { import {
ExtensionPayoutRequestParams, ExtensionPayoutRequestParams,
ExtensionPayoutRequestResponse ExtensionPayoutRequestResponse
} from '../..model/types'; } from '../../model/payout/types';
import { import {
useMutation, useMutation,
UseMutationOptions UseMutationOptions
} from '@tanstack/react-query'; } from '@tanstack/react-query';
export const extensionPayoutRequestCard = (params: ExtensionPayoutRequestParams) => { export const extensionPayoutRequest = (params: ExtensionPayoutRequestParams) => {
return resultify( return resultify(
axios.post<ExtensionPayoutRequestResponse>(API_URL_PAYMENT.paymentCard(), params), axios.post<ExtensionPayoutRequestResponse>(API_URL_ADDITIONAL_SERVICE.extensionPayoutRequest(), params),
); );
}; };
export const useExtensionPayoutRequestMutation = (options?: UseMutationOptions<ExtensionPayoutRequestResponse, CBDCAxiosError, ExtensionPayoutRequestParams>) => { export const useExtensionPayoutRequestMutation = (options?: UseMutationOptions<ExtensionPayoutRequestResponse, CBDCAxiosError, ExtensionPayoutRequestParams>) => {
const mutation = useMutation<ExtensionPayoutRequestResponse, CBDCAxiosError, ExtensionPayoutRequestParams>({ const mutation = useMutation<ExtensionPayoutRequestResponse, CBDCAxiosError, ExtensionPayoutRequestParams>({
...options, ...options,
mutationFn: (params: ExtensionPayoutRequestParams) => extensionPayoutRequestCard(params), mutationFn: (params: ExtensionPayoutRequestParams) => extensionPayoutRequest(params),
}); });
return { return {

View File

@@ -25,7 +25,7 @@ export interface ExtensionPayoutListParams {
disbursementStatus: PayoutDisbursementStatus; disbursementStatus: PayoutDisbursementStatus;
minAmount: number; minAmount: number;
maxAmount: number; maxAmount: number;
page: DefaultRequestPagination; page?: DefaultRequestPagination;
}; };
export interface ExtensionPayoutListResponse extends DefaulResponsePagination{ export interface ExtensionPayoutListResponse extends DefaulResponsePagination{
content: Array<PayoutContent> content: Array<PayoutContent>
@@ -39,21 +39,29 @@ export interface PayoutContent {
disbursementStatus: PayoutDisbursementStatus; disbursementStatus: PayoutDisbursementStatus;
disbursementAmount: number; disbursementAmount: number;
}; };
export interface ExtensionPayoutExcelParams { export interface ExtensionPayoutExcelParams extends ExtensionPayoutListParams {};
mid: string;
searchCl: PayoutSearchCl,
fromDate: string;
toDate: string;
disbursementStatus: PayoutDisbursementStatus;
minAmount: number;
maxAmount: number;
};
export interface ExtensionPayoutExcelResponse {} export interface ExtensionPayoutExcelResponse {}
export interface ExtensionPayoutDetailParams { export interface ExtensionPayoutDetailParams {
mid: string;
tid: string;
}; };
export interface ExtensionPayoutDetailResponse { export interface ExtensionPayoutDetailResponse {
tid: string;
disbursementAmount: number;
disbursementStatus: PayoutDisbursementStatus;
transTypeName: string;
requestDate: string;
settlementDate: string;
companyName: string;
companyNo: string;
accountName: string;
bankName: string;
accountNo: string;
depositName: string;
failReason: string;
}; };
export interface ExtensionPayoutDetailDownloadCertificateParams extends ExtensionPayoutDetailParams {};
export interface ExtensionPayoutDetailDownloadCertificateResponse {};