feat: change route url on sidebar nav

- 사이드 바 URL 변경
- '내가 작성한 매물', '내가 작성한 문의' 카드 클릭 시 체크박스 선택 된 채로 이동하도록 구현
This commit is contained in:
Dayoung 2025-06-05 11:36:49 +09:00
parent 730e9a85e3
commit e615521aeb
3 changed files with 37 additions and 5 deletions

View File

@ -5,7 +5,7 @@ import { useState } from 'react'
export default function ListForm() { export default function ListForm() {
const router = useRouter() const router = useRouter()
const { inquiryListRequest, setInquiryListRequest, reset } = useInquiryFilterStore() const { inquiryListRequest, setInquiryListRequest, reset, setOffset } = useInquiryFilterStore()
const [searchKeyword, setSearchKeyword] = useState(inquiryListRequest.schTitle ?? '') const [searchKeyword, setSearchKeyword] = useState(inquiryListRequest.schTitle ?? '')
const handleSearch = () => { const handleSearch = () => {
@ -40,6 +40,19 @@ export default function ListForm() {
onChange={(e) => setSearchKeyword(e.target.value)} onChange={(e) => setSearchKeyword(e.target.value)}
onKeyDown={handleKeyDown} onKeyDown={handleKeyDown}
/> />
{searchKeyword && (
<button
className="del-icon"
onClick={() => {
setSearchKeyword('')
setInquiryListRequest({
...inquiryListRequest,
schTitle: '',
})
setOffset(1)
}}
></button>
)}
<button className="search-icon" onClick={handleSearch}></button> <button className="search-icon" onClick={handleSearch}></button>
</div> </div>
</div> </div>

View File

@ -86,7 +86,7 @@ export default function ListTable() {
<div className="inquiry-table-filter"> <div className="inquiry-table-filter">
<div className="filter-check"> <div className="filter-check">
<div className="check-form-box"> <div className="check-form-box">
<input type="checkbox" id="ch01" onChange={handleMyInquiry} /> <input type="checkbox" id="ch01" onChange={handleMyInquiry} checked={inquiryListRequest.schRegId === session.userId} />
<label htmlFor="ch01"></label> <label htmlFor="ch01"></label>
</div> </div>
</div> </div>

View File

@ -11,6 +11,8 @@ import { useSideNavState } from '@/store/sideNavState'
import { useHeaderStore } from '@/store/header' import { useHeaderStore } from '@/store/header'
import { useSessionStore } from '@/store/session' import { useSessionStore } from '@/store/session'
import { usePopupController } from '@/store/popupController' import { usePopupController } from '@/store/popupController'
import { useSurveyFilterStore } from '@/store/surveyFilterStore'
import { useInquiryFilterStore } from '@/store/inquiryFilterStore'
import { useTitle } from '@/hooks/useTitle' import { useTitle } from '@/hooks/useTitle'
import { useAxios } from '@/hooks/useAxios' import { useAxios } from '@/hooks/useAxios'
@ -30,6 +32,9 @@ export default function Header() {
const popupController = usePopupController() const popupController = usePopupController()
const { setIsMySurvey } = useSurveyFilterStore()
const { setInquiryListRequest, inquiryListRequest } = useInquiryFilterStore()
if (pathname === '/login') { if (pathname === '/login') {
return null return null
} }
@ -80,13 +85,27 @@ export default function Header() {
<div className="side-swiper-wrap"> <div className="side-swiper-wrap">
<Swiper slidesPerView={1.6} spaceBetween={12} className="mySwiper"> <Swiper slidesPerView={1.6} spaceBetween={12} className="mySwiper">
<SwiperSlide> <SwiperSlide>
<div className="side-swiper-card"> <div
className="side-swiper-card"
onClick={() => {
setIsMySurvey(session?.userId)
router.push('/survey-sale')
setSideNavIsOpen(false)
}}
>
<div className="side-swiper-icon icon01"></div> <div className="side-swiper-icon icon01"></div>
<div className="side-swiper-infor"></div> <div className="side-swiper-infor"></div>
</div> </div>
</SwiperSlide> </SwiperSlide>
<SwiperSlide> <SwiperSlide>
<div className="side-swiper-card"> <div
className="side-swiper-card"
onClick={() => {
setInquiryListRequest({ ...inquiryListRequest, schRegId: session?.userId })
router.push('/inquiry/list')
setSideNavIsOpen(false)
}}
>
<div className="side-swiper-icon icon02"></div> <div className="side-swiper-icon icon02"></div>
<div className="side-swiper-infor"> </div> <div className="side-swiper-infor"> </div>
</div> </div>
@ -105,7 +124,7 @@ export default function Header() {
<button onClick={() => router.push('/survey-sale')}>調</button> <button onClick={() => router.push('/survey-sale')}>調</button>
</li> </li>
<li className="side-nav-item"> <li className="side-nav-item">
<button onClick={() => router.push('/survey-sale/basic-info')}>調</button> <button onClick={() => router.push('/survey-sale/regist')}>調</button>
</li> </li>
<li className="side-nav-item"> <li className="side-nav-item">
<button onClick={() => router.push('/inquiry/list')}>1:1お問い合わせ</button> <button onClick={() => router.push('/inquiry/list')}>1:1お問い合わせ</button>