Revert "fix: 관리 페이지 날짜 상태 조건부 초기화"

This reverts commit 2dd5219265.
This commit is contained in:
caadiq 2026-01-10 00:20:04 +09:00
parent 2dd5219265
commit 0f7d3d6f39
4 changed files with 8 additions and 31 deletions

View file

@ -136,8 +136,6 @@ function AdminSchedule() {
selectedDate, setSelectedDate, selectedDate, setSelectedDate,
currentDate, setCurrentDate, currentDate, setCurrentDate,
scrollPosition, setScrollPosition, scrollPosition, setScrollPosition,
preserveState, setPreserveState,
reset,
} = useScheduleStore(); } = useScheduleStore();
// ( ) // ( )
@ -193,18 +191,10 @@ function AdminSchedule() {
} }
}, [inView, hasNextPage, isFetchingNextPage, fetchNextPage, isSearchMode, searchTerm]); }, [inView, hasNextPage, isFetchingNextPage, fetchNextPage, isSearchMode, searchTerm]);
// (preserveState false ) // selectedDate
useEffect(() => { useEffect(() => {
if (preserveState) { if (!selectedDate) {
// /, -
setPreserveState(false);
} else {
// -
setSelectedDate(getTodayKST()); setSelectedDate(getTodayKST());
setCurrentDate(new Date());
setSearchInput('');
setSearchTerm('');
setIsSearchMode(false);
} }
}, []); }, []);

View file

@ -9,12 +9,10 @@ import Toast from '../../../components/Toast';
import Tooltip from '../../../components/Tooltip'; import Tooltip from '../../../components/Tooltip';
import AdminHeader from '../../../components/admin/AdminHeader'; import AdminHeader from '../../../components/admin/AdminHeader';
import useToast from '../../../hooks/useToast'; import useToast from '../../../hooks/useToast';
import useScheduleStore from '../../../stores/useScheduleStore';
import * as botsApi from '../../../api/admin/bots'; import * as botsApi from '../../../api/admin/bots';
function AdminScheduleBots() { function AdminScheduleBots() {
const navigate = useNavigate(); const navigate = useNavigate();
const { setPreserveState } = useScheduleStore();
const [user, setUser] = useState(null); const [user, setUser] = useState(null);
const { toast, setToast } = useToast(); const { toast, setToast } = useToast();
const [bots, setBots] = useState([]); const [bots, setBots] = useState([]);
@ -200,12 +198,9 @@ function AdminScheduleBots() {
<Home size={16} /> <Home size={16} />
</Link> </Link>
<ChevronRight size={14} /> <ChevronRight size={14} />
<button <Link to="/admin/schedule" className="hover:text-primary transition-colors">
onClick={() => { setPreserveState(true); navigate('/admin/schedule'); }}
className="hover:text-primary transition-colors"
>
일정 관리 일정 관리
</button> </Link>
<ChevronRight size={14} /> <ChevronRight size={14} />
<span className="text-gray-700"> 관리</span> <span className="text-gray-700"> 관리</span>
</div> </div>

View file

@ -29,7 +29,6 @@ import CustomTimePicker from "../../../components/admin/CustomTimePicker";
import AdminHeader from "../../../components/admin/AdminHeader"; import AdminHeader from "../../../components/admin/AdminHeader";
import ConfirmDialog from "../../../components/admin/ConfirmDialog"; import ConfirmDialog from "../../../components/admin/ConfirmDialog";
import useToast from "../../../hooks/useToast"; import useToast from "../../../hooks/useToast";
import useScheduleStore from "../../../stores/useScheduleStore";
import * as authApi from "../../../api/admin/auth"; import * as authApi from "../../../api/admin/auth";
import * as categoriesApi from "../../../api/admin/categories"; import * as categoriesApi from "../../../api/admin/categories";
import * as schedulesApi from "../../../api/admin/schedules"; import * as schedulesApi from "../../../api/admin/schedules";
@ -37,7 +36,6 @@ import { getMembers } from "../../../api/public/members";
function AdminScheduleForm() { function AdminScheduleForm() {
const navigate = useNavigate(); const navigate = useNavigate();
const { setPreserveState } = useScheduleStore();
const { id } = useParams(); const { id } = useParams();
const isEditMode = !!id; const isEditMode = !!id;
@ -497,7 +495,6 @@ function AdminScheduleForm() {
: "일정이 추가되었습니다.", : "일정이 추가되었습니다.",
}) })
); );
setPreserveState(true);
navigate("/admin/schedule"); navigate("/admin/schedule");
} catch (error) { } catch (error) {
console.error("일정 저장 오류:", error); console.error("일정 저장 오류:", error);
@ -681,12 +678,12 @@ function AdminScheduleForm() {
<Home size={16} /> <Home size={16} />
</Link> </Link>
<ChevronRight size={14} /> <ChevronRight size={14} />
<button <Link
onClick={() => { setPreserveState(true); navigate('/admin/schedule'); }} to="/admin/schedule"
className="hover:text-primary transition-colors" className="hover:text-primary transition-colors"
> >
일정 관리 일정 관리
</button> </Link>
<ChevronRight size={14} /> <ChevronRight size={14} />
<span className="text-gray-700"> <span className="text-gray-700">
{isEditMode ? "일정 수정" : "일정 추가"} {isEditMode ? "일정 수정" : "일정 추가"}
@ -1158,7 +1155,7 @@ function AdminScheduleForm() {
<div className="flex items-center justify-end gap-4"> <div className="flex items-center justify-end gap-4">
<button <button
type="button" type="button"
onClick={() => { setPreserveState(true); navigate("/admin/schedule"); }} onClick={() => navigate("/admin/schedule")}
className="px-6 py-3 text-gray-700 hover:bg-gray-100 rounded-xl transition-colors font-medium" className="px-6 py-3 text-gray-700 hover:bg-gray-100 rounded-xl transition-colors font-medium"
> >
취소 취소

View file

@ -16,9 +16,6 @@ const useScheduleStore = create((set) => ({
// 스크롤 위치 // 스크롤 위치
scrollPosition: 0, scrollPosition: 0,
// 상태 유지 플래그 (일정 추가/수정, 봇 관리 페이지에서 돌아올 때만 true)
preserveState: false,
// 상태 업데이트 함수 // 상태 업데이트 함수
setSearchInput: (value) => set({ searchInput: value }), setSearchInput: (value) => set({ searchInput: value }),
setSearchTerm: (value) => set({ searchTerm: value }), setSearchTerm: (value) => set({ searchTerm: value }),
@ -27,7 +24,6 @@ const useScheduleStore = create((set) => ({
setSelectedDate: (value) => set({ selectedDate: value }), setSelectedDate: (value) => set({ selectedDate: value }),
setCurrentDate: (value) => set({ currentDate: value }), setCurrentDate: (value) => set({ currentDate: value }),
setScrollPosition: (value) => set({ scrollPosition: value }), setScrollPosition: (value) => set({ scrollPosition: value }),
setPreserveState: (value) => set({ preserveState: value }),
// 상태 초기화 // 상태 초기화
reset: () => reset: () =>
@ -39,7 +35,6 @@ const useScheduleStore = create((set) => ({
selectedDate: null, selectedDate: null,
currentDate: new Date(), currentDate: new Date(),
scrollPosition: 0, scrollPosition: 0,
preserveState: false,
}), }),
})); }));