diff --git a/resources/views/barobill/ecard/index.blade.php b/resources/views/barobill/ecard/index.blade.php
index 1551081f..c5d01b50 100644
--- a/resources/views/barobill/ecard/index.blade.php
+++ b/resources/views/barobill/ecard/index.blade.php
@@ -3,16 +3,6 @@
@section('title', '카드 사용내역')
@section('content')
-
-
-
-
-
{value}
- {subtext &&
{subtext}
}
+
+ {label}
+ {value}
);
};
- // CardSelector Component
- const CardSelector = ({ cards, selectedCard, onSelect }) => (
-
-
- {cards.map(card => (
-
- ))}
-
- );
-
// AccountCodeSelect Component (검색 가능한 드롭다운)
const AccountCodeSelect = ({ value, onChange, accountCodes }) => {
const [isOpen, setIsOpen] = useState(false);
@@ -1010,32 +965,18 @@ className="flex-1 py-2 bg-purple-600 text-white rounded-lg hover:bg-purple-700 t
const TransactionTable = ({
logs,
loading,
- dateFrom,
- dateTo,
- onDateFromChange,
- onDateToChange,
- onThisMonth,
- onLastMonth,
- onMonthOffset,
- onSearch,
totalCount,
accountCodes,
onAccountCodeChange,
onFieldChange,
- onSave,
- onExport,
- saving,
- hasChanges,
splits,
onOpenSplitModal,
onDeleteSplits,
- onManualNew,
onManualEdit,
onManualDelete,
onHide,
showHidden,
hiddenLogs,
- onToggleHidden,
onRestore,
loadingHidden,
}) => {
@@ -1050,143 +991,7 @@ className="flex-1 py-2 bg-purple-600 text-white rounded-lg hover:bg-purple-700 t
}
return (
-
-
-
-
카드 사용내역
- {/* 기간 조회 필터 */}
-
-
-
- onDateFromChange(e.target.value)}
- className="rounded-lg border border-stone-200 px-3 py-1.5 text-sm focus:ring-2 focus:ring-purple-500 outline-none"
- />
- ~
- onDateToChange(e.target.value)}
- className="rounded-lg border border-stone-200 px-3 py-1.5 text-sm focus:ring-2 focus:ring-purple-500 outline-none"
- />
-
-
-
-
-
-
-
-
-
-
-
- 조회: {logs.length}건
- {totalCount !== logs.length && (
- / 전체 {totalCount}건
- )}
-
-
-
- {/* 저장/수동입력/엑셀 버튼 */}
-
-
-
-
-
-
-
+
@@ -2195,12 +2000,19 @@ className="px-3 py-1 bg-green-500 text-white text-xs rounded-lg hover:bg-green-6
const formatCurrency = (val) => new Intl.NumberFormat('ko-KR').format(val || 0) + '원';
return (
-
- {/* Page Header */}
+
+ {/* Page Header - 계좌입출금 스타일 */}
-
-
카드 사용내역
-
바로빌 API를 통한 카드 사용내역 조회 및 계정과목 관리
+
+
+
+
카드 사용내역
+
바로빌 API를 통한 카드 사용내역 조회 및 계정과목 관리
+
@if($isTestMode)
@@ -2221,62 +2033,175 @@ className="px-3 py-1 bg-green-500 text-white text-xs rounded-lg hover:bg-green-6
- {/* Dashboard */}
-
-
}
- color="purple"
- />
-
-
-
{formatCurrency(summary.deductibleAmount)}
-
-
- 공급가액
- {formatCurrency(summary.deductibleSupply)}
-
-
- 세액
- {formatCurrency(summary.deductibleTax)}
-
-
-
{(summary.deductibleCount || 0).toLocaleString()}건
+ {/* 통계 + 카드 선택 (한 줄) - 계좌입출금 스타일 */}
+
+
+
+
+
+
+
+
+ {/* 구분선 */}
+ {cards.length > 0 &&
}
+
+ {/* 카드 선택 드롭다운 */}
+ {cards.length > 0 && (
+ <>
+
카드:
+
+ >
+ )}
-
}
- color="red"
- />
- }
- color="stone"
- />
- {/* Card Filter */}
- {cards.length > 0 && (
-
-
카드 선택
-
+ {/* 필터 영역 - 날짜/조회/액션 버튼 통합 */}
+
+
+ {/* 기간 조회 필터 */}
+
+
+
+ setDateFrom(e.target.value)}
+ className="rounded-lg border border-gray-200 px-3 py-1.5 text-sm focus:ring-2 focus:ring-purple-500 outline-none"
+ />
+ ~
+ setDateTo(e.target.value)}
+ className="rounded-lg border border-gray-200 px-3 py-1.5 text-sm focus:ring-2 focus:ring-purple-500 outline-none"
+ />
+
+
+
+
+
+
+
+
+
+
+
+ 조회: {logs.length}건
+ {(summary.count || logs.length) !== logs.length && (
+ / 전체 {summary.count}건
+ )}
+
+
+ {/* 액션 버튼들 */}
+
+
+
+
+
+
- )}
+
{/* Error Display */}
{error && (
@@ -2306,32 +2231,18 @@ className="px-3 py-1 bg-green-500 text-white text-xs rounded-lg hover:bg-green-6
loadTransactions()}
totalCount={summary.count || logs.length}
accountCodes={accountCodes}
onAccountCodeChange={handleAccountCodeChange}
onFieldChange={handleFieldChange}
- onSave={handleSave}
- onExport={handleExport}
- saving={saving}
- hasChanges={hasChanges}
splits={splits}
onOpenSplitModal={handleOpenSplitModal}
onDeleteSplits={handleDeleteSplits}
- onManualNew={handleManualNew}
onManualEdit={handleManualEdit}
onManualDelete={handleManualDelete}
onHide={handleHide}
showHidden={showHidden}
hiddenLogs={hiddenLogs}
- onToggleHidden={handleToggleHidden}
onRestore={handleRestore}
loadingHidden={loadingHidden}
/>