feat:입출금내역 취급점 열 추가 및 상대계좌예금주명 직접입력
- 취급점(수단) 열 추가 (바로빌 transOffice 필드) - 상대계좌예금주명 직접 입력 가능하도록 input 필드로 변경 - 저장된 상대계좌예금주명 값 로드 시 병합 - 엑셀 내보내기에 취급점 열 추가 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -442,7 +442,8 @@ private function parseTransactionLogs($resultData, string $defaultBankName = '',
|
||||
'balance' => $balance,
|
||||
'balanceFormatted' => number_format($balance),
|
||||
'summary' => $fullSummary,
|
||||
'cast' => $log->AccountName ?? $log->Cast ?? '',
|
||||
// 저장된 상대계좌예금주명 우선 사용 (직접 입력 가능)
|
||||
'cast' => $savedItem?->cast ?? '',
|
||||
'memo' => $log->Memo ?? '',
|
||||
'transOffice' => $log->TransOffice ?? '',
|
||||
// 저장된 계정과목 정보 병합
|
||||
@@ -709,6 +710,7 @@ public function exportExcel(Request $request): StreamedResponse|JsonResponse
|
||||
'입금',
|
||||
'출금',
|
||||
'잔액',
|
||||
'취급점',
|
||||
'상대계좌예금주명',
|
||||
'계정과목코드',
|
||||
'계정과목명'
|
||||
@@ -736,6 +738,7 @@ public function exportExcel(Request $request): StreamedResponse|JsonResponse
|
||||
$trans->deposit,
|
||||
$trans->withdraw,
|
||||
$trans->balance,
|
||||
$trans->trans_office,
|
||||
$trans->cast,
|
||||
$trans->account_code,
|
||||
$trans->account_name
|
||||
|
||||
@@ -180,6 +180,7 @@ className="w-full px-2 py-1 text-xs border border-stone-200 rounded focus:ring-2
|
||||
totalCount,
|
||||
accountCodes,
|
||||
onAccountCodeChange,
|
||||
onCastChange,
|
||||
onSave,
|
||||
onExport,
|
||||
saving,
|
||||
@@ -285,14 +286,15 @@ className="flex items-center gap-2 px-4 py-2 bg-blue-100 text-blue-700 rounded-l
|
||||
<th className="px-4 py-4 text-right bg-stone-50 text-blue-600">입금</th>
|
||||
<th className="px-4 py-4 text-right bg-stone-50 text-red-600">출금</th>
|
||||
<th className="px-4 py-4 text-right bg-stone-50">잔액</th>
|
||||
<th className="px-4 py-4 bg-stone-50">상대계좌예금주명</th>
|
||||
<th className="px-4 py-4 bg-stone-50">취급점</th>
|
||||
<th className="px-4 py-4 bg-stone-50 min-w-[120px]">상대계좌예금주명</th>
|
||||
<th className="px-4 py-4 bg-stone-50 min-w-[150px]">계정과목</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody className="divide-y divide-stone-100">
|
||||
{logs.length === 0 ? (
|
||||
<tr>
|
||||
<td colSpan="8" className="px-6 py-8 text-center text-stone-400">
|
||||
<td colSpan="9" className="px-6 py-8 text-center text-stone-400">
|
||||
해당 기간에 조회된 입출금 내역이 없습니다.
|
||||
</td>
|
||||
</tr>
|
||||
@@ -321,8 +323,17 @@ className="flex items-center gap-2 px-4 py-2 bg-blue-100 text-blue-700 rounded-l
|
||||
<td className="px-4 py-3 text-right text-stone-700">
|
||||
{log.balanceFormatted}원
|
||||
</td>
|
||||
<td className="px-4 py-3 text-stone-500">
|
||||
{log.cast || '-'}
|
||||
<td className="px-4 py-3 text-stone-500 text-sm">
|
||||
{log.transOffice || '-'}
|
||||
</td>
|
||||
<td className="px-4 py-3">
|
||||
<input
|
||||
type="text"
|
||||
className="w-full px-2 py-1 text-sm border border-stone-200 rounded focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none"
|
||||
value={log.cast || ''}
|
||||
onChange={(e) => onCastChange(index, e.target.value)}
|
||||
placeholder="예금주명 입력"
|
||||
/>
|
||||
</td>
|
||||
<td className="px-4 py-3">
|
||||
<AccountCodeSelect
|
||||
@@ -446,6 +457,19 @@ className="flex items-center gap-2 px-4 py-2 bg-blue-100 text-blue-700 rounded-l
|
||||
setHasChanges(true);
|
||||
}, []);
|
||||
|
||||
// 상대계좌예금주명 변경 핸들러
|
||||
const handleCastChange = useCallback((index, value) => {
|
||||
setLogs(prevLogs => {
|
||||
const newLogs = [...prevLogs];
|
||||
newLogs[index] = {
|
||||
...newLogs[index],
|
||||
cast: value
|
||||
};
|
||||
return newLogs;
|
||||
});
|
||||
setHasChanges(true);
|
||||
}, []);
|
||||
|
||||
// 저장 핸들러
|
||||
const handleSave = async () => {
|
||||
if (logs.length === 0) return;
|
||||
@@ -606,6 +630,7 @@ className="flex items-center gap-2 px-4 py-2 bg-blue-100 text-blue-700 rounded-l
|
||||
totalCount={summary.count || logs.length}
|
||||
accountCodes={accountCodes}
|
||||
onAccountCodeChange={handleAccountCodeChange}
|
||||
onCastChange={handleCastChange}
|
||||
onSave={handleSave}
|
||||
onExport={handleExport}
|
||||
saving={saving}
|
||||
|
||||
Reference in New Issue
Block a user