feat: 메뉴 복사 시 화면명 일괄 변환 기능 추가
새로운 기능: - 화면명에서 특정 텍스트 제거 (예: '탑씰' 제거) - 화면명에 접두사 추가 (예: '한신' 추가) - 변환 로직: 제거 → 접두사 추가 순서로 적용 백엔드: - menuCopyService.copyMenu()에 screenNameConfig 파라미터 추가 - copyScreens()에서 화면명 변환 로직 적용 - 정규식으로 전역 치환 (new RegExp(text, 'g')) 프론트엔드: - MenuCopyDialog에 화면명 일괄 변경 UI 추가 - Checkbox로 기능 활성화/비활성화 - 2개 Input: removeText, addPrefix - API 호출 시 screenNameConfig 전달 사용 예시: 1. '탑씰 회사정보' → '회사정보' (제거만) 2. '회사정보' → '한신 회사정보' (접두사만) 3. '탑씰 회사정보' → '한신 회사정보' (제거 + 접두사) 관련 파일: - backend-node/src/services/menuCopyService.ts - backend-node/src/controllers/adminController.ts - frontend/lib/api/menu.ts - frontend/components/admin/MenuCopyDialog.tsx
This commit is contained in:
@@ -3308,12 +3308,21 @@ export async function copyMenu(
|
||||
return;
|
||||
}
|
||||
|
||||
// 화면명 변환 설정 (선택사항)
|
||||
const screenNameConfig = req.body.screenNameConfig
|
||||
? {
|
||||
removeText: req.body.screenNameConfig.removeText,
|
||||
addPrefix: req.body.screenNameConfig.addPrefix,
|
||||
}
|
||||
: undefined;
|
||||
|
||||
// 메뉴 복사 실행
|
||||
const menuCopyService = new MenuCopyService();
|
||||
const result = await menuCopyService.copyMenu(
|
||||
parseInt(menuObjid, 10),
|
||||
targetCompanyCode,
|
||||
userId
|
||||
userId,
|
||||
screenNameConfig
|
||||
);
|
||||
|
||||
logger.info("✅ 메뉴 복사 API 성공");
|
||||
|
||||
Reference in New Issue
Block a user