Browse Source

支付

master
weigang 5 years ago
parent
commit
6a485e3a16
  1. 5
      app/Constants/ErrorCode.php
  2. 9
      app/Controller/PaymentController.php
  3. 4
      app/Request/WxminiPayRequest.php

5
app/Constants/ErrorCode.php

@ -43,4 +43,9 @@ class ErrorCode extends AbstractConstants
* @Message("Order failure!")
*/
const ORDER_FAILURE = 300;
/**
* @Message("Pay failure!")
*/
const PAY_FAILURE = 400;
}

9
app/Controller/PaymentController.php

@ -2,6 +2,7 @@
namespace App\Controller;
use App\Constants\ErrorCode;
use App\Model\OrderMain;
use App\Model\Users;
use App\Request\WxminiPayRequest;
@ -22,12 +23,16 @@ class PaymentController extends BaseController
// 待支付的,类型一致的,未超时(15min,900sec)的订单
$orderMain = OrderMain::query()
->where(['state' => OrderMain::ORDER_STATE_UNPAY, 'type' => $data['type'], 'id' => $data['order_id']])
->where(['state' => OrderMain::ORDER_STATE_UNPAY, 'id' => $data['order_id']])
->where('time', '<=', date('Y-m-d H:i:s', (time()-900)))
->first();
if (empty($orderMain)) {
return $this->result(200, ['order_id' => $data['order_id']],'订单不存在或已失效');
return $this->result(ErrorCode::PAY_FAILURE, ['order_id' => $data['order_id']],'订单不存在或已失效');
}
if (floatval($orderMain->money) != floatval($data['money'])) {
return $this->result(ErrorCode::PAY_FAILURE, ['order_id' => $data['order_id']],'订单金额有误');
}
$result = $app->order->unify([

4
app/Request/WxminiPayRequest.php

@ -15,8 +15,8 @@ class WxminiPayRequest extends BaseFormRequest
{
return [
'order_id' => 'required|nonempty|integer',
'type' => 'required|nonempty|integer',
'openid' => 'required|nonempty',
'money' => 'required|nonempty',
];
}
@ -31,7 +31,7 @@ class WxminiPayRequest extends BaseFormRequest
{
return [
'order_id' => '订单',
'type' => '订单类型',
'money' => '订单金额',
'openid' => '用户标识',
];
}
Loading…
Cancel
Save