feat: change route url on sidebar nav
- 사이드 바 URL 변경 - '내가 작성한 매물', '내가 작성한 문의' 카드 클릭 시 체크박스 선택 된 채로 이동하도록 구현
This commit is contained in:
parent
730e9a85e3
commit
e615521aeb
@ -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>
|
||||||
|
|||||||
@ -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>
|
||||||
|
|||||||
@ -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>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user