diff --git a/src/entities/home/ui/day-status-box-container1.tsx b/src/entities/home/ui/day-status-box-container1.tsx index 0725012..a353322 100644 --- a/src/entities/home/ui/day-status-box-container1.tsx +++ b/src/entities/home/ui/day-status-box-container1.tsx @@ -12,6 +12,7 @@ import { useNavigate } from '@/shared/lib/hooks'; import { PATHS } from '@/shared/constants/paths'; import { useStore } from '@/shared/model/store'; import { useTranslation } from 'react-i18next'; +import { showAlert } from '@/widgets/show-alert'; export const BoxContainer1 = () => { const { navigate } = useNavigate(); @@ -56,8 +57,22 @@ export const BoxContainer1 = () => { }); }; + const checkGrant = (menuId?: number) => { + const menuGrantsByKey = useStore.getState().UserStore.menuGrantsByKey; + const myGrants = menuGrantsByKey['' + menuId]; + if(myGrants?.includes('R')){ + return true + } + return false; + }; + const onClickToNavigate = () => { - navigate(PATHS.settlement.list); + if(checkGrant(36)){ + navigate(PATHS.settlement.list); + } + else{ + showAlert('권한이 없습니다.'); + } }; useEffect(() => { diff --git a/src/entities/home/ui/day-status-box-container2.tsx b/src/entities/home/ui/day-status-box-container2.tsx index e8801b3..a8e7f94 100644 --- a/src/entities/home/ui/day-status-box-container2.tsx +++ b/src/entities/home/ui/day-status-box-container2.tsx @@ -8,6 +8,7 @@ import { useNavigate } from '@/shared/lib/hooks'; import { PATHS } from '@/shared/constants/paths'; import { useStore } from '@/shared/model/store'; import { useTranslation } from 'react-i18next'; +import { showAlert } from '@/widgets/show-alert'; export const BoxContainer2 = () => { const { navigate } = useNavigate(); @@ -80,8 +81,22 @@ export const BoxContainer2 = () => { callOverview(); }, []); + const checkGrant = (menuId?: number) => { + const menuGrantsByKey = useStore.getState().UserStore.menuGrantsByKey; + const myGrants = menuGrantsByKey['' + menuId]; + if(myGrants?.includes('R')){ + return true + } + return false; + }; + const onClickToNavigate = () => { - navigate(PATHS.settlement.list); + if(checkGrant(36)){ + navigate(PATHS.settlement.list); + } + else{ + showAlert('권한이 없습니다.'); + } }; const translateDayOfWeek = (koreanDay: string): string => { diff --git a/src/entities/home/ui/home-notice-item.tsx b/src/entities/home/ui/home-notice-item.tsx index 124d292..93a3eed 100644 --- a/src/entities/home/ui/home-notice-item.tsx +++ b/src/entities/home/ui/home-notice-item.tsx @@ -4,6 +4,8 @@ import { useNavigate } from '@/shared/lib/hooks/use-navigate'; import { NoticeItemProps } from '@/entities/support/model/types'; import { useTranslation } from 'react-i18next'; import { IMAGE_ROOT } from '@/shared/constants/common'; +import { useStore } from '@/shared/model/store'; +import { showAlert } from '@/widgets/show-alert'; export const HomeNoticeItem = ({ noticeItem, @@ -20,13 +22,25 @@ export const HomeNoticeItem = ({ } return moment(date).format('YYYY.MM.DD'); }; - + const checkGrant = (menuId?: number) => { + const menuGrantsByKey = useStore.getState().UserStore.menuGrantsByKey; + const myGrants = menuGrantsByKey['' + menuId]; + if(myGrants?.includes('R')){ + return true + } + return false; + }; const onClickToDetail = () => { - if(setDetailData){ - setDetailData({ - seq: noticeItem.seq, - detailOn: true - }); + if(checkGrant(62)){ + if(setDetailData){ + setDetailData({ + seq: noticeItem.seq, + detailOn: true + }); + } + } + else{ + showAlert('권한이 없습니다.'); } };