Improve /pay and /methods routes
This commit is contained in:
parent
de2366b249
commit
97de7fefc8
|
@ -17,54 +17,13 @@ class PaymentController extends Controller
|
||||||
return $this->errorResponse(trans('errors.model_not_found', ['model' => 'methods']));
|
return $this->errorResponse(trans('errors.model_not_found', ['model' => 'methods']));
|
||||||
}
|
}
|
||||||
|
|
||||||
Log::info($aggregator->name);
|
|
||||||
|
|
||||||
switch (strtolower($aggregator->name)) {
|
switch (strtolower($aggregator->name)) {
|
||||||
case 'yoomee':
|
case 'yoomee':
|
||||||
|
return app(YoomeeController::class)->getMethods();
|
||||||
case 'yoomeev2':
|
case 'yoomeev2':
|
||||||
// $client = new Client([
|
return app(YoomeeV2Controller::class)->getMethods();
|
||||||
// 'base_uri' => config('variables.yoomee_api_url'),
|
|
||||||
// 'timeout' => 60,
|
|
||||||
// ]);
|
|
||||||
// $response = $client->get('operators');
|
|
||||||
// return $this->successResponse(json_decode($response->getBody()->getContents()));
|
|
||||||
//
|
|
||||||
// $client = new Client([
|
|
||||||
// 'base_uri' => config('variables.yoomee_api_v2_url'),
|
|
||||||
// 'timeout' => 60,
|
|
||||||
// ]);
|
|
||||||
// $response = $client->get('providers/v1');
|
|
||||||
// return $this->successResponse(json_decode($response->getBody()->getContents()));
|
|
||||||
$providers = ["Yoomee","MTN","Orange","EU"];
|
|
||||||
$methods = [];
|
|
||||||
foreach ($providers as $provider){
|
|
||||||
$key = 'providers.'.$provider;
|
|
||||||
$method['title'] = Lang::has($key) ? __($key) : $provider;
|
|
||||||
$method['value'] = $provider;
|
|
||||||
$methods[] = $method;
|
|
||||||
}
|
|
||||||
return $this->successResponse([
|
|
||||||
'hasWebview' => false,
|
|
||||||
'methods' => $methods
|
|
||||||
]
|
|
||||||
);
|
|
||||||
case 'cinetpay':
|
case 'cinetpay':
|
||||||
$providers = [
|
return app(CinetpayController::class)->getMethods();
|
||||||
// 'ALL',
|
|
||||||
'MOBILE_MONEY',
|
|
||||||
'CREDIT_CARD',
|
|
||||||
];
|
|
||||||
$methods = [];
|
|
||||||
foreach ($providers as $provider) {
|
|
||||||
$key = 'providers.' . $provider;
|
|
||||||
$method['title'] = Lang::has($key) ? __($key) : $provider;
|
|
||||||
$method['value'] = $provider;
|
|
||||||
$methods[] = $method;
|
|
||||||
}
|
|
||||||
return $this->successResponse([
|
|
||||||
'hasWebview' => true,
|
|
||||||
'methods' => $methods,
|
|
||||||
]);
|
|
||||||
default:
|
default:
|
||||||
return $this->errorResponse(__('errors.unexpected_error'));
|
return $this->errorResponse(__('errors.unexpected_error'));
|
||||||
}
|
}
|
||||||
|
@ -80,11 +39,11 @@ class PaymentController extends Controller
|
||||||
|
|
||||||
switch (strtolower($aggregator->name)) {
|
switch (strtolower($aggregator->name)) {
|
||||||
case 'yoomee':
|
case 'yoomee':
|
||||||
return redirect()->route('yoomee.pay', $request->all());
|
return app(YoomeeController::class)->pay($request);
|
||||||
case 'yoomeev2':
|
case 'yoomeev2':
|
||||||
return redirect()->route('yoomee.v2.pay', $request->all());
|
return app(YoomeeV2Controller::class)->pay($request);
|
||||||
case 'cinetpay':
|
case 'cinetpay':
|
||||||
return redirect()->route('cinetpay.pay', $request->all());
|
return app(CinetpayController::class)->pay($request);
|
||||||
default:
|
default:
|
||||||
return $this->errorResponse(__('errors.unexpected_error'));
|
return $this->errorResponse(__('errors.unexpected_error'));
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,9 +49,9 @@ class YoomeeController extends Controller
|
||||||
*/
|
*/
|
||||||
public function getMethods()
|
public function getMethods()
|
||||||
{
|
{
|
||||||
// $response = $this->client->get('operators');
|
$response = $this->client->get('operators');
|
||||||
// $providers = json_decode($response->getBody()->getContents());
|
$providers = json_decode($response->getBody()->getContents());
|
||||||
$providers = ["Yoomee","MTN","Orange","EU"];
|
// $providers = ["Yoomee","MTN","Orange","EU"];
|
||||||
$methods = [];
|
$methods = [];
|
||||||
foreach ($providers as $provider){
|
foreach ($providers as $provider){
|
||||||
$key = 'providers.'.$provider;
|
$key = 'providers.'.$provider;
|
||||||
|
|
|
@ -55,9 +55,9 @@ class YoomeeV2Controller extends Controller
|
||||||
*/
|
*/
|
||||||
public function getMethods()
|
public function getMethods()
|
||||||
{
|
{
|
||||||
// $response = $this->client->get('providers/v1');
|
$response = $this->client->get('providers/v1');
|
||||||
// $providers = json_decode($response->getBody()->getContents());
|
$providers = json_decode($response->getBody()->getContents());
|
||||||
$providers = ["Yoomee","MTN","Orange","EU"];
|
// $providers = ["Yoomee","MTN","Orange","EU"];
|
||||||
$methods = [];
|
$methods = [];
|
||||||
foreach ($providers as $provider){
|
foreach ($providers as $provider){
|
||||||
$key = 'providers.'.$provider;
|
$key = 'providers.'.$provider;
|
||||||
|
@ -117,6 +117,10 @@ class YoomeeV2Controller extends Controller
|
||||||
if ($createResponse->getStatusCode() == 400) {
|
if ($createResponse->getStatusCode() == 400) {
|
||||||
$createResponse = json_decode($createResponse->getBody()->getContents());
|
$createResponse = json_decode($createResponse->getBody()->getContents());
|
||||||
|
|
||||||
|
if(!empty($createResponse->error)){
|
||||||
|
return $this->errorResponse($createResponse->error_description);
|
||||||
|
}
|
||||||
|
|
||||||
$transaction = PaymentTransaction::create([
|
$transaction = PaymentTransaction::create([
|
||||||
'aggregator_id' => $request->input('aggregator_id'),
|
'aggregator_id' => $request->input('aggregator_id'),
|
||||||
"currency" => $request->input('currency'),
|
"currency" => $request->input('currency'),
|
||||||
|
|
|
@ -4,6 +4,10 @@ return [
|
||||||
'Orange' => 'Orange Money',
|
'Orange' => 'Orange Money',
|
||||||
'MTN' => 'MTN MoMo',
|
'MTN' => 'MTN MoMo',
|
||||||
'Yoomee' => 'Yoomee Money',
|
'Yoomee' => 'Yoomee Money',
|
||||||
|
'ADWAPAY-CMR-EXPRESS-UNION' => 'Express Union',
|
||||||
|
'ADWAPAY-CMR-ORANGE-MONEY' => 'Orange Money',
|
||||||
|
'ADWAPAY-CMR-MTN-MONEY' => 'MTN MoMo',
|
||||||
|
'YOOMEE-MONEY' => 'Yoomee Money',
|
||||||
'MOBILE_MONEY' => 'Mobile Money',
|
'MOBILE_MONEY' => 'Mobile Money',
|
||||||
'CREDIT_CARD' => 'Carte de crédit'
|
'CREDIT_CARD' => 'Carte de crédit'
|
||||||
];
|
];
|
||||||
|
|
|
@ -4,6 +4,10 @@ return [
|
||||||
'Orange' => 'Orange Money',
|
'Orange' => 'Orange Money',
|
||||||
'MTN' => 'MTN MoMo',
|
'MTN' => 'MTN MoMo',
|
||||||
'Yoomee' => 'Yoomee Money',
|
'Yoomee' => 'Yoomee Money',
|
||||||
|
'ADWAPAY-CMR-EXPRESS-UNION' => 'Express Union',
|
||||||
|
'ADWAPAY-CMR-ORANGE-MONEY' => 'Orange Money',
|
||||||
|
'ADWAPAY-CMR-MTN-MONEY' => 'MTN MoMo',
|
||||||
|
'YOOMEE-MONEY' => 'Yoomee Money',
|
||||||
'MOBILE_MONEY' => 'Mobile Money',
|
'MOBILE_MONEY' => 'Mobile Money',
|
||||||
'CREDIT_CARD' => 'Carte de crédit'
|
'CREDIT_CARD' => 'Carte de crédit'
|
||||||
];
|
];
|
||||||
|
|
Loading…
Reference in New Issue