feat: 모바일 반응형 UI 개선 및 공휴일/일정 시스템 통합
- MobileCard 접기/펼치기(collapsible) 기능 추가 및 반응형 레이아웃 개선 - DatePicker 공휴일/세무일정 색상 코딩 통합, DateTimePicker 신규 추가 - useCalendarScheduleInit 훅으로 전역 공휴일/일정 데이터 캐싱 - 전 도메인 날짜 필드 DatePicker 표준화 (104 files) - 생산대시보드/작업지시 모바일 호환성 강화 - 견적서/주문관리 반응형 그리드 적용 - 회계 모듈 기능 개선 (매입상세 결재연동, 미수금현황 조회조건 등) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -281,7 +281,7 @@ export function TransactionFormModal({
|
||||
</div>
|
||||
|
||||
{/* 거래일 * / 거래시간 */}
|
||||
<div className="grid grid-cols-2 gap-4">
|
||||
<div className="grid grid-cols-1 sm:grid-cols-2 gap-4">
|
||||
<div className="space-y-2">
|
||||
<Label className="font-medium">
|
||||
거래일 <span className="text-red-500">*</span>
|
||||
@@ -327,7 +327,7 @@ export function TransactionFormModal({
|
||||
</div>
|
||||
|
||||
{/* 금액 * / 잔액 (자동계산) */}
|
||||
<div className="grid grid-cols-2 gap-4">
|
||||
<div className="grid grid-cols-1 sm:grid-cols-2 gap-4">
|
||||
<div className="space-y-2">
|
||||
<Label className="font-medium">
|
||||
금액 <span className="text-red-500">*</span>
|
||||
@@ -399,33 +399,15 @@ export function TransactionFormModal({
|
||||
</div>
|
||||
|
||||
{/* 하단 버튼 */}
|
||||
<div className="flex items-center justify-between pt-4 border-t">
|
||||
{/* 좌측: 원본으로 복원 (③) - 수정 모드에서만 */}
|
||||
<div>
|
||||
{mode === 'edit' && (
|
||||
<Button
|
||||
variant="outline"
|
||||
onClick={handleRestore}
|
||||
disabled={isProcessing}
|
||||
className="gap-1"
|
||||
>
|
||||
{isRestoring ? (
|
||||
<Loader2 className="h-4 w-4 animate-spin" />
|
||||
) : (
|
||||
<RotateCcw className="h-4 w-4" />
|
||||
)}
|
||||
원본으로 복원
|
||||
</Button>
|
||||
)}
|
||||
</div>
|
||||
|
||||
{/* 우측: 삭제 + 수정/등록 */}
|
||||
<div className="flex flex-col gap-2 pt-4 border-t">
|
||||
{/* 삭제 + 수정/등록 (50:50) */}
|
||||
<div className="flex gap-2">
|
||||
{mode === 'edit' && (
|
||||
<Button
|
||||
variant="outline"
|
||||
onClick={handleDelete}
|
||||
disabled={isProcessing}
|
||||
className="flex-1"
|
||||
>
|
||||
{isDeleting ? <Loader2 className="h-4 w-4 mr-1 animate-spin" /> : null}
|
||||
삭제
|
||||
@@ -434,11 +416,29 @@ export function TransactionFormModal({
|
||||
<Button
|
||||
onClick={handleSubmit}
|
||||
disabled={isProcessing}
|
||||
className="flex-1"
|
||||
>
|
||||
{isSaving ? <Loader2 className="h-4 w-4 mr-1 animate-spin" /> : null}
|
||||
{mode === 'create' ? '등록' : '수정'}
|
||||
</Button>
|
||||
</div>
|
||||
|
||||
{/* 원본으로 복원 (100%) - 수정 모드에서만 */}
|
||||
{mode === 'edit' && (
|
||||
<Button
|
||||
variant="outline"
|
||||
onClick={handleRestore}
|
||||
disabled={isProcessing}
|
||||
className="w-full gap-1"
|
||||
>
|
||||
{isRestoring ? (
|
||||
<Loader2 className="h-4 w-4 animate-spin" />
|
||||
) : (
|
||||
<RotateCcw className="h-4 w-4" />
|
||||
)}
|
||||
원본으로 복원
|
||||
</Button>
|
||||
)}
|
||||
</div>
|
||||
</DialogContent>
|
||||
</Dialog>
|
||||
|
||||
Reference in New Issue
Block a user