diff --git a/src/entities/home/ui/day-status-box-container1.tsx b/src/entities/home/ui/day-status-box-container1.tsx index edf546e..39f8ed7 100644 --- a/src/entities/home/ui/day-status-box-container1.tsx +++ b/src/entities/home/ui/day-status-box-container1.tsx @@ -10,7 +10,7 @@ import { } from '../model/types'; import { useNavigate } from '@/shared/lib/hooks'; import { PATHS } from '@/shared/constants/paths'; -import { useStore } from '@/shared/model/store'; +import { useNewMidStore, useStore } from '@/shared/model/store'; import { useTranslation } from 'react-i18next'; import { showAlert } from '@/widgets/show-alert'; import { checkGrant } from '@/shared/lib/check-grant'; @@ -19,9 +19,9 @@ import { snackBar } from '@/shared/lib'; export const BoxContainer1 = () => { const { navigate } = useNavigate(); const { t, i18n } = useTranslation(); - const userMid = useStore.getState().UserStore.mid; - - const [mid, setMid] = useState(userMid); + const { newMid } = useNewMidStore(); + + const [mid, setMid] = useState(); const [searchDate, setSearchDate] = useState(moment().format('YYYYMMDD')); const [sales, setSales] = useState(); @@ -84,8 +84,19 @@ export const BoxContainer1 = () => { }; useEffect(() => { - callToday(); + const userMid = useStore.getState().UserStore.mid; + setMid(userMid); }, []); + useEffect(() => { + if(mid){ + callToday(); + } + }, [mid]); + useEffect(() => { + if(!!newMid){ + setMid(newMid); + } + }, [newMid]); return ( <> diff --git a/src/entities/home/ui/day-status-box-container2.tsx b/src/entities/home/ui/day-status-box-container2.tsx index 5ef01ee..85500a0 100644 --- a/src/entities/home/ui/day-status-box-container2.tsx +++ b/src/entities/home/ui/day-status-box-container2.tsx @@ -6,7 +6,7 @@ import { useHomeOverviewMutation } from '../api/use-home-overview-mutation'; import { useHomeMonthwMutation } from '../api/use-home-month-mutation'; import { useNavigate } from '@/shared/lib/hooks'; import { PATHS } from '@/shared/constants/paths'; -import { useStore } from '@/shared/model/store'; +import { useNewMidStore, useStore } from '@/shared/model/store'; import { useTranslation } from 'react-i18next'; import { showAlert } from '@/widgets/show-alert'; import { checkGrant } from '@/shared/lib/check-grant'; @@ -15,9 +15,9 @@ import { snackBar } from '@/shared/lib'; export const BoxContainer2 = () => { const { navigate } = useNavigate(); const { t, i18n } = useTranslation(); - const userMid = useStore.getState().UserStore.mid; - - const [mid, setMid] = useState(userMid); + const { newMid } = useNewMidStore(); + + const [mid, setMid] = useState(); const [searchMonth, setSearchMonth] = useState(moment().format('YYYYMM')); const [searchDate, setSearchDate] = useState(moment().format('YYYYMMDD')); @@ -89,9 +89,20 @@ export const BoxContainer2 = () => { }; useEffect(() => { - callMonth(); - callOverview(); + const userMid = useStore.getState().UserStore.mid; + setMid(userMid); }, []); + useEffect(() => { + if(!!mid){ + callMonth(); + callOverview(); + } + }, [mid]); + useEffect(() => { + if(!!newMid){ + setMid(newMid); + } + }, [newMid]); const onClickToNavigate = (path: string) => { if(path === 'allTransaction'){ diff --git a/src/shared/model/store.ts b/src/shared/model/store.ts index 7134056..bc09376 100644 --- a/src/shared/model/store.ts +++ b/src/shared/model/store.ts @@ -6,6 +6,10 @@ import { createUserInfoStore, UserInfoState } from '@/entities/user/model/store' import { createBannerInfoStore, BannerInfoState, createCommonStore, CommonState } from '@/entities/common/model/store'; import { StorageKeys } from '@/shared/constants/local-storage'; +export interface NewMidStore { + newMid: string; + setNewMid: (newMid: string) => void; +}; export interface DownloadBottomSheetOnStore { downloadBottomSheetOn: boolean; setDownloadBottomSheetOn: (downloadBottomSheetOn: boolean) => void; @@ -46,6 +50,15 @@ export interface MenuIdsStore { deleteMenuId: (menuId: number) => void; }; +export const useNewMidStore = create((set) => ({ + newMid: '', + setNewMid: (newMid: string) => { + set((state: {newMid: string}) => ({ + newMid: (state.newMid = newMid) + })); + } +})); + export const useDownloadBottomSheetOnStore = create((set) => ({ downloadBottomSheetOn: false, setDownloadBottomSheetOn: (downloadBottomSheetOn: boolean) => { diff --git a/src/widgets/navigation/header.tsx b/src/widgets/navigation/header.tsx index 070fefd..6074c12 100644 --- a/src/widgets/navigation/header.tsx +++ b/src/widgets/navigation/header.tsx @@ -6,7 +6,7 @@ import { HeaderType, HeaderNavigationProps } from '@/entities/common/model/types'; -import { useStore } from '@/shared/model/store'; +import { useNewMidStore, useStore } from '@/shared/model/store'; import { ChangeEvent, useEffect, useState } from 'react'; import { AppAlarmUnreadCountParams, AppAlarmUnreadCountResponse, MERCHANT_ADMIN_APP } from '@/entities/alarm/model/types'; import { useAppAlarmUnreadCountMutation } from '@/entities/alarm/api/use-app-alarm-unread-count-mutation'; @@ -24,10 +24,12 @@ export const HeaderNavigation = ({ setMid }: HeaderNavigationProps) => { const { mutateAsync: appAlarmUnreadCount } = useAppAlarmUnreadCountMutation(); - + const { newMid, setNewMid } = useNewMidStore(); + let [selectOptions, setSelectOptions] = useState>>([]); const [unreadCount, setUnreadCount] = useState(0); + const { navigate, navigateBack, @@ -57,8 +59,8 @@ export const HeaderNavigation = ({ let value = e.target.value; useStore.getState().UserStore.setMid(value); setLocalStorage(StorageKeys.UserMid, value); - reload(); - //setMid(value); + setMid(value); + setNewMid(value); }; const callAlarmCount = () => {