| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- <?php
- namespace backend\controllers;
- use backend\models\PayApi;
- use backend\models\RateApi;
- use Yii;
- use yii\helpers\VarDumper;
- use yii\httpclient\Client;
- use yii\web\Controller;
- class PayController extends Controller
- {
- public $enableCsrfValidation = false;
- /**
- * 支付异步回调
- * @return string
- */
- public function actionNotify()
- {
- $payType = intval(Yii::$app->getRequest()->get('payType'));
- if ($payType <= 0) {
- return 'invalid request';
- }
- if (Yii::$app->getRequest()->getIsPost()) {
- $data = Yii::$app->getRequest()->post();
- if (empty($data)) {
- $data = @json_decode(Yii::$app->getRequest()->getRawBody(), true);
- }
- } else {
- $data = Yii::$app->getRequest()->get();
- }
- Yii::warning('支付异步通知参数,' . VarDumper::dumpAsString($data), __METHOD__);
- $api = new PayApi();
- $result = $api->callNotify($data, $payType);
- return $result['data'];
- }
- /**
- * 支付同步回调
- * @return string|\yii\web\Response
- */
- public function actionReturn()
- {
- $payType = intval(Yii::$app->getRequest()->get('payType'));
- if ($payType <= 0) {
- return 'invalid request';
- }
- if (Yii::$app->getRequest()->getIsPost()) {
- $data = Yii::$app->getRequest()->post();
- if (empty($data)) {
- $data = @json_decode(Yii::$app->getRequest()->getRawBody(), true);
- }
- } else {
- $data = Yii::$app->getRequest()->get();
- }
- Yii::warning('支付同步通知参数,' . VarDumper::dumpAsString($data), __METHOD__);
- $api = new PayApi();
- $result = $api->callReturn($data, $payType);
- return $this->redirect(['/user/pay/succeed']);
- // if ($result['code'] == 1) {
- // return $this->redirect(['/user/pay/succeed']);
- // } else {
- // return $this->redirect(['/user/pay/failed']);
- // }
- }
- /**
- * 汇率获取
- */
- public function actionRate()
- {
- $rateApi = new RateApi();
- $res = $rateApi->getRate();
- echo json_encode($res);
- }
-
-
- //銀聯跳轉的支付 (更新數據庫操作)
-
- public function actionUpdata(){
- if (Yii::$app->getRequest()->getIsPost()) { //是否为post请求
- $data = Yii::$app->getRequest()->post(); //获得同步的post参数
- if (empty($data)) {
- $data = @json_decode(Yii::$app->getRequest()->getRawBody(), true);
- }
- } else {
- $data = Yii::$app->getRequest()->get();
- }
- $api = new PayApi();
- $result = $api->callUpdata($data);
- return $result['data'];
- }
- //银联支付时获取金额
- public function actionGetmoney(){
- if (Yii::$app->getRequest()->getIsPost()) { //是否为post请求
- $data = Yii::$app->getRequest()->post(); //获得同步的post参数
- if (empty($data)) {
- $data = @json_decode(Yii::$app->getRequest()->getRawBody(), true);
- }
- } else {
- $data = Yii::$app->getRequest()->get();
- }
- $api = new PayApi();
- $result = $api->callGetmoney($data);
- return $result['data'];
- }
-
-
-
-
-
-
-
-
-
-
-
- }
|