From 90a018a06b6e5624e43c0e76d376043da9fa214c Mon Sep 17 00:00:00 2001 From: Afiq Hamzah Date: Sun, 26 Jan 2025 16:08:51 +0800 Subject: [PATCH] Fix bug on split payment in BillplzTransactionReviewController --- .../BillplzTransactionReviewController.php | 29 ++++++++++++++----- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/app/Http/Controllers/BillplzTransactionReviewController.php b/app/Http/Controllers/BillplzTransactionReviewController.php index 2817731..a0e866f 100644 --- a/app/Http/Controllers/BillplzTransactionReviewController.php +++ b/app/Http/Controllers/BillplzTransactionReviewController.php @@ -2,26 +2,41 @@ namespace App\Http\Controllers; +use App\Models\CompanyStatus; use App\Services\BillplzService; use Carbon\Carbon; use Illuminate\Http\Request; class BillplzTransactionReviewController extends Controller { - public function index(Request $request, BillplzService $billplzService) + public function index(Request $request) { $date = $request->date ?? Carbon::now()->toDateString(); - $billplzTransactionReview = $billplzService->getBillplzTransactionReview($date); + $companyMapping = [ + CompanyStatus::COM_PKB, + // CompanyStatus::COM_KOOPPKB, + ]; - return response()->json($billplzTransactionReview, 200); + $billplzTransactionReview = array_map(function($company_code) use($date){ + $billplzService = new BillplzService($company_code); + return $billplzService->getBillplzTransactionReview($date); + }, $companyMapping); + + return response()->json(array_merge(...$billplzTransactionReview), 200); } - public function show(Request $request, BillplzService $billplzService) + public function show(Request $request) { - $date = $request->date ?? Carbon::now()->toDateString(); - - $billplzTransactionReview = $billplzService->getBillplzTransactionReviewByBillId($request->bill_id); + $companyMapping = [ + CompanyStatus::COM_PKB, + // CompanyStatus::COM_KOOPPKB, + ]; + + $billplzTransactionReview = array_map(function($company_code) use($request){ + $billplzService = new BillplzService($company_code); + return $billplzService->getBillplzTransactionReviewByBillId($request->bill_id); + }, $companyMapping); return response()->json($billplzTransactionReview, 200); }