Skip to content

Commit 9767b12

Browse files
authored
Merge pull request #468 from Gwasuwon-shot/hotfix#-errorFix
Hotfix# error fix
2 parents 7e72e78 + 9563e87 commit 9767b12

File tree

6 files changed

+78
-57
lines changed

6 files changed

+78
-57
lines changed

src/components/lessonShare/ShareMain.tsx

Lines changed: 11 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,10 @@
11
import { useEffect, useState } from "react";
22
import { useNavigate } from "react-router-dom";
3-
import { useRecoilState, useRecoilValue } from "recoil";
3+
import { useRecoilValue } from "recoil";
44
import styled from "styled-components";
55
import { CopyLessonShareIc, ShareViaEtc, ShareViaMessage } from "../../assets";
6-
import { studentNameState, subjectNameState } from "../../atom/common/datePicker";
7-
import { cycleNumberState, dateState, dayState, firstLessonDay, focusDayState } from "../../atom/timePicker/timePicker";
8-
import {
9-
accountNumber,
10-
bankName,
11-
lessonCodeAndPaymentId,
12-
moneyAmount,
13-
payingPersonName,
14-
paymentOrder,
15-
} from "../../atom/tuitionPayment/tuitionPayment";
6+
import { studentNameState } from "../../atom/common/datePicker";
7+
import { lessonCodeAndPaymentId } from "../../atom/tuitionPayment/tuitionPayment";
168
import useGetLessonByUser from "../../hooks/useGetLessonByUser";
179
import { handleMoveToPageProps } from "../../pages/LessonShare";
1810
import { BottomButton, ProgressBar } from "../common";
@@ -32,39 +24,19 @@ interface Day {
3224

3325
export default function ShareMain({ handleMoveToPage }: handleMoveToPageProps) {
3426
const { userName } = useGetLessonByUser();
35-
36-
const [cycleNumber, setCycleNumberState] = useRecoilState(cycleNumberState);
37-
const [date, setdateState] = useRecoilState(dateState);
38-
const [day, setDayState] = useRecoilState(dayState);
39-
const [firstLesson, setFirstLessonDay] = useRecoilState(firstLessonDay);
40-
const [focusDay, setFocusDayState] = useRecoilState(focusDayState);
41-
const [studentName, setStudentName] = useRecoilState<string>(studentNameState);
42-
const [subjectName, setSubjectNameState] = useRecoilState(subjectNameState);
43-
const [accountNum, setAccountNumber] = useRecoilState(accountNumber);
44-
const [bank, setBankName] = useRecoilState(bankName);
45-
const [money, setMoneyAmount] = useRecoilState(moneyAmount);
46-
const [payingPerson, setPayingPersonName] = useRecoilState(payingPersonName);
47-
const [payment, setPaymentOrder] = useRecoilState(paymentOrder);
48-
49-
function setAllSet() {
50-
setCycleNumberState(-1);
51-
setdateState({ year: new Date().getFullYear(), month: new Date().getMonth() + 1, date: new Date().getDate() });
52-
setDayState([]);
53-
setFirstLessonDay({ 1: "월", 2: "화", 3: "수", 4: "목", 5: "금", 6: "토", 0: "일" }[new Date().getDay()]);
54-
setStudentName("");
55-
setSubjectNameState("");
56-
setAccountNumber("");
57-
setBankName("");
58-
setMoneyAmount(0);
59-
setPayingPersonName("");
60-
}
61-
27+
const studentName = useRecoilValue<string>(studentNameState);
6228
const navigate = useNavigate();
6329
const codeAndId = useRecoilValue(lessonCodeAndPaymentId);
6430
const [URL, setURL] = useState(`https://tutice.com/${codeAndId?.lessonCode}`);
6531

6632
const SHARE_ICON = [
67-
{ icon: ShareViaMessage, text: "메시지", onClick: () => {} },
33+
{
34+
icon: ShareViaMessage,
35+
text: "메시지",
36+
onClick: () => {
37+
alert("준비 중인 기능입니다.");
38+
},
39+
},
6840
{
6941
icon: ShareViaEtc,
7042
text: "기타",
@@ -76,7 +48,6 @@ export default function ShareMain({ handleMoveToPage }: handleMoveToPageProps) {
7648

7749
useEffect(() => {
7850
setURL(`https://tutice.com/${codeAndId?.lessonCode}`);
79-
setAllSet();
8051
}, [codeAndId]);
8152

8253
function handleMoveToHome() {

src/components/parentsHome/NoClassParentsHome.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export default function NoClassParentsHome() {
77
const navigate = useNavigate();
88

99
function handleMoveToOnboarding() {
10-
navigate("/on-boarding");
10+
navigate("/on-boarding", { state: { isFromParentsHome: true } });
1111
}
1212

1313
return (

src/components/parentsHome/TodayClassSwiper.tsx

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import "slick-carousel/slick/slick.css";
2-
import "slick-carousel/slick/slick-theme.css";
31
import Slider from "react-slick";
4-
import { TODAY_CLASS_SLIDER_SETTINGS } from "../../core/parentsHome/parentsHome";
5-
import TodayClassScedule from "./TodayClassScedule";
2+
import "slick-carousel/slick/slick-theme.css";
3+
import "slick-carousel/slick/slick.css";
64
import { styled } from "styled-components";
5+
import { TODAY_CLASS_SLIDER_SETTINGS } from "../../core/parentsHome/parentsHome";
76
import useGetTodayScheduleByParents from "../../hooks/useGetTodayScheduleByParents";
7+
import TodayClassScedule from "./TodayClassScedule";
88

99
interface calssInfoType {
1010
idx: number;
@@ -16,14 +16,14 @@ interface calssInfoType {
1616
}
1717

1818
export default function TodayClassSwiper() {
19-
const dateOfWeek = "월";
20-
const dateStr = "2023-07-12";
21-
22-
const date = new Date(dateStr);
19+
const date = new Date();
2320

24-
const year = date.getFullYear(); // 년 추출
25-
const month = date.getMonth() + 1; // 월 추출 (0부터 시작하므로 +1)
26-
const day = date.getDate(); // 일 추출
21+
const year = date.getFullYear();
22+
const month = date.getMonth() + 1;
23+
const day = date.getDate();
24+
const dayOfWeek = date.getDay();
25+
const dayOfWeekStr = ["일", "월", "화", "수", "목", "금", "토"];
26+
const dayOfWeekKor = dayOfWeekStr[dayOfWeek];
2727

2828
const { scheduleList } = useGetTodayScheduleByParents();
2929

@@ -32,7 +32,7 @@ export default function TodayClassSwiper() {
3232
{scheduleList?.length > 0 && (
3333
<div>
3434
<SwiperTitleDate>
35-
{year}{month}{day}일 ({dateOfWeek}) 수업
35+
{year}{month}{day}일 ({dayOfWeekKor}) 수업
3636
</SwiperTitleDate>
3737
<Slider {...TODAY_CLASS_SLIDER_SETTINGS}>
3838
{scheduleList.map((classInfo: calssInfoType) => {
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import { useResetRecoilState } from "recoil";
2+
import { studentNameState, subjectNameState } from "../../atom/common/datePicker";
3+
import { cycleNumberState, dateState, firstLessonDay, focusDayState } from "../../atom/timePicker/timePicker";
4+
import {
5+
accountNumber,
6+
bankName,
7+
moneyAmount,
8+
payingPersonName,
9+
paymentOrder,
10+
} from "../../atom/tuitionPayment/tuitionPayment";
11+
12+
const useResetAllRecoilStates = () => {
13+
const resetCycleNumber = useResetRecoilState(cycleNumberState);
14+
const resetDate = useResetRecoilState(dateState);
15+
const resetDay = useResetRecoilState(dateState);
16+
const resetFirstLessonDay = useResetRecoilState(firstLessonDay);
17+
const resetFocusDay = useResetRecoilState(focusDayState);
18+
const resetStudentName = useResetRecoilState(studentNameState);
19+
const resetSubjectName = useResetRecoilState(subjectNameState);
20+
const resetAccountNumber = useResetRecoilState(accountNumber);
21+
const resetBankName = useResetRecoilState(bankName);
22+
const resetMoneyAmount = useResetRecoilState(moneyAmount);
23+
const resetPayingPersonName = useResetRecoilState(payingPersonName);
24+
const resetPaymentOrder = useResetRecoilState(paymentOrder);
25+
26+
const resetAllStates = () => {
27+
resetCycleNumber();
28+
resetDate();
29+
resetDay();
30+
resetFirstLessonDay();
31+
resetFocusDay();
32+
resetStudentName();
33+
resetSubjectName();
34+
resetAccountNumber();
35+
resetBankName();
36+
resetMoneyAmount();
37+
resetPayingPersonName();
38+
resetPaymentOrder();
39+
};
40+
41+
return resetAllStates;
42+
};
43+
44+
export default useResetAllRecoilStates;

src/pages/ManageLessonMain.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,13 @@ import { AddTreeCodeButtonManageIc } from "../assets";
66
import { attendanceStatus } from "../atom/attendanceCheck/attendanceStatus";
77
import { isModalOpen } from "../atom/common/isModalOpen";
88
import { isSnackBarOpen } from "../atom/common/isSnackBarOpen";
9-
import CancelLessonMaintenanceSnackBar from "../components/common/CancelLessonMaintenanceSnackBar";
109
import TeacherFooter from "../components/common/TeacherFooter";
1110
import DeleteLessonModal from "../components/manageLesson/DeleteLessonModal";
1211
import ExtensionLessonModal from "../components/manageLesson/ExtensionLessonModal";
1312
import FinishedLessons from "../components/manageLesson/FinishedLessons";
1413
import MainLessons from "../components/manageLesson/MainLessons";
1514
import MissingMainteanceLessons from "../components/manageLesson/MissingMainteanceLessons";
16-
import SuccessLessonMaintenanceSnackBar from "../components/modal/SuccessLessonMaintenanceSanckBar";
15+
import useResetAllRecoilStates from "../hooks/manageLessons/useResetLessonInfo";
1716
import useGetAllLessons from "../hooks/useGetAllLessons";
1817
import useGetMissingMaintenanceLesson from "../hooks/useGetMissingMaintenanceLesson";
1918
import { lessonListType } from "../type/manageLesson/lessonListType";
@@ -22,7 +21,10 @@ export default function ManageLessonMain() {
2221
const [snackBarOpen, setSanckBarOpen] = useRecoilState(isSnackBarOpen);
2322
const [isSuccess, setIsSuccess] = useState(true);
2423
const navigate = useNavigate();
24+
2525
const [attendanceData, setAttendanceData] = useRecoilState(attendanceStatus);
26+
const resetAll = useResetAllRecoilStates();
27+
2628
const [isClickedEdit, setIsClickedEdit] = useState(false);
2729
const [isClickedDeleteButton, setIsClickedDeleteButton] = useState(false);
2830
const [openModal, setOpenModal] = useRecoilState<boolean>(isModalOpen);
@@ -44,6 +46,7 @@ export default function ManageLessonMain() {
4446
}
4547

4648
function handleMakeTreeCode() {
49+
resetAll();
4750
navigate("/register-lesson");
4851
}
4952

src/pages/OnBoarding.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { useEffect, useRef, useState } from "react";
2-
import { useNavigate } from "react-router-dom";
2+
import { useLocation, useNavigate } from "react-router-dom";
33
import Slider from "react-slick";
44
import "slick-carousel/slick/slick-theme.css";
55
import "slick-carousel/slick/slick.css";
@@ -12,12 +12,15 @@ import { SLIDER_SETTING } from "../core/OnBoarding";
1212

1313
export default function OnBoarding() {
1414
const sliderRef = useRef<Slider>(null);
15+
const location = useLocation();
16+
const { isFromParentsHome } = location.state || {};
17+
1518
const [step, setStep] = useState(0);
1619
const navigate = useNavigate();
1720
const isLastSwiper = step === 3;
1821

1922
useEffect(() => {
20-
if (getCookie("lastLogin")) {
23+
if (getCookie("lastLogin") && !isFromParentsHome) {
2124
navigate("/landing");
2225
}
2326
}, []);

0 commit comments

Comments
 (0)