Explorar el Código

支付宝订单

shish hace 6 años
padre
commit
d0ec97780e
Se han modificado 1 ficheros con 6 adiciones y 8 borrados
  1. 6 8
      app/mall/controllers/NoticeController.php

+ 6 - 8
app/mall/controllers/NoticeController.php

@@ -59,9 +59,9 @@ class NoticeController extends PublicController
 	{
 		header("Content-type: text/html; charset=utf-8");
 		$alipayWap = Yii::getAlias("@vendor/alipayWap");
-		
-		$orderId = $_POST['out_trade_no'];//商户订单号
-		$pay = xhOrderService::getById($orderId);
+		$orderSn = $_POST['out_trade_no'];//商户订单号
+		$pay = xhOrderService::getByOrderSn($orderSn);
+		$orderId = $pay['id'];//商户订单号
 		$merchantId = isset($pay['merchantId']) ? $pay['merchantId'] : 0;
 		$extend = MerchantExtendService::getByMerchantId($merchantId);
 		$config = [
@@ -82,18 +82,16 @@ class NoticeController extends PublicController
 			//支付宝公钥,查看地址:https://openhome.alipay.com/platform/keyManage.htm 对应APPID下的支付宝公钥。
 			'alipay_public_key' => $extend['alipayPublicKey'],
 		];
-		
+
 		require_once($alipayWap . '/wappay/service/AlipayTradeService.php');
 		require_once($alipayWap . '/wappay/buildermodel/AlipayTradeQueryContentBuilder.php');//查询接口
-		
-		
+
 		$arr = $_POST;
 		$alipaySevice = new \AlipayTradeService($config);
 		$alipaySevice->writeLog(var_export($_POST, true));
 		$result = $alipaySevice->check($arr);
 		Yii::info('check:' . $result);
 		if ($result) {//验证成功
-			$orderId = $_POST['out_trade_no'];//商户订单号
 			$tradeNo = $_POST['trade_no'];//支付宝交易号
 			$tradeStatus = $_POST['trade_status'];//交易状态
 			$totalFee = $_POST['total_amount'];
@@ -121,7 +119,7 @@ class NoticeController extends PublicController
 			}
 			if ($tradeStatus == 'TRADE_FINISHED' || $tradeStatus == 'TRADE_SUCCESS') {
 				$callbackParams = [];
-				$return = xhPayToolService::alipay($callbackParams, $orderId, $totalFee, $capitalType, $couponId, $alipayParams);//支付回调流程
+				$return = xhPayToolService::alipay($callbackParams, $orderSn, $totalFee, $capitalType, $couponId, $alipayParams);//支付回调流程
 				if ($return['code'] == 'A0002') {
 					Yii::warning('callback exec and failed,capitalType:' . $capitalType . ' orderId:' . $orderId);
 					util::end();