feat(WEB): 전체 페이지 ?mode= URL 네비게이션 패턴 적용
- 등록(?mode=new), 상세(?mode=view), 수정(?mode=edit) URL 패턴 일괄 적용
- 중복 패턴 제거: /edit?mode=edit → ?mode=edit (16개 파일)
- 제목 일관성: {기능} 등록/상세/수정 패턴 적용
- 검수 체크리스트 문서 추가 (79개 페이지)
- UniversalListPage, IntegratedDetailTemplate 공통 컴포넌트 개선
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -233,18 +233,19 @@ export default function PartnerForm({ mode, partnerId, initialData }: PartnerFor
|
||||
}, []);
|
||||
|
||||
// 동적 Config (모드별 타이틀/설명)
|
||||
// Note: IntegratedDetailTemplate이 모드에 따라 '등록'/'수정' 자동 추가
|
||||
const dynamicConfig = useMemo(() => {
|
||||
if (isNewMode) {
|
||||
return {
|
||||
...partnerConfig,
|
||||
title: '거래처 등록',
|
||||
title: '거래처',
|
||||
description: '새로운 거래처를 등록합니다',
|
||||
};
|
||||
}
|
||||
if (isEditMode) {
|
||||
return {
|
||||
...partnerConfig,
|
||||
title: '거래처 수정',
|
||||
title: '거래처',
|
||||
description: '거래처 정보를 수정합니다',
|
||||
};
|
||||
}
|
||||
@@ -628,7 +629,7 @@ export default function PartnerForm({ mode, partnerId, initialData }: PartnerFor
|
||||
return (
|
||||
<IntegratedDetailTemplate
|
||||
config={dynamicConfig}
|
||||
mode={mode}
|
||||
mode={mode === 'new' ? 'create' : mode}
|
||||
initialData={{}}
|
||||
itemId={partnerId}
|
||||
isLoading={false}
|
||||
|
||||
@@ -70,18 +70,18 @@ export default function PartnerListClient({ initialData = [], initialStats }: Pa
|
||||
// ===== 핸들러 =====
|
||||
const handleRowClick = useCallback(
|
||||
(item: Partner) => {
|
||||
router.push(`/ko/construction/project/bidding/partners/${item.id}`);
|
||||
router.push(`/ko/construction/project/bidding/partners/${item.id}?mode=view`);
|
||||
},
|
||||
[router]
|
||||
);
|
||||
|
||||
const handleCreate = useCallback(() => {
|
||||
router.push('/ko/construction/project/bidding/partners/new');
|
||||
router.push('/ko/construction/project/bidding/partners?mode=new');
|
||||
}, [router]);
|
||||
|
||||
const handleEdit = useCallback(
|
||||
(item: Partner) => {
|
||||
router.push(`/ko/construction/project/bidding/partners/${item.id}/edit`);
|
||||
router.push(`/ko/construction/project/bidding/partners/${item.id}?mode=edit`);
|
||||
},
|
||||
[router]
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user