feat(API): 카드 거래 등록/수정/삭제 API 추가
- CardTransactionService: store, update, destroy 메서드 추가
- CardTransactionController: store, update, destroy 메서드 추가
- routes/api.php: POST, PUT/{id}, DELETE/{id} 라우트 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -89,4 +89,51 @@ public function show(int $id): JsonResponse
|
||||
return $transaction;
|
||||
}, __('message.fetched'));
|
||||
}
|
||||
|
||||
/**
|
||||
* 카드 거래 등록
|
||||
*/
|
||||
public function store(Request $request): JsonResponse
|
||||
{
|
||||
return ApiResponse::handle(function () use ($request) {
|
||||
$validated = $request->validate([
|
||||
'card_id' => 'nullable|integer|exists:cards,id',
|
||||
'used_at' => 'required|date',
|
||||
'merchant_name' => 'required|string|max:100',
|
||||
'amount' => 'required|numeric|min:0',
|
||||
'description' => 'nullable|string|max:500',
|
||||
'account_code' => 'nullable|string|max:20',
|
||||
]);
|
||||
|
||||
return $this->service->store($validated);
|
||||
}, __('message.created'));
|
||||
}
|
||||
|
||||
/**
|
||||
* 카드 거래 수정
|
||||
*/
|
||||
public function update(Request $request, int $id): JsonResponse
|
||||
{
|
||||
return ApiResponse::handle(function () use ($request, $id) {
|
||||
$validated = $request->validate([
|
||||
'used_at' => 'nullable|date',
|
||||
'merchant_name' => 'nullable|string|max:100',
|
||||
'amount' => 'nullable|numeric|min:0',
|
||||
'description' => 'nullable|string|max:500',
|
||||
'account_code' => 'nullable|string|max:20',
|
||||
]);
|
||||
|
||||
return $this->service->update($id, $validated);
|
||||
}, __('message.updated'));
|
||||
}
|
||||
|
||||
/**
|
||||
* 카드 거래 삭제
|
||||
*/
|
||||
public function destroy(int $id): JsonResponse
|
||||
{
|
||||
return ApiResponse::handle(function () use ($id) {
|
||||
return $this->service->destroy($id);
|
||||
}, __('message.deleted'));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user