Files
hyperf_service/app/Service/ServiceTrait/Api/CheckOrderCallBackTrait.php
2025-03-18 11:14:07 +08:00

49 lines
1.5 KiB
PHP

<?php
namespace App\Service\ServiceTrait\Api;
use App\Exception\ErrException;
trait CheckOrderCallBackTrait
{
/**
* @return void
*/
public function checkWxCallBackOrder(): void
{
if (
!isset($this->callbackData['trade_state']) ||
$this->callbackData['trade_state'] != 'SUCCESS' ||
!isset($this->callbackData['amount']['total']) ||
$this->callbackData['amount']['total'] <= 0 ||
!isset($this->callbackData['out_trade_no']) ||
empty($this->callbackData['out_trade_no']) ||
// !isset($this->callbackData['mch_id']) ||
// empty($this->callbackData['mch_id']) ||
!in_array($this->callbackData['trade_type'],['APP','JSAPI'])
){
throw new ErrException('此订单回调异常');
}
$this->orderNo = $this->callbackData['out_trade_no'];
}
/**
* @return void
*/
public function checkWxRefundCallBackOrder(): void
{
if (
!isset($this->callbackData['return_code']) ||
$this->callbackData['return_code']!= 'SUCCESS' ||
!isset($this->callbackData['out_trade_no']) ||
empty($this->callbackData['out_trade_no']) ||
!isset($this->callbackData['mch_id']) ||
empty($this->callbackData['mch_id'])
) {
throw new ErrException('此订单回调异常');
}
$this->orderNo = $this->callbackData['out_trade_no'];
}
}