현금영수증 리스트
This commit is contained in:
@@ -8,13 +8,13 @@ import { PATHS } from '@/shared/constants/paths';
|
||||
import { MenuItem } from '../model/types';
|
||||
|
||||
export interface MenuCategoryProps {
|
||||
menuId?: string;
|
||||
menuId?: number;
|
||||
menuIcon?: string;
|
||||
menuName?: string;
|
||||
subMenu?: Array<MenuItem>;
|
||||
setMenuOn?: (menuOn: boolean) => void;
|
||||
editMode?: boolean;
|
||||
setChangeMenuId: (menuId?: string) => void;
|
||||
setChangeMenuId: (menuIdChecked?: string) => void;
|
||||
buttonRefs: RefObject<Array<HTMLDivElement>>;
|
||||
itemIndex: number;
|
||||
};
|
||||
@@ -34,7 +34,7 @@ export const MenuCategory = ({
|
||||
const location = useLocation();
|
||||
|
||||
const [favoriteItems, setFavoriteItems] = useState<Array<UserFavorite>>([]);
|
||||
const [menuIds, setMenuIds] = useState<Array<string | undefined>>([]);
|
||||
const [menuIds, setMenuIds] = useState<Array<number | undefined>>([]);
|
||||
|
||||
const onClickToNavigate = (path?: string) => {
|
||||
if(!!path && !!setMenuOn && !editMode){
|
||||
@@ -45,9 +45,11 @@ export const MenuCategory = ({
|
||||
|
||||
const favoriteSetting = (
|
||||
checked: boolean,
|
||||
title?: string,
|
||||
path?: string,
|
||||
menuId?: string
|
||||
menuId?: number,
|
||||
menuName?: string,
|
||||
menuNameEng?: string,
|
||||
iconFilePath?: string,
|
||||
programPath?: string,
|
||||
) => {
|
||||
let userFavorite = useStore.getState().UserStore.userFavorite;
|
||||
let randomNum = Math.floor(Math.random() * 3) + 1;
|
||||
@@ -55,10 +57,11 @@ export const MenuCategory = ({
|
||||
userFavorite = [
|
||||
...userFavorite,
|
||||
{
|
||||
title: title,
|
||||
img: `${IMAGE_ROOT}/ico_menu_0${randomNum}.svg`,
|
||||
path: path,
|
||||
menuId: menuId
|
||||
menuId: menuId,
|
||||
menuName: menuName,
|
||||
menuNameEng: menuNameEng,
|
||||
iconFilePath: `${IMAGE_ROOT}/ico_menu_0${randomNum}.svg`,
|
||||
programPath: programPath
|
||||
}
|
||||
];
|
||||
}
|
||||
@@ -78,7 +81,7 @@ export const MenuCategory = ({
|
||||
const callFavoiteItems = () => {
|
||||
let userFavorite = useStore.getState().UserStore.userFavorite;
|
||||
setFavoriteItems(userFavorite);
|
||||
let newArr: Array<string | undefined> = userFavorite.map((value, index) => {
|
||||
let newArr: Array<number | undefined> = userFavorite.map((value, index) => {
|
||||
return value.menuId;
|
||||
});
|
||||
setMenuIds(newArr);
|
||||
@@ -88,15 +91,22 @@ export const MenuCategory = ({
|
||||
callFavoiteItems();
|
||||
}, []);
|
||||
|
||||
useEffect(() => {
|
||||
if(menuIds.length > 0) {
|
||||
// callShortcutSave();
|
||||
}
|
||||
|
||||
}, [menuIds]);
|
||||
|
||||
const getMenuItems = () => {
|
||||
let rs = [];
|
||||
if(subMenu){
|
||||
for(let i=0;i<subMenu.length;i++){
|
||||
if(!!editMode){
|
||||
if(!!editMode && subMenu[i] && subMenu[i]?.menuId){
|
||||
rs.push(
|
||||
<li
|
||||
key={ `menu-item-key-${menuId}-${i}` }
|
||||
onClick={ () => onClickToNavigate(subMenu[i]?.path) }
|
||||
onClick={ () => onClickToNavigate(subMenu[i]?.programPath) }
|
||||
>
|
||||
<span>{ subMenu[i]?.menuName }</span>
|
||||
<div className="check_box_scrap">
|
||||
@@ -107,9 +117,11 @@ export const MenuCategory = ({
|
||||
checked={ menuIds.includes(subMenu[i]?.menuId)? true: false }
|
||||
onChange={ (e) => favoriteSetting(
|
||||
e.target.checked,
|
||||
subMenu[i]?.menuName,
|
||||
subMenu[i]?.path,
|
||||
subMenu[i]?.menuId
|
||||
subMenu[i]?.menuId,
|
||||
subMenu[i]?.menuName,
|
||||
subMenu[i]?.menuNameEng,
|
||||
subMenu[i]?.iconFilePath,
|
||||
subMenu[i]?.programPath,
|
||||
)}
|
||||
/>
|
||||
<label
|
||||
@@ -124,7 +136,7 @@ export const MenuCategory = ({
|
||||
rs.push(
|
||||
<li
|
||||
key={ `menu-item-key-${i}` }
|
||||
onClick={ () => onClickToNavigate(subMenu[i]?.path) }
|
||||
onClick={ () => onClickToNavigate(subMenu[i]?.programPath) }
|
||||
>{ subMenu[i]?.menuName }</li>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user