www.gusucode.com > ShopEx481 & PHPWind 整合版码程序 > plugins/payment/pay.epay.php
<?php require('paymentPlugin.php'); class pay_epay extends paymentPlugin{ var $name = 'EPAY网上支付';//EPAY网上支付 var $logo = 'EPAY'; var $version = 20070902; var $charset = 'gb2312'; var $submitUrl = 'http://www.ipost.cn/pay/pay.aspx'; // var $submitButton = 'http://img.alipay.com/pimg/button_alipaybutton_o_a.gif'; ##需要完善的地方 var $supportCurrency = array("TWD"=>"TWD"); var $supportArea = array('AREA_TWD'); var $desc = ''; var $orderby = 24; var $cur_trading = true; //支持真实的外币交易 function toSubmit($payment){ //$order->M_Amount *= 100 ; $payment["M_Amount"] *= 100 ; $merId = $this->getConf($payment["M_OrderId"], 'member_id'); //$lnkStr = trim($merId).":".trim($this->getConf('SecondPrivateKey')).":".trim($order->M_OrderId).":".trim($order->M_Amount).":".trim($this->getConf('PrivateKey')); $lnkStr = trim($merId).":".trim($this->getConf($payment["M_OrderId"], 'SecondPrivateKey')).":".trim($payment["M_OrderId"]).":".trim($payment["M_Amount"]).":".trim($this->getConf('PrivateKey')); $strCountSignature = MD5($lnkStr); $return['epayClientMerchID'] = $merId; $return['epayClientMerchPwd'] = $this->getConf($payment["M_OrderId"], 'SecondPrivateKey'); $return['epayClientOrderNum'] = $payment["M_OrderId"];//$order->M_OrderId; $return['epayClientOrderAmount'] = $payment["M_Amount"];//$order->M_Amount; $return['signature'] = $strCountSignature; return $return; } function callback($in,&$orderId,&$money,&$message){ $v_merid = trim($in['epayClientMerchID']); $v_merpwd = trim($in['epayClientMerchPwd']); $v_orderid = trim($in['epayClientOrderNum']); $v_status = trim($in['epayClientOrderTranStatus']); $v_pmd5 = trim($in['signature']); $orderId = $v_orderid; $money = ''; $lnkStr = trim($v_merid).":".trim($v_merpwd).":".trim($v_orderid).":".trim($v_status).":".trim($ikey); if ($v_pmd5 == md5($lnkStr)){ //验证成功 if($v_status == "Y"){ return PAY_SUCCESS; }else{ $message = '交易失败'; return PAY_FAILED; } }else{ $message = '验证失败'; return PAY_ERROR;# 交易失败 } } function getfields(){ return array( 'member_id'=>array( 'label'=>'客户号', 'type'=>'string' ), 'PrivateKey'=>array( 'label'=>'私钥', 'type'=>'string' ), 'SecondPrivateKey'=>array( 'label'=>'第二私钥', 'type'=>'string' ) ); } } ?>