diff --git a/apps/web/src/apis/universities/getSearchFilter.ts b/apps/web/src/apis/universities/getSearchFilter.ts index c881c955..6094fb57 100644 --- a/apps/web/src/apis/universities/getSearchFilter.ts +++ b/apps/web/src/apis/universities/getSearchFilter.ts @@ -1,6 +1,7 @@ import { useQuery } from "@tanstack/react-query"; import type { AxiosError } from "axios"; import { useMemo } from "react"; +import { isMatchedHomeUniversityName } from "@/constants/university"; import type { CountryCode, HomeUniversityName, LanguageTestType, ListUniversity } from "@/types/university"; import { QueryKeys } from "../queryKeys"; import { type SearchFilterResponse, universitiesApi } from "./api"; @@ -53,7 +54,9 @@ const useGetUniversitySearchByFilter = ( // homeUniversityName으로 필터링 const filteredData = useMemo(() => { if (!query.data || !homeUniversityName) return query.data; - return query.data.filter((university) => university.homeUniversityName === homeUniversityName); + return query.data.filter((university) => + isMatchedHomeUniversityName(university.homeUniversityName, homeUniversityName), + ); }, [query.data, homeUniversityName]); return { diff --git a/apps/web/src/apis/universities/getSearchText.ts b/apps/web/src/apis/universities/getSearchText.ts index 1ca20e45..ed9cefbb 100644 --- a/apps/web/src/apis/universities/getSearchText.ts +++ b/apps/web/src/apis/universities/getSearchText.ts @@ -2,6 +2,7 @@ import { useQuery } from "@tanstack/react-query"; import type { AxiosError } from "axios"; import { useMemo } from "react"; +import { isMatchedHomeUniversityName } from "@/constants/university"; import type { HomeUniversityName, ListUniversity } from "@/types/university"; import { QueryKeys } from "../queryKeys"; import { type SearchTextResponse, universitiesApi } from "./api"; @@ -44,7 +45,9 @@ const useUniversitySearch = (searchValue: string, homeUniversityName?: HomeUnive // homeUniversityName 필터링 if (homeUniversityName) { - filtered = filtered.filter((university) => university.homeUniversityName === homeUniversityName); + filtered = filtered.filter((university) => + isMatchedHomeUniversityName(university.homeUniversityName, homeUniversityName), + ); } // 검색어 필터링 diff --git a/apps/web/src/app/university/[homeUniversity]/[id]/_ui/UniversityDetailPreparingFallback.tsx b/apps/web/src/app/university/[homeUniversity]/[id]/_ui/UniversityDetailPreparingFallback.tsx index 7ac99802..c6c6669f 100644 --- a/apps/web/src/app/university/[homeUniversity]/[id]/_ui/UniversityDetailPreparingFallback.tsx +++ b/apps/web/src/app/university/[homeUniversity]/[id]/_ui/UniversityDetailPreparingFallback.tsx @@ -4,9 +4,15 @@ import { IconSolidConnectionSmallLogo } from "@/public/svgs/my"; interface UniversityDetailPreparingFallbackProps { backHref: string; + title?: string; + description?: string; } -const UniversityDetailPreparingFallback = ({ backHref }: UniversityDetailPreparingFallbackProps) => { +const UniversityDetailPreparingFallback = ({ + backHref, + title = "대학 정보를 준비중입니다.", + description = "아직 데이터가 준비되지 않았어요. 잠시 후 다시 확인해주세요.", +}: UniversityDetailPreparingFallbackProps) => { return (
대학 정보를 준비중입니다.
-아직 데이터가 준비되지 않았어요. 잠시 후 다시 확인해주세요.
+{title}
+{description}
uni.homeUniversityName === homeUniversityInfo.name); + const filteredUniversities = universities.filter((uni) => + isMatchedHomeUniversityName(uni.homeUniversityName, homeUniversityInfo.name), + ); for (const university of filteredUniversities) { params.push({ @@ -125,14 +127,18 @@ const CollegeDetailPage = async ({ params }: PageProps) => { const universityDetailResult = await getUniversityDetailWithStatus(collegeId); if (!universityDetailResult.ok) { - if (universityDetailResult.status === 404) { - notFound(); - } + const isNotFoundError = universityDetailResult.status === 404; return ( <>