diff --git a/apps/web/src/app/my/modify/_ui/ModifyContent/_hooks/useModifyUserHookform.ts b/apps/web/src/app/my/modify/_ui/ModifyContent/_hooks/useModifyUserHookform.ts index b41ca2682..d160b12e5 100644 --- a/apps/web/src/app/my/modify/_ui/ModifyContent/_hooks/useModifyUserHookform.ts +++ b/apps/web/src/app/my/modify/_ui/ModifyContent/_hooks/useModifyUserHookform.ts @@ -14,7 +14,7 @@ type ProfileFormData = z.infer; interface UseModifyUserHookformReturn { methods: ReturnType>; - myInfo?: Partial; + myInfo?: MyInfoResponse; onSubmit: (data: ProfileFormData) => void; } diff --git a/apps/web/src/app/my/modify/_ui/ModifyContent/_lib/profileFields.ts b/apps/web/src/app/my/modify/_ui/ModifyContent/_lib/profileFields.ts new file mode 100644 index 000000000..ba7f08325 --- /dev/null +++ b/apps/web/src/app/my/modify/_ui/ModifyContent/_lib/profileFields.ts @@ -0,0 +1,15 @@ +import type { MyInfoResponse } from "@/apis/MyPage"; + +export interface ModifyProfileReadOnlyFields { + homeUniversityName: string; + attendedUniversity: string; +} + +export const resolveModifyProfileReadOnlyFields = (myInfo: MyInfoResponse): ModifyProfileReadOnlyFields => { + const isMentorProfile = myInfo.role === "MENTOR" || myInfo.role === "ADMIN"; + + return { + homeUniversityName: myInfo.homeUniversityName ?? "", + attendedUniversity: isMentorProfile ? myInfo.attendedUniversity : "", + }; +}; diff --git a/apps/web/src/app/my/modify/_ui/ModifyContent/index.tsx b/apps/web/src/app/my/modify/_ui/ModifyContent/index.tsx index a68111248..002f191fc 100644 --- a/apps/web/src/app/my/modify/_ui/ModifyContent/index.tsx +++ b/apps/web/src/app/my/modify/_ui/ModifyContent/index.tsx @@ -6,6 +6,7 @@ import { FormProvider } from "react-hook-form"; import CloudSpinnerPage from "@/components/ui/CloudSpinnerPage"; import { UserRole } from "@/types/mentor"; import useModifyUserHookform from "./_hooks/useModifyUserHookform"; +import { resolveModifyProfileReadOnlyFields } from "./_lib/profileFields"; import ImageInputFiled from "./_ui/ImageInputFiled"; import InputField from "./_ui/InputFiled"; import ReadOnlyField from "./_ui/ReadOnlyField"; @@ -13,11 +14,6 @@ import ReadOnlyField from "./_ui/ReadOnlyField"; const ModifyContent = () => { const { methods, myInfo, onSubmit } = useModifyUserHookform(); - const defaultUniversity: string = - (myInfo?.role === UserRole.MENTOR || myInfo?.role === UserRole.ADMIN) && myInfo.attendedUniversity - ? myInfo.attendedUniversity - : "인하대학교"; - const { handleSubmit, formState: { isValid, isDirty }, @@ -26,6 +22,9 @@ const ModifyContent = () => { if (!myInfo) { return ; } + + const { homeUniversityName, attendedUniversity } = resolveModifyProfileReadOnlyFields(myInfo); + return (
@@ -39,10 +38,10 @@ const ModifyContent = () => { {/* 출신학교 - 읽기 전용 */} - + {/* 수학 학교 - 읽기 전용 */} - + {/* 사용자 유형 - 읽기 전용 */}