From b76a480b19367d040939b57d8e00a812eec955e7 Mon Sep 17 00:00:00 2001 From: AhnRian0 <00rian@naver.com> Date: Thu, 1 Aug 2024 23:24:18 +0900 Subject: [PATCH] =?UTF-8?q?feat=20:=20[25]=20=EC=B9=B4=ED=85=8C=EA=B3=A0?= =?UTF-8?q?=EB=A6=AC(=EA=B5=90=EB=82=B4)=20=EC=84=A0=ED=83=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/TimeTable.xlsx | Bin 0 -> 94856 bytes src/components/modal/BottomModal.js | 23 ++-- .../studyRequirement/Category.js | 63 +++++----- .../study/studyPostWrite/StudyPostWrite.js | 114 ++++++++++++++++-- .../studyPostField/StudyPostField.js | 72 ++++++++++- .../studyPostField/StudyPostField.module.css | 82 +++++++------ .../study/studyPostWrite/usePostStore.js | 2 +- src/pages/study/timeTable/getTimeTable.js | 37 ++++++ .../study/timeTable/useTimeTableStore.js | 12 ++ 9 files changed, 317 insertions(+), 88 deletions(-) create mode 100644 public/TimeTable.xlsx create mode 100644 src/pages/study/timeTable/getTimeTable.js create mode 100644 src/pages/study/timeTable/useTimeTableStore.js diff --git a/public/TimeTable.xlsx b/public/TimeTable.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..bdf1f92991864bb2c2e5648055feffa65a94d6e9 GIT binary patch literal 94856 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

aowXFn2YU&&S{#E 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

    44^2H0zk4Su~zMoKb|KCw|yGEaZ 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 O#e)fBO~lW#;=ce3WgKt- literal 0 HcmV?d00001 diff --git a/src/components/modal/BottomModal.js b/src/components/modal/BottomModal.js index 8642b74a..525bf38b 100644 --- a/src/components/modal/BottomModal.js +++ b/src/components/modal/BottomModal.js @@ -1,9 +1,9 @@ -import React, { useContext, useState, useEffect } from "react"; -import { MyContext } from "../../App"; +import React, { useContext, useState, useEffect } from 'react'; +import { MyContext } from '../../App'; import style from './BottomModal.module.css'; -const BottomModal = (props) => { +const BottomModal = ({ state = null, children }) => { const [animate, setAnimate] = useState(false); const { modalOpen, setModalOpen } = useContext(MyContext); @@ -20,10 +20,17 @@ const BottomModal = (props) => { // props.deleteHandler() }; - return
    -
    -
    {props.children}
    -
    ; + return ( +
    +
    +
    + {children} +
    +
    + ); }; -export default BottomModal; \ No newline at end of file +export default BottomModal; diff --git a/src/components/studyPostWrite/studyRequirement/Category.js b/src/components/studyPostWrite/studyRequirement/Category.js index c025962a..64069eac 100644 --- a/src/components/studyPostWrite/studyRequirement/Category.js +++ b/src/components/studyPostWrite/studyRequirement/Category.js @@ -2,39 +2,40 @@ import { useEffect, useState } from 'react'; import usePostStore from '../../../pages/study/studyPostWrite/usePostStore'; import style from '../StudyRequirement.module.css'; import arrow from '../../../assets/image/down_black.png'; - -const Category = ({studyFilterHandler}) => { - const {category} = usePostStore(); - - const [isPost, setIsPost] = useState(true); - useEffect(() => { - if (window.location.pathname.startsWith('/study/modify')) { - setIsPost(false); - } else { - setIsPost(true); - } - }, []) +import useTimeTableStore from '../../../pages/study/timeTable/useTimeTableStore'; +const Category = ({ studyFilterHandler }) => { + const { category } = usePostStore(); + const { subjectName } = useTimeTableStore(); - const modify = () => { - alert('카테고리는 수정할 수 없습니다!') + const [isPost, setIsPost] = useState(true); + useEffect(() => { + if (window.location.pathname.startsWith('/study/modify')) { + setIsPost(false); + } else { + setIsPost(true); } + }, []); - return ( -
    - + const modify = () => { + alert('카테고리는 수정할 수 없습니다!'); + }; - {isPost ? - Arrow - : -

    {category}

    } -
    - ) -} + return ( +
    + -export default Category; \ No newline at end of file + {isPost ? ( + Arrow + ) : ( +

    {category}

    + )} +
    + ); +}; + +export default Category; diff --git a/src/pages/study/studyPostWrite/StudyPostWrite.js b/src/pages/study/studyPostWrite/StudyPostWrite.js index 84f31a5b..f70fd97d 100644 --- a/src/pages/study/studyPostWrite/StudyPostWrite.js +++ b/src/pages/study/studyPostWrite/StudyPostWrite.js @@ -30,10 +30,14 @@ import Popup from '../../../components/studyPopup/Popup'; import usePostStore from './usePostStore'; import useStudyInfoStore from '../useStudyInfoStore'; import usePopupStroe from '../../../components/studyPopup/usePopupStore'; +import useTimeTableStore from '../timeTable/useTimeTableStore'; import { format } from 'date-fns'; // import Category from '../../../components/studyPostWrite/studyRequirement/Category'; import { useNavigate } from 'react-router-dom'; + +//강의 시간표 +import getTimeTable from '../timeTable/getTimeTable'; const StudyPostWrite = props => { const { title, @@ -56,6 +60,7 @@ const StudyPostWrite = props => { setPopupMessage, } = usePopupStroe(); const { studyType } = useStudyInfoStore(); + const { subjectName, setTableInfos, setShowData } = useTimeTableStore(); const navigate = useNavigate(); @@ -63,6 +68,16 @@ const StudyPostWrite = props => { event.target.blur(); }; + //강의 시간표 get + useEffect(() => { + const fetchAndSetTimeTable = async () => { + const data = await getTimeTable(); + setTableInfos(data.tableInfos); + setShowData(data.showData); + }; + + fetchAndSetTimeTable(); + }, []); // 모달 오픈, const [isClickedStudy, setIsClickedStudy] = useState(false); const [isClickedMember, setIsClickedMember] = useState(false); @@ -122,7 +137,7 @@ const StudyPostWrite = props => { const newImgFiles = imgFiles.filter((_, i) => i !== index); setImgFiles(newImgFiles); }; - + //이미지 업로드 통신 const imgUpload = async id => { const imgs = [...imgFiles]; @@ -174,10 +189,14 @@ const StudyPostWrite = props => { const submitHandler = async e => { //제목/모집기간/모집인원/내용/오픈채팅 링크/카테고리 const validation = (name, text) => { - if (text === '' || text === null) return `${name}을(를) 입력해주세요`; + if (text === '' || text === null) { + if (name === '카테고리') return `${name}를 선택해주세요`; + return `${name}을(를) 입력해주세요`; + } }; const errorMessage = + validation('카테고리', category) || validation('제목', title) || validation('모집 시작일', startDate) || validation('모집 종료일', endDate) || @@ -191,6 +210,7 @@ const StudyPostWrite = props => { } const formStartDate = format(startDate, 'yyyy-MM-dd HH:mm:ss'); const formEndDate = format(endDate, 'yyyy-MM-dd HH:mm:ss'); + const studyData = studyType === 'lecture' ? { @@ -247,17 +267,85 @@ const StudyPostWrite = props => { throw new Error(data.message || 'Something went wrong'); } - // if (data.data !== null) { - // errorClassName = data.data.errorClassName; - // } - alert('게시글 작성 완료'); - navigate(`/study/post/${studyId}`); + if (data.data !== null) { + errorClassName = data.data.errorClassName; + } } catch (err) { console.log('ErrorMessage : ', err.message); + e.preventDefault(); } }; + const modifyHandler = async e => { + //제목/모집기간/모집인원/내용/오픈채팅 링크/카테고리 + const validation = (name, text) => { + if (text === '' || text === null) return `${name}을(를) 입력해주세요`; + }; + + const errorMessage = + validation('제목', title) || + validation('모집 시작일', startDate) || + validation('모집 종료일', endDate) || + validation('내용', content) || + validation('오픈채팅 링크', studyLink) || + null; + + if (errorMessage) { + togglePopup(errorMessage); + return; + } + const formStartDate = format(startDate, 'yyyy-MM-dd HH:mm:ss'); + const formEndDate = format(endDate, 'yyyy-MM-dd HH:mm:ss'); + + const studyData = { + title: title, + content: content, + recruitmentCount: memberNum, + method: selectedWay, + frequency: selectedFrequency, + kakaoLink: studyLink, + questionLink: questionLink, + lectureId: category, + recruitmentStartAt: formStartDate, + recruitmentEndAt: formEndDate, + tags: tags, + images: null, + }; + console.log(studyData); + + try { + const response = await fetch( + `${process.env.REACT_APP_BACK_SERVER}/study/${props.studyId}`, + { + method: 'PATCH', + body: JSON.stringify(studyData), + headers: { + 'Content-Type': 'application/json', + Authorization: `Bearer ${localStorage.getItem('accessToken')}`, + 'Refresh-Token': localStorage.getItem('refreshToken'), + }, + } + ); + + const text = await response.text(); + const data = text ? JSON.parse(text) : {}; + + const studyId = data.data.id; + imgUpload(studyId); + if (!response.ok) { + throw new Error(data.message || 'Something went wrong'); + } + + if (data.data !== null) { + errorClassName = data.data.errorClassName; + } + } catch (err) { + console.log('ErrorMessage : ', err.message); + + e.preventDefault(); + } + }; const [isPost, setIsPost] = useState(true); useEffect(() => { @@ -266,7 +354,7 @@ const StudyPostWrite = props => { } else { setIsPost(true); } - }, []) + }, []); const btnOnclick = isPost ? submitHandler : modifyHandler; return ( @@ -294,11 +382,17 @@ const StudyPostWrite = props => {
    - +
    {modalOpen && ( - + {isClickedStudy && } {isClickedMember && } diff --git a/src/pages/study/studyPostWrite/studyPostField/StudyPostField.js b/src/pages/study/studyPostWrite/studyPostField/StudyPostField.js index 5ae1e64a..0a366187 100644 --- a/src/pages/study/studyPostWrite/studyPostField/StudyPostField.js +++ b/src/pages/study/studyPostWrite/studyPostField/StudyPostField.js @@ -1,7 +1,58 @@ +import { useState, useEffect, useContext } from 'react'; import style from './StudyPostField.module.css'; import search from '../../../../assets/image/search_gray.png'; +//zustand +import useTimeTableStore from '../../timeTable/useTimeTableStore'; +import usePostStore from '../usePostStore'; +import { MyContext } from '../../../../App'; + +import getTimeTable from '../../timeTable/getTimeTable'; const StudyPostField = () => { + const { tableInfos, setTableInfos, showData, setShowData, setSubjectName } = + useTimeTableStore(); + const { setCategory } = usePostStore(); + const [selectingState, setSelectingState] = useState('college'); + + //모달 닫기 + const { setModalOpen } = useContext(MyContext); + const selectHandle = (item, state) => { + if (state === 'college') { + const newTableInfo = tableInfos.filter(row => row[1] === item); + setTableInfos(newTableInfo); + setShowData( + Array.from(new Set(newTableInfo.map(row => row[2]).filter(Boolean))) + ); + setSelectingState('department'); + } else if (state === 'department') { + const newTableInfo = tableInfos.filter(row => row[2] === item); + setTableInfos(newTableInfo); + setShowData( + Array.from( + new Set(newTableInfo.map(row => [row[3], row[4]]).filter(Boolean)) + ) + ); + setSelectingState('subsProfs'); + } else if (state === 'subsProfs') { + const newTableInfo = tableInfos.filter(row => { + if (row[3] === item[0] && row[4] === item[1]) { + return row; + } + }); + setCategory(newTableInfo[0][0]); + setSubjectName(item[0]); + const fetchAndSetTimeTable = async () => { + const data = await getTimeTable(); + setTableInfos(data.tableInfos); + setShowData(data.showData); + }; + + fetchAndSetTimeTable(); + setSelectingState('college'); + setModalOpen(false); + } + }; + return (
    @@ -17,7 +68,26 @@ const StudyPostField = () => { />
    -
    +
    +
    + {showData.map((item, index) => ( +
    selectHandle(item, selectingState)} + > + {selectingState === 'subsProfs' ? ( +
    + {item[0]} + {item[1]} +
    + ) : ( + item + )} +
    + ))} +
    +
    ); }; diff --git a/src/pages/study/studyPostWrite/studyPostField/StudyPostField.module.css b/src/pages/study/studyPostWrite/studyPostField/StudyPostField.module.css index 1352349e..72b8c23f 100644 --- a/src/pages/study/studyPostWrite/studyPostField/StudyPostField.module.css +++ b/src/pages/study/studyPostWrite/studyPostField/StudyPostField.module.css @@ -1,58 +1,66 @@ .container { - width: 100%; - height: 55vh; - align-items: center; - display: flex; - flex-direction: column; - align-items: center; + width: 100%; + height: 55vh; + align-items: center; + display: flex; + flex-direction: column; + align-items: center; } .header { - width: 100%; - height: 13%; - display: flex; - align-items: center; - padding: 0 5%; - border-bottom: 1px solid #E5E5E5; + width: 100%; + height: 13%; + display: flex; + align-items: center; + padding: 0 5%; + border-bottom: 1px solid #e5e5e5; } .header span { - font-size: 1.3rem; - color: #111111; - font-weight: 600; + font-size: 1.3rem; + color: #111111; + font-weight: 600; } .search_container { - width: 100%; - height: 13%; - display: flex; - align-items: center; - padding: 0 3%; - border-bottom: 1px solid #E5E5E5; + width: 100%; + height: 13%; + display: flex; + align-items: center; + padding: 0 3%; + border-bottom: 1px solid #e5e5e5; } .search_wrapper { - width: 100%; - height: 80%; - background-color: #E5E5E5; - border-radius: 30px; - display: flex; - align-items: center; - padding: 0 5%; + width: 100%; + height: 80%; + background-color: #e5e5e5; + border-radius: 30px; + display: flex; + align-items: center; + padding: 0 5%; } .search_wrapper img { - width: 24px; - height: 24px; + width: 24px; + height: 24px; } .search_input { - background-color: transparent; - border: none; - margin-left: 5%; - font-size: 1rem; - width: 80%; - height: 80%; + background-color: transparent; + border: none; + margin-left: 5%; + font-size: 1rem; + width: 80%; + height: 80%; } -.filter_study {} \ No newline at end of file +.filter_study { + width: 100%; + height: 100%; +} +.cateGoryItem { + height: 13%; + padding: 15px; + font-weight: 600; +} diff --git a/src/pages/study/studyPostWrite/usePostStore.js b/src/pages/study/studyPostWrite/usePostStore.js index d39e89ed..39b36872 100644 --- a/src/pages/study/studyPostWrite/usePostStore.js +++ b/src/pages/study/studyPostWrite/usePostStore.js @@ -2,7 +2,7 @@ import { create } from 'zustand'; const usePostStore = create(set => ({ title: '', - category: 1, + category: null, startDate: '', endDate: '', memberNum: 1, diff --git a/src/pages/study/timeTable/getTimeTable.js b/src/pages/study/timeTable/getTimeTable.js new file mode 100644 index 00000000..00d21f24 --- /dev/null +++ b/src/pages/study/timeTable/getTimeTable.js @@ -0,0 +1,37 @@ +// utils/getTimeTable.js +import readXlsxFile from 'read-excel-file'; + +const getTimeTable = async () => { + try { + const response = await fetch('/TimeTable.xlsx'); + if (!response.ok) { + throw new Error('Network response was not ok.'); + } + + const arrayBuffer = await response.arrayBuffer(); + const rows = await readXlsxFile(arrayBuffer); + + const tableInfos = rows.slice(1).map(row => row); + const showData = Array.from( + new Set( + rows + .slice(1) + .map(row => row[1]) + .filter(Boolean) + ) + ); + + return { + tableInfos, + showData, + }; + } catch (error) { + console.error('Error reading the Excel file:', error); + return { + tableInfos: [], + showData: [], + }; + } +}; + +export default getTimeTable; diff --git a/src/pages/study/timeTable/useTimeTableStore.js b/src/pages/study/timeTable/useTimeTableStore.js new file mode 100644 index 00000000..857fc75f --- /dev/null +++ b/src/pages/study/timeTable/useTimeTableStore.js @@ -0,0 +1,12 @@ +import { create } from 'zustand'; +const useTimeTableStore = create(set => ({ + tableInfos: [], + showData: [], + subjectName: '', + + setTableInfos: tableInfos => set({ tableInfos }), + setShowData: showData => set({ showData }), + setSubjectName: subjectName => set({ subjectName }), +})); + +export default useTimeTableStore;