jnpar_pay支付插件开发文档说明
1 安装支付助手版进行开发测试
本版本无需另外申请支付宝微信接口,只需要申请免费试用接口进行开发测试(支付数额支持1分钱测试)
详情见:https://discuz.jnpar.com/portal.php?mod=topic&topicid=1
开发前,需要明确您的插件标识,并在后台登记,如图,保证在同一网站中,不同应用之间编号不重复即可。
2 拼接发起支付的链接:
$payurl=C::t('#jnpar_pay#jn_orderlog')->genpayurl($para)
其中$para为数组,需包含以下元素:
//================================
$para['appid']=$appid;//插件标识
$para['tid']=$tid;//标识tid,商品的唯一标识1,一般为帖子tid
$para['pid']=$pid;//标识pid,商品的唯一标识2,一般为帖子pid
$para['authorid']=$authorid;//帖子作者
$para['payedlog']=$payedlog;//是否有支付记录
$para['sellmoney']=$sellmoney;//原价,单位:元
$para['gdiscount']=$gdiscount;//用户组折扣,例如0.5就是5折,0.25就是2.5折
$para['mdiscount']=$mdiscount;//勋章折扣,同上
$para['count_need']=$count_need;//实际需要支付,单位:元
$para['charge_ratio']=$charge_ratio;//分配给作者的分成比例,填写百分比(不需要带百分号)。若不分配,则设为0即可。
$para['payway_open']=$payway_open;//开启的支付方式,1支付宝支付,2微信支付,3积分支付,多个用“,”隔开,例如“1,2,3”,此项设置可以做到后台由用户设置,建议使用多项选择的变量,然后unserialize一下
$para['allow_guestpay']=$allow_guestpay;//此应用是否允许游客支付,1允许 0不允许
注意:以上变量中,$para['count_need '](实际支付费用)和所需积分可以通过以下函数相互转换,C::t('#jnpar_pay#jn_orderlog')->credit_rmb_conv($in,$type);其中$in为待转换的值,$type为转换方向:0表示积分转人民币,1表示人民币转积分。
//=====================================
用户点击此链接,会转到支付方式选择页面(建议将此页面放置到弹出窗口中)
3 支付后处理程序完善
下载下列文件,并将文件名及文件中“你的插件标识”等文字替换成您的插件标识
在您的插件目录里新建一个table文件夹,把上述文件拷贝到此目录。
完善以下三个函数即可:
- function genorder($para_arr,$paytype){//订单生成程序}function appcheck($arr){//购买前检测程序}function handle_payorder($ordernum){//支付成功后处理程序}