'聚宝付(WAP支付)', 'partner_id' => '商户号', ); $config = array( 'partner_id' => array( 'INPUT_TYPE' => '0', ), ); /* 模块的基本信息 */ if (isset($read_modules) && $read_modules == true) { $module['class_name'] = 'Jubaopay'; /* 名称 */ $module['name'] = $payment_lang['name']; /* 支付方式:1:在线支付;0:线下支付 2:仅wap支付 3:仅app支付 4:兼容wap和app*/ $module['online_pay'] = '4'; /* 配送 */ $module['config'] = $config; $module['lang'] = $payment_lang; $module['reg_url'] = ''; return $module; } require_once APP_ROOT_PATH . 'system/libs/payment.php'; class Jubaopay_payment implements payment { public function get_payment_code($payment_notice_id) { $pay = array(); $pay['is_wap'] = 1;// $pay['class_name'] = "Jubaopay"; $pay['url'] =SITE_DOMAIN.APP_ROOT.'/mapi/index.php?ctl=pay&act=get_display_code&pay_code=Jubaopay¬ice_id='.$payment_notice_id; $pay['sdk_code'] = array("pay_sdk_type"=>"yjwap","config"=> array( "url"=>SITE_DOMAIN.APP_ROOT.'/mapi/index.php?ctl=pay&act=get_display_code&pay_code=Jubaopay¬ice_id='.$payment_notice_id, "is_wap"=>1 ) ); return $pay; } public function notify($request) { $payment = $GLOBALS['db']->getRow("select id,config from " . DB_PREFIX . "payment where class_name='Jubaopay'"); $payment['config'] = unserialize($payment['config']); require_once APP_ROOT_PATH . "system/payment/Jubaopay/jubaopay.php"; $jubaopay=new jubaopay(APP_ROOT_PATH . "system/payment/Jubaopay/jubaopay.ini"); $message=$request["message"]; $signature=$request["signature"]; $jubaopay->decrypt($message); // 校验签名,然后进行业务处理 $result=$jubaopay->verify($signature); if($result==1) { $payment_notice_sn = $jubaopay->getEncrypt("payid"); $outer_notice_sn = $jubaopay->getEncrypt("orderNo"); $payment_notice = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "payment_notice where notice_sn = '" . $payment_notice_sn . "'"); require_once APP_ROOT_PATH . "system/libs/cart.php"; $rs = payment_paid($payment_notice['notice_sn'],$outer_notice_sn); if($rs['status']==1){ echo "success"; // 像服务返回 "success"; } else { echo "pay failed"; // 像服务返回 "success" } } else { echo "verify failed";; } } public function response($request) { $payment = $GLOBALS['db']->getRow("select id,config from " . DB_PREFIX . "payment where class_name='Jubaopay'"); $payment['config'] = unserialize($payment['config']); require_once APP_ROOT_PATH . "system/payment/Jubaopay/jubaopay.php"; $jubaopay=new jubaopay(APP_ROOT_PATH . "system/payment/Jubaopay/jubaopay.ini"); $message=$request["message"]; $signature=$request["signature"]; $jubaopay->decrypt($message); // 校验签名,然后进行业务处理 $result=$jubaopay->verify($signature); if($result == 1) { $payment_notice_sn = $jubaopay->getEncrypt("payid"); $outer_notice_sn = $jubaopay->getEncrypt("orderNo"); $payment_notice = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "payment_notice where notice_sn = '" . $payment_notice_sn . "'"); require_once APP_ROOT_PATH . "system/libs/cart.php"; $rs = payment_paid($payment_notice['notice_sn'],$outer_notice_sn); if($rs['status']==1){ echo '