req_params($card_no,$amount,$order_sn); $sign = $this->sign($params); $params['verifystring'] = $sign; $resp = http_request(config::PAY_PHONE_URL,$params,'GET',false,[],$net_errno); if (empty($resp)) { return [false,'系统错误',true]; } else { Log::record($resp,Log::DEBUG); $resp = refill\util::xmlToArray($resp); if (empty($resp)) { return [false, '系统错误', true]; } elseif ($resp['resultno'] === '0000') { return [true, $resp['orderno'], false]; } else { return [false, $resp['resultmessage'], false]; } } } public function query($refill_info) { $params['orderid'] = $refill_info['order_sn']; $params['agentid'] = config::AGENT_ID; $params['returntype'] = 2; $key = config::MerchantKey; $content = "agentid={$params['agentid']}&returntype={$params['returntype']}&orderid={$params['orderid']}&merchantKey={$key}"; $params['verifystring'] = md5($content); $resp = http_request(config::QUERY_URL,$params); if (empty($resp)) { return [false,'系统错误']; } else { Log::record($resp,Log::DEBUG); $resp = refill\util::xmlToArray($resp); if (empty($resp)) { return [false, '系统错误']; } elseif ($resp['resultno'] == 0014) { $order_state = ORDER_STATE_SUCCESS; } elseif ($resp['resultno'] == 0015) { $order_state = ORDER_STATE_CANCEL; } elseif ($resp['resultno'] == 0016) { $order_state = ORDER_STATE_SEND; } else { return [false, $resp['resultmessage']]; } return [true, $order_state]; } } public function balance() { return [false, '暂无余额接口']; } private function sign($params) { $key = config::MerchantKey; $content = "chargenumbertype={$params['chargenumbertype ']}&agentid={$params['agentid']}&returntype={$params['returntype']}&orderid={$params['orderid']}"; $content .= "chargenumber={$params['chargenumber']}&amountmoney={$params['amountmoney']}&ispname={$params['ispname']}&source={$params['source']}&merchantKey={$key}"; return md5($content); } }