<?php
class alipayd_plugin
{
static public $info = [
'name' => 'alipayd', //支付插件英文名称,需和目录名称一致,不能有重复
'showname' => '支付宝官方支付直付通版', //支付插件显示名称
'author' => '支付宝', //支付插件作者
'link' => 'https://b.alipay.com/signing/productSetV2.htm', //支付插件作者链接
'types' => ['alipay'], //支付插件支持的支付方式,可选的有alipay,qqpay,wxpay,bank
'inputs' => [ //支付插件要求传入的参数以及参数显示名称,可选的有appid,appkey,appsecret,appurl,appmchid
'appid' => [
'name' => '应用APPID',
'type' => 'input',
'note' => '',
],
'appkey' => [
'name' => '支付宝公钥',
'type' => 'textarea',
'note' => '填错也可以支付成功但会无法回调,如果用公钥证书模式此处留空',
],
'appsecret' => [
'name' => '应用私钥',
'type' => 'textarea',
'note' => '',
],
'appmchid' => [
'name' => '子商户SMID',
'type' => 'input',
'note' => '',
],
],
'select' => [ //选择已开启的支付方式
'1' => '电脑网站支付',
'2' => '手机网站支付',
'3' => '当面付扫码',
'4' => '当面付JS',
'5' => '预授权支付',
'6' => 'APP支付',
'7' => 'JSAPI支付',
],
'note' => '<p>需要先申请互联网平台直付通才能使用!</p><p>如果使用公钥证书模式,需将<font color="red">应用公钥证书、支付宝公钥证书、支付宝根证书</font>3个crt文件放置于<font color="red">/plugins/alipayd/cert/</font>文件夹(或<font color="red">/plugins/alipayd/cert/应用APPID/</font>文件夹)</p>', //支付密钥填写说明
'bindwxmp' => false, //是否支持绑定微信公众号
'bindwxa' => false, //是否支持绑定微信小程序
];
static public function submit(){
global $siteurl, $channel, $order, $ordername, $sitename, $submit2, $conf, $clientip;
$isMobile = checkmobile();
$isAlipay = strpos($_SERVER['HTTP_USER_AGENT'], 'AlipayClient')!==false;
if($isAlipay && in_array('4',$channel['apptype']) && !in_array('2',$channel['apptype'])){
return ['type'=>'jump','url'=>'/pay/jspay/'.TRADE_NO.'/?d=1'];
}
elseif($isMobile && (in_array('3',$channel['apptype'])||in_array('4',$channel['apptype'])) && !in_array('2',$channel['apptype']) || !$isMobile && !in_array('1',$channel['apptype'])){
return ['type'=>'jump','url'=>'/pay/qrcode/'.TRADE_NO.'/'];
}
else{
if(strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger')!==false){
if(!$submit2){
return ['type'=>'jump','url'=>'/pay/submit/'.TRADE_NO.'/'];
}
return ['type'=>'page','page'=>'wxopen'];
}
if(!empty($conf['localurl_alipay']) && !strpos($conf['localurl_alipay'],$_SERVER['HTTP_HOST'])){
return ['type'=>'jump','url'=>$conf['localurl_alipay'].'pay/submit/'.TRADE_NO.'/'];
}
if($isMobile && in_array('2',$channel['apptype'])){
if($conf['alipay_wappaylogin']==1){
if($isAlipay){
return ['type'=>'jump','url'=>'/pay/submitwap/'.TRADE_NO.'/'];
}else{
return ['type'=>'jump','url'=>'/pay/qrcode/'.TRADE_NO.'/'];
}
}
if(self::isCombinePay($order['realmoney'])){
return ['type'=>'jump','url'=>'/pay/submitwap/'.TRADE_NO.'/'];
}
$alipay_config = require(PAY_ROOT.'inc/config.php');
$alipay_config['notify_url'] = $conf['localurl'].'pay/notify/'.TRADE_NO.'/';
$alipay_config['return_url'] = $siteurl.'pay/return/'.TRADE_NO.'/';
$bizContent = [
'out_trade_no' => TRADE_NO,
'total_amount' => $order['realmoney'],
'subject' => $ordername,
];
$bizContent['business_params'] = ['mc_create_trade_ip' => $clientip];
try{
$aop = new \Alipay\AlipayTradeService($alipay_config);
$aop->directPayParams($bizContent);
$html = $aop->wapPay($bizContent);
}catch(Exception $e){
return ['type'=>'error','msg'=>'支付宝下单失败!'.$e->getMessage()];
}
return ['type'=>'html','data'=>$html];
}elseif(in_array('1',$channel['apptype'])){
if($conf['alipay_paymode'] == 1){
return ['type'=>'jump','url'=>'/pay/qrcodepc/'.TRADE_NO.'/'];
}
$alipay_config = require(PAY_ROOT.'inc/config.php');
$alipay_config['notify_url'] = $conf['localurl'].'pay/notify/'.TRADE_NO.'/';
$alipay_config['return_url'] = $siteurl.'pay/return/'.TRADE_NO.'/';
$bizContent = [
'out_trade_no' => TRADE_NO,
'total_amount' => $order['realmoney'],
'subject' => $ordername,
];
$bizContent['business_params'] = ['mc_create_trade_ip' => $clientip];
try{
$aop = new \Alipay\AlipayTradeService($alipay_config);
$aop->directPayParams($bizContent);
$html = $aop->pagePay($bizContent);
}catch(Exception $e){
return ['type'=>'error','msg'=>'支付宝下单失败!'.$e->getMessage()];
}
return ['type'=>'html','data'=>$html];
}elseif(in_array('6',$channel['apptype'])){
if($conf['alipay_wappaylogin']==1 && !$isAlipay){
return ['type'=>'jump','url'=>'/pay/qrcode/'.TRADE_NO.'/'];
}
return ['type'=>'jump','url'=>'/pay/apppay/'.TRADE_NO.'/?d=1'];
}elseif(in_array('7',$channel['apptype'])){
return ['type'=>'jump','url'=>'/pay/jsapipay/'.TRADE_NO.'/?d=1'];
}elseif(in_array('5',$channel['apptype'])){
if($conf['alipay_wappaylogin']==1 && !$isAlipay){
return ['type'=>'jump','url'=>'/pay/qrcode/'.TRADE_NO.'/'];
}
return ['type'=>'jump','url'=>'/pay/preauth/'.TRADE_NO.'/?d=1'];
}
}
}
static public function mapi(){
global $siteurl, $channel, $order, $conf, $device, $mdevice;
if($mdevice=='alipay' && in_array('4',$channel['apptype']) && !in_array('2',$channel['apptype'])){
return ['type'=>'jump','url'=>$siteurl.'pay/jspay/'.TRADE_NO.'/?d=1'];
}
elseif($mdevice=='app' && in_array('6',$channel['apptype'])){
return self::apppay();
}
elseif($device=='mobile' && (in_array('3',$channel['apptype'])||in_array('4',$channel['apptype'])) && !in_array('2',$channel['apptype']) || $device=='pc' && !in_array('1',$channel['apptype'])){
return self::qrcode();
}else{
if(!empty($conf['localurl_alipay']) && !strpos($conf['localurl_alipay'],$_SERVER['HTTP_HOST'])){
return ['type'=>'jump','url'=>$conf['localurl_alipay'].'pay/submit/'.TRADE_NO.'/'];
}else{
return ['type'=>'jump','url'=>$siteurl.'pay/submit/'.TRADE_NO.'/'];
}
}
}
//电脑网站支付扫码
static public function qrcodepc(){
global $siteurl;
$code_url = '/pay/submitpc/'.TRADE_NO.'/';
return ['type'=>'qrcode','page'=>'alipay_qrcodepc','url'=>$code_url];
}
//电脑网站支付扫码跳转
static public function submitpc(){
global $siteurl, $channel, $order, $ordername, $conf, $clientip;
$alipay_config = require(PAY_ROOT.'inc/config.php');
$alipay_config['notify_url'] = $conf['localurl'].'pay/notify/'.TRADE_NO.'/';
$alipay_config['return_url'] = $siteurl.'pay/return/'.TRADE_NO.'/';
$bizContent = [
'out_trade_no' => TRADE_NO,
'total_amount' => $order['realmoney'],
'subject' => $ordername,
'qr_pay_mode' => '4',
'qrcode_width' => '230'
];
$bizContent['business_params'] = ['mc_create_trade_ip' => $clientip];
try{
$aop = new \Alipay\AlipayTradeService($alipay_config);
$aop->directPayParams($bizContent);
$html = $aop->pagePay($bizContent);
}catch(Exception $e){
return ['type'=>'error','msg'=>'支付宝下单失败!'.$e->getMessage()];
}
$html = '<!DOCTYPE html><html><body><style>body{margin:0;padding:0}.waiting{position:absolute;width:100%;height:100%;background:#fff url(/assets/img/load.gif) no-repeat fixed center/80px;}</style><div class="waiting"></div>'.$html.'</body></html>';
return ['type'=>'html','data'=>$html];
}
//手机网站支付扫码跳转
static public function submitwap(){
global $siteurl, $channel, $
没有合适的资源?快使用搜索试试~ 我知道了~
2024年最新彩虹易支付源码新增功能 代码全部开源
共2011个文件
svg:796个
js:536个
html:260个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 3 下载量 25 浏览量
2024-02-29
21:16:28
上传
评论
收藏 37.89MB RAR 举报
温馨提示
2024年最新彩虹易支付源码新增功能 代码全部开源 找人把代码全部解密,不是外面那种加密版本,可二开。 跟新说明 2024/01/06: 1.更新微信商家小票页面样式 2.云闪付扫码支付支持直接跳转云闪付APP 3.增加杉德、付呗支付插件 2023/12/19: 1.更新PayPal、汇付、虎皮椒插件
资源推荐
资源详情
资源评论
收起资源包目录
2024年最新彩虹易支付源码新增功能 代码全部开源 (2011个子文件)
sand.cer 815B
businessgate.cer 655B
codebase.min-5.3.css 508KB
quick-website.css 441KB
app.min.css 357KB
materialdesignicons.min.css 239KB
materialdesignicons.min.css 239KB
bootstrap.min.css 203KB
bootstrap.css 188KB
responsive.css 176KB
bootstrap.min.css 160KB
bootstrap.min.css 157KB
bootstrap.min.css 157KB
bootstrap.min.css 154KB
app.css 153KB
bootstrap.min.css 152KB
bootstrap.min.css 145KB
bootstrap.min.css 141KB
style.css 141KB
bootstrap.css 138KB
materialdesignicons.min.css 138KB
bootstrap.min_1.css 137KB
index.css 123KB
all.min.css 120KB
bootstrap.min.css 119KB
land1.css 107KB
land1.css 107KB
bootstrap.min.css 105KB
main.css 84KB
connect.css 83KB
style.css 83KB
app.css 80KB
animate.css 77KB
style.css 76KB
layui.css 73KB
elegance.min-5.3.css 69KB
corporate.min-5.3.css 69KB
flat.min-5.3.css 69KB
pulse.min-5.3.css 69KB
earth.min-5.3.css 69KB
animate.css 68KB
connect.min.css 65KB
style.css 65KB
style.css 65KB
bootstrap-grid.css 63KB
all.css 63KB
fontawesome.css 61KB
main.css 60KB
animate.css 60KB
bootsnav.css 59KB
style.css 58KB
animate.min.css 57KB
common_1107.css 56KB
animate.min.css 56KB
style.css 56KB
all.min.css 56KB
fontawesome.min.css 54KB
style.css 53KB
animate.min.css 52KB
all.min.css 50KB
style.min.css 49KB
fontawesome.min.css 49KB
bootstrap-grid.min.css 47KB
font-awesome.min.css 45KB
v4-shims.css 40KB
animations.min.css 39KB
style.min.css 36KB
style.css 34KB
style.css 31KB
aos.css 31KB
aos.css 31KB
aos.css 31KB
font-awesome.min.css 30KB
style.min.css 29KB
responsive.css 27KB
main.css 27KB
style.min.css 27KB
v4-shims.min.css 26KB
aos.css 25KB
OverlayScrollbars.css 24KB
responsive.css 22KB
dark_theme.css 21KB
style.css 20KB
common.css 20KB
common.css 19KB
swiper.min.css 19KB
bootstrap_1107.css 19KB
index.css 17KB
select2.css 17KB
index.css 17KB
admin2.css 16KB
iconfont.css 16KB
dataTables.jqueryui.css 16KB
themify-icons.css 16KB
style.css 16KB
style.css 16KB
jquery.dataTables.css 15KB
select2.min.css 15KB
responsive.css 14KB
admin4.css 14KB
共 2011 条
- 1
- 2
- 3
- 4
- 5
- 6
- 21
资源评论
- WINDOWS123A2024-05-18支持这个资源,内容详细,主要是能解决当下的问题,感谢大佬分享~
- Kevin沉醉2024-04-26总算找到了想要的资源,搞定遇到的大问题,赞赞赞!
如鹿觅水
- 粉丝: 180
- 资源: 376
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功