Added transaction details for the logged user

This commit is contained in:
2025-12-30 16:13:46 +00:00
parent 5f845b2ba7
commit f38f08923f
3 changed files with 35 additions and 10 deletions
@@ -197,4 +197,32 @@ class UserController extends Controller
return response()->json(['message' => 'User unblocked successfully']);
}
public function getTransactions(Request $request, User $user)
{
if ($request->user()->id !== $user->id && $request->user()->type !== 'A') {
return response()->json(['message' => 'Forbidden'], 403);
}
$query = $user->transactions()->with('type');
if ($request->has('type')) {
$query->whereHas('type', function ($q) use ($request) {
$q->where('name', $request->type);
});
}
if ($request->has('date_from')) {
$query->whereDate('transaction_datetime', '>=', $request->date_from);
}
if ($request->has('date_to')) {
$query->whereDate('transaction_datetime', '<=', $request->date_to);
}
$transactions = $query->orderBy('transaction_datetime', 'desc')
->paginate(10);
return response()->json($transactions);
}
}