[st] feat: 검증 에러 처리

This commit is contained in:
2026-03-06 12:04:19 +09:00
parent 0556245d62
commit 97a67bfd55
2 changed files with 39 additions and 26 deletions
@@ -52,6 +52,8 @@ import { useAlertStore } from "@/shared/lib";
import { verificationTargetManagementApi } from "@/entities/statistics/api/verification-target-management-service";
import type { VerificationTargetCodeResponse } from "@/entities/statistics/model/verification-target-management-interface";
import { CodeSelect } from "@/entities/code";
import type { AxiosError } from "axios";
import type { ApiErrorResponse } from "@/shared/model";
type DateRangeValue = {
from?: Date;
@@ -244,7 +246,7 @@ const HbStatisticsVerification = () => {
const analysisMutation = useMutation<
AnalysisResponseDto,
Error,
AxiosError<ApiErrorResponse>,
AnalysisRequestPayload
>({
mutationFn: async (payload) => analysisApi.analyze(payload),
@@ -254,8 +256,11 @@ const HbStatisticsVerification = () => {
queryKey: [ENDPOINT.STATVERIFY_SERVICE.ST_ANLS_MST],
});
},
onError: () => {
alert("검증 실행 중 오류가 발생했습니다.");
onError: (error) => {
alert(
error.response?.data?.message ??
"검증 실행 중 오류가 발생했습니다.",
);
},
});
+31 -23
View File
@@ -1,34 +1,42 @@
interface SortConfig {
empty: boolean;
sorted: boolean;
unsorted: boolean;
empty: boolean;
sorted: boolean;
unsorted: boolean;
}
interface PageableConfig {
sort: SortConfig;
offset: number;
pageNumber: number;
pageSize: number;
paged: boolean;
unpaged: boolean;
sort: SortConfig;
offset: number;
pageNumber: number;
pageSize: number;
paged: boolean;
unpaged: boolean;
}
export interface PageableList<T> {
content: T[];
pageable: PageableConfig;
sort: SortConfig;
totalPages: number;
totalElements: number;
number: number;
numberOfElements: number;
size: number;
first: boolean;
last: boolean;
empty: boolean;
content: T[];
pageable: PageableConfig;
sort: SortConfig;
totalPages: number;
totalElements: number;
number: number;
numberOfElements: number;
size: number;
first: boolean;
last: boolean;
empty: boolean;
}
export interface PageableParams {
page?: number;
size?: number;
sort?: string;
page?: number;
size?: number;
sort?: string;
}
export interface ApiErrorResponse {
timestamp: string;
message: string;
status: number;
code: string;
errors: unknown[];
}