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') - - -
@endsection @@ -80,57 +70,22 @@ } }; - // StatCard Component - const StatCard = ({ title, value, subtext, icon, color = 'purple' }) => { + // CompactStat Component (계좌입출금 스타일 통계 배지) + const CompactStat = ({ label, value, color = 'stone' }) => { const colorClasses = { - purple: 'bg-purple-50 text-purple-600', - green: 'bg-green-50 text-green-600', - red: 'bg-red-50 text-red-600', - stone: 'bg-stone-50 text-stone-600' + purple: 'text-purple-600', + green: 'text-green-600', + red: 'text-red-600', + stone: 'text-stone-700' }; return ( -
-
-

{title}

-
- {icon} -
-
-
{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} />