fix: payment method in cinetpay controller and aggregator while make payment
This commit is contained in:
parent
a808210b3a
commit
5bdc61414f
|
@ -78,7 +78,7 @@ class CinetpayController extends Controller
|
|||
// 'aggregator_id' => 'required|integer',
|
||||
'amount' => 'required|numeric|min:5',
|
||||
'currency' => 'required|string|size:3',
|
||||
// 'payment_method' => 'nullable|string|in:ALL,MOBILE_MONEY,CREDIT_CARD,WALLET',
|
||||
'payment_method' => 'nullable|string',
|
||||
'customer_id' => 'required|integer',
|
||||
'customer_email' => 'required|email',
|
||||
'customer_name' => 'nullable|string',
|
||||
|
@ -92,10 +92,14 @@ class CinetpayController extends Controller
|
|||
'reason' => 'required|string'
|
||||
]);
|
||||
|
||||
$paymentMethods = ['ALL','MOBILE_MONEY','CREDIT_CARD','WALLET'];
|
||||
$aggregator = PaymentAggregator::where('name','like','%cinetpay%')->firstOrFail();
|
||||
|
||||
$transaction_id = $this->getTransactionID();
|
||||
$payment_method = 'ALL';
|
||||
$payment_method = $request->input('payment_method');
|
||||
if(!in_array($payment_method, $paymentMethods)){
|
||||
$payment_method = 'ALL';
|
||||
}
|
||||
$amount = $request->input('amount');
|
||||
$currency = $request->input('currency');
|
||||
|
||||
|
|
|
@ -38,18 +38,23 @@ class PaymentController extends Controller
|
|||
{
|
||||
$this->validate($request, [
|
||||
'payment_method' => 'nullable|string',
|
||||
// 'aggregator_id' => 'required_without:payment_method|integer|exists:payment_aggregators,id',
|
||||
'aggregator_id' => 'nullable|integer|exists:payment_aggregators,id',
|
||||
]);
|
||||
|
||||
$payment_method = $request->input('payment_method', PaymentMethod::CARD);
|
||||
$aggregator_id = $request->input('aggregator_id');
|
||||
|
||||
if($payment_method == PaymentMethod::CARD){
|
||||
$aggregator = PaymentAggregator::where('name','like','%stripe%')->firstOrFail();
|
||||
if($aggregator_id){
|
||||
$aggregator = PaymentAggregator::findOrFail($aggregator_id);
|
||||
}else{
|
||||
$aggregator = PaymentAggregator::where('status',1)->firstOrFail();
|
||||
|
||||
if($payment_method == PaymentMethod::CARD){
|
||||
$aggregator = PaymentAggregator::where('name','like','%stripe%')->firstOrFail();
|
||||
}else{
|
||||
$aggregator = PaymentAggregator::where('status',1)->firstOrFail();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$data = $request->all();
|
||||
$request = new Request();
|
||||
$request->merge(array_merge($data,[
|
||||
|
|
Loading…
Reference in New Issue