Skip to content

Commit

Permalink
Merge pull request #267 from team-abcdedu/refactor/class-variable-nam…
Browse files Browse the repository at this point in the history
…es/phj

refactor: subLectureId -> subClassId 변수명 통일
  • Loading branch information
PHJoon authored Nov 25, 2024
2 parents 9f7731a + 0c7e012 commit aa1876d
Show file tree
Hide file tree
Showing 11 changed files with 44 additions and 46 deletions.
12 changes: 6 additions & 6 deletions src/hooks/class/useClassDataByParams.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,18 +9,18 @@ interface UseClassDataByParamsProps {

// 현재 경로에 해당하는 클래스, 서브클래스 데이터
function useClassDataByParams({ classDataList }: UseClassDataByParamsProps) {
const { classId, subClassId } = useParams();
const { classId: classIdParam, subClassId: subClassIdParam } = useParams();

const currentPageClassData = useMemo(() => {
return classDataList?.find(d => d.title === classId?.toUpperCase());
}, [classDataList, classId]);
return classDataList?.find(d => d.title === classIdParam?.toUpperCase());
}, [classDataList, classIdParam]);
const currentPageSubClassData = useMemo(() => {
return currentPageClassData?.subClasses.find(
d => d.orderNumber === Number(subClassId),
d => d.orderNumber === Number(subClassIdParam),
);
}, [currentPageClassData, subClassId]);
}, [currentPageClassData, subClassIdParam]);

const isSubClassPage = !!classId && !!subClassId;
const isSubClassPage = !!classIdParam && !!subClassIdParam;

return { currentPageClassData, currentPageSubClassData, isSubClassPage };
}
Expand Down
24 changes: 11 additions & 13 deletions src/hooks/class/useSubClassFileInfoList.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,20 @@ import useBoundStore from '@/stores';
import { FileInfo } from '@/types/class';

interface UseSubClassFileInfoListProps {
subLectureId?: number;
subClassId?: number;
}

function useSubClassFileInfoList({
subLectureId,
}: UseSubClassFileInfoListProps) {
const { classId, subClassId } = useParams();
function useSubClassFileInfoList({ subClassId }: UseSubClassFileInfoListProps) {
const { classId: classIdParam, subClassId: subClassIdParam } = useParams();
const subClassIdMap = useSubClassIdMap();

let resolvedSubLectureId;
let resolvedSubClassId;
// 관리자 페이지 내에서 호출 시
if (subLectureId && !subClassIdMap) {
resolvedSubLectureId = subLectureId;
if (subClassId && !subClassIdMap) {
resolvedSubClassId = subClassId;
} else {
resolvedSubLectureId =
subClassIdMap[`${classId?.toUpperCase()}-${subClassId}`];
resolvedSubClassId =
subClassIdMap[`${classIdParam?.toUpperCase()}-${subClassIdParam}`];
}

const user = useBoundStore(state => state.user);
Expand All @@ -33,9 +31,9 @@ function useSubClassFileInfoList({
isLoading,
isError,
} = useQuery({
queryKey: ['class', 'sub-class-file-list', resolvedSubLectureId],
queryFn: () => ClassApi.getSubClassFileList(resolvedSubLectureId),
enabled: !!resolvedSubLectureId,
queryKey: ['class', 'sub-class-file-list', resolvedSubClassId],
queryFn: () => ClassApi.getSubClassFileList(resolvedSubClassId),
enabled: !!resolvedSubClassId,
});

const findFileInfo = useMemo(() => {
Expand Down
6 changes: 3 additions & 3 deletions src/pages/Admin/Class/components/FileItem.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ import FileUpdateModal from '@/pages/Admin/Class/components/FileUpdateModal';
import { FileInfo } from '@/types/class';

function FileItem({
subLectureId,
subClassId,
fileInfo,
}: {
subLectureId: number;
subClassId: number;
fileInfo: FileInfo;
}) {
const { assignmentType: fileType, assignmentFileId: fileId } = fileInfo;
Expand Down Expand Up @@ -57,7 +57,7 @@ function FileItem({
</button>

<FileUpdateModal
subLectureId={subLectureId}
subClassId={subClassId}
fileType={fileType}
fileId={fileId}
isVisible={isVisible}
Expand Down
8 changes: 4 additions & 4 deletions src/pages/Admin/Class/components/FileList.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@ import useSubClassFileInfoList from '@/hooks/class/useSubClassFileInfoList';
import FileItem from '@/pages/Admin/Class/components/FileItem';

interface FileListProps {
subLectureId: number;
subClassId: number;
}

function FileList({ subLectureId }: FileListProps) {
function FileList({ subClassId }: FileListProps) {
const { subClassFileInfoList, isLoading, isError } = useSubClassFileInfoList({
subLectureId,
subClassId,
});

if (isError || isLoading) {
Expand All @@ -28,7 +28,7 @@ function FileList({ subLectureId }: FileListProps) {
return findFileInfo ? (
<FileItem
key={findFileInfo.assignmentFileId}
subLectureId={subLectureId}
subClassId={subClassId}
fileInfo={findFileInfo}
/>
) : null;
Expand Down
6 changes: 3 additions & 3 deletions src/pages/Admin/Class/components/FileUpdateModal.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,23 +9,23 @@ import useFileUpdateForm, {
import useFileUpdateMutation from '@/pages/Admin/Class/hooks/useFileUpdateMutation';

interface FileUpdateModalProps {
subLectureId: number;
subClassId: number;
fileType: string;
fileId: number;
isVisible: boolean;
onClose: () => void;
}

function FileUpdateModal({
subLectureId,
subClassId,
fileType,
fileId,
isVisible,
onClose,
}: FileUpdateModalProps) {
const { register, errors, handleSubmit, fieldRules, reset } =
useFileUpdateForm();
const { mutation } = useFileUpdateMutation({ subLectureId, fileId });
const { mutation } = useFileUpdateMutation({ subClassId, fileId });

const onSubmit: SubmitHandler<IFileUpdateForm> = data => {
const result = window.confirm('파일을 수정하시겠습니까?');
Expand Down
6 changes: 3 additions & 3 deletions src/pages/Admin/Class/components/FileUploadModal.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,18 +9,18 @@ import useFileUploadForm, {
import useFileUploadMutation from '@/pages/Admin/Class/hooks/useFileUploadMutation';

interface FileEditorModalProps {
subLectureId: number;
subClassId: number;
isVisible: boolean;
onClose: () => void;
}

function FileUploadModal({
subLectureId,
subClassId,
isVisible,
onClose,
}: FileEditorModalProps) {
const { mutation } = useFileUploadMutation({
subLectureId,
subClassId,
});

const { register, errors, handleSubmit, reset, fieldRules } =
Expand Down
4 changes: 2 additions & 2 deletions src/pages/Admin/Class/components/SubClassCard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,11 @@ function SubClassCard({ classTitle, subClass }: SubClassCardProps) {
>
파일 목록 확인하기
</button>
{openFileList && <FileList subLectureId={subClass.subClassId} />}
{openFileList && <FileList subClassId={subClass.subClassId} />}
</InfoRow>

<FileUploadModal
subLectureId={subClass.subClassId}
subClassId={subClass.subClassId}
isVisible={isVisible}
onClose={toggleModal}
/>
Expand Down
6 changes: 3 additions & 3 deletions src/pages/Admin/Class/hooks/useFileUpdateMutation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ import { queryClient } from '@/libs/react-query';
import AdminClassApi from '@/services/admin/class';

interface UseFileUpdateMutationProps {
subLectureId: number;
subClassId: number;
fileId: number;
}

function useFileUpdateMutation({
subLectureId,
subClassId,
fileId,
}: UseFileUpdateMutationProps) {
const mutation = useMutation({
Expand All @@ -20,7 +20,7 @@ function useFileUpdateMutation({
queryKey: ['class', 'sub-class-general-file', fileId],
});
queryClient.invalidateQueries({
queryKey: ['class', 'sub-class-file-list', subLectureId],
queryKey: ['class', 'sub-class-file-list', subClassId],
});
},
});
Expand Down
8 changes: 4 additions & 4 deletions src/pages/Admin/Class/hooks/useFileUploadMutation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,16 @@ import { queryClient } from '@/libs/react-query';
import AdminClassApi from '@/services/admin/class';

interface UseFileUploadProps {
subLectureId: number;
subClassId: number;
}

function useFileUploadMutation({ subLectureId }: UseFileUploadProps) {
function useFileUploadMutation({ subClassId }: UseFileUploadProps) {
const mutation = useMutation({
mutationFn: (data: { type: string; file: File }) =>
AdminClassApi.uploadSubClassFile({ ...data, subLectureId }),
AdminClassApi.uploadSubClassFile({ ...data, subClassId }),
onSuccess: () => {
queryClient.invalidateQueries({
queryKey: ['class', 'sub-class-file-list', subLectureId],
queryKey: ['class', 'sub-class-file-list', subClassId],
});
},
});
Expand Down
6 changes: 3 additions & 3 deletions src/services/admin/class.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,19 +20,19 @@ class AdminClassApi {
}

static async uploadSubClassFile({
subLectureId,
subClassId,
type,
file,
}: {
subLectureId: number;
subClassId: number;
type: string;
file: File;
}) {
const formData = new FormData();
formData.append('file', file);

return post(
`/lectures/sub-lecture/${subLectureId}/file?assignmentType=${type}`,
`/lectures/sub-lecture/${subClassId}/file?assignmentType=${type}`,
formData,
{
headers: {
Expand Down
4 changes: 2 additions & 2 deletions src/services/class.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ class ClassApi {
}

static async getSubClassFileList(
subLectureId: number,
subClassId: number,
): Promise<{ assignmentType: string; assignmentFileId: number }[]> {
return get(`/lectures/sub-lecture/${subLectureId}`);
return get(`/lectures/sub-lecture/${subClassId}`);
}

static async getSubClassFile(
Expand Down

0 comments on commit aa1876d

Please sign in to comment.