feat(WEB): IntegratedDetailTemplate 통합 템플릿 구현 및 Phase 1~8 마이그레이션

- Phase 1: 기안함(DocumentCreate) 마이그레이션
- Phase 2: 작업지시(WorkOrderCreate/Edit) 마이그레이션
- Phase 3: 출하(ShipmentCreate/Edit) 마이그레이션
- Phase 4: 사원(EmployeeForm) 마이그레이션
- Phase 5: 게시판(BoardForm) 마이그레이션
- Phase 6: 1:1문의(InquiryForm) 마이그레이션
- Phase 7: 공정(ProcessForm) 마이그레이션
- Phase 8: 수입검사/품질검사(InspectionCreate) 마이그레이션
- DetailActions에 showSave 옵션 추가
- 각 도메인별 config 파일 생성

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
유병철
2026-01-20 19:31:07 +09:00
parent 6b0ffc810b
commit 62ef2b1ff9
24 changed files with 861 additions and 534 deletions

View File

@@ -27,6 +27,7 @@ export interface DetailActionsProps {
back?: boolean;
delete?: boolean;
edit?: boolean;
save?: boolean;
};
/** 버튼 라벨 */
labels?: {
@@ -74,6 +75,7 @@ export function DetailActions({
back: showBack = true,
delete: showDelete = true,
edit: showEdit = true,
save: showSave = true,
} = showButtons;
const {
@@ -133,11 +135,16 @@ export function DetailActions({
{cancelLabel}
</Button>
{/* 오른쪽: 저장/등록 */}
<Button onClick={onSubmit} disabled={isSubmitting}>
<Save className="w-4 h-4 mr-2" />
{actualSubmitLabel}
</Button>
{/* 오른쪽: 추가액션 + 저장/등록 */}
<div className="flex items-center gap-2">
{extraActions}
{showSave && onSubmit && (
<Button onClick={onSubmit} disabled={isSubmitting}>
<Save className="w-4 h-4 mr-2" />
{actualSubmitLabel}
</Button>
)}
</div>
</div>
);
}

View File

@@ -302,6 +302,7 @@ export function IntegratedDetailTemplate<T extends Record<string, unknown>>({
back: actions.showBack !== false,
delete: actions.showDelete !== false && !!onDelete,
edit: actions.showEdit !== false,
save: actions.showSave !== false,
}}
labels={{
back: actions.backLabel,