* @version : HUOSDK 8.0 */ namespace api\apple\controller\v8; use api\common\controller\AppleApiBaseController; use huo\controller\pay\ApplePay; use huolib\status\OrderStatus; use huolib\tool\StrUtils; use think\Log; use think\Request; class AppleController extends AppleApiBaseController { public function __construct(Request $request = null) { parent::__construct($request); } public function _initialize() { parent::_initialize(); } /** * 苹果验单 * http://doc.1tsdk.com/138?page_id=2910 * 【域名】/v8/apple/check */ public function check() { $_order_data = get_val($this->rq_data, 'order', []); $_game_rq = $this->setGameData(); $_device_rq = $this->setDeviceData(); if (empty($_order_data)) { $_code = OrderStatus::INVALID_PARAMS; $this->error(OrderStatus::getMsg($_code), [], $_code); } if (empty($_order_data['product_id']) || empty($_order_data['trans_id']) || empty($_order_data['receipt_data']) || !isset($_order_data['order_id']) || !isset($_order_data['sandbox'])) { $_code = OrderStatus::INVALID_PARAMS; $this->error(OrderStatus::getMsg($_code), [], $_code); } $_receipt_data = (new StrUtils())->trimAll($_order_data['receipt_data']); $_receipt_data = urldecode($_receipt_data); $_rs = (new ApplePay())->orderQuery( $_order_data['order_id'], $_order_data['trans_id'], $_receipt_data, $_order_data['sandbox'], $_device_rq->getMac(), $_game_rq->getAppleId() ); $this->returnData($_rs); } }