## 插件接入 ``` "plugins": { "issuer-plugin": { "version": "", // 版本号 开发版本 dev-xxxxxxx 正式版本 例:1.0.0 "provider": "wx06bc6021dc900553" } } ``` ## 支付接入 1.需要在宿主小程序根目录下增加functional-pages/request-payment.js文件,并且暴露beforeRequestPayment函数 2.宿主小程序app.json 中配置 "functionalPages": true ``` exports.beforeRequestPayment = function (paymentArgs, callback) { // 自定义的参数,此处应为从插件传递过来的 paymentArgs var error = null //该对象为下单所需参数 var requestPaymentArgs = { timeStamp: paymentArgs.timeStamp, nonceStr: paymentArgs.nonceStr, package: paymentArgs.package, signType: paymentArgs.signType, paySign: paymentArgs.paySign, } callback(error, requestPaymentArgs) //重点:返回requestPaymentArgs } ``` ## APP跳转方式 ### APP拉起小程序所带参数 1. 小程序URL?wechatSignNo=xxxxx ### 小程序拉起插件所带参数 2. plugin://issuer-plugin/login?wechatSignNo=xxx&redirectUrl=xxxxx&mobile=xxx 3. wechatSignNo APP拉起小程序所带的签约信息编号由APP端调用接口生成 ## 小程序跳转方式 1. 新办路径 plugin://issuer-plugin/login?etcProductId=xxx&accountType=1&carType=0&redirectUrl=xxxxx&mobile=xxx 2. 车辆续办 plugin://issuer-plugin/login?etcProductId=xxx&plateNum=浙A0P73H_0&handleType=continuation&redirectUrl=xxxxx&mobile=xxx 4. 重新激活 plugin://issuer-plugin/login?plateNum=浙A0P73H_0&handleType=reactivate&redirectUrl=xxxxx&mobile=xxx 5. 恢复签约 plugin://issuer-plugin/login?plateNum=浙A0P73H_0&handleType=resumeSigning&redirectUrl=xxxxx&mobile=xxx 6. 仅获取登录凭证 plugin://issuer-plugin/login?type=1&redirectUrl=xxxxx&mobile=xxx 7. 车辆售后 plugin://issuer-plugin/login?plateNum=浙A0P73H_0&handleType=aftersale&afterType=1&orderNo=xxxx&redirectUrl=xxxxx&mobile=xxx 8. 车主服务签约 plugin://issuer-plugin/signGetAuth?orderNo=xxxx&openId=xxxx 9. 设备激活 plugin://issuer-plugin/activeDes?orderNo=xxxx 10. 签署合同 plugin://issuer-plugin/signProtocol?orderNo=xxxx 11. 设备升级 plugin://issuer-plugin/deviceUpgrade 12. 卡签二次激活 plugin://issuer-plugin/activeAgain?plateNum=xxxxxxx_x ## 跳转参数说明 1. redirectUrl 小程序重定向地址 例:/pages/login/login 2. orderNo 订单编号 3. plateNum 车牌号码和颜色编号 例:浙A0P73H_0 4. handleType 办理类型 continuation 续办 aftersale 售后 reactivate 重新激活 resumeSigning 恢复签约 5. afterType 售后办理类型 1.挂失/解挂 3.更换 4.续期 5.补办 6.注销 7.换货 8.退货 9.补货 6. type 登录类型 1.只获取登录凭证用登录完成跳转回小程序指定页面 7. accountType 1 个人 2企业 8. carType 0 客车 1 货车 9. etcProductId 产品编号 10. mobile 手机号码 11. openId 用户登录获取openId 12. accessToken 用户登录获取accessToken ## 回调通知 ```js const plugin = requirePlugin('issuer-plugin'); ``` 1. 激活 ```js const res = plugin.getActiveResult(); res = { state: 2, // 0 成功 1 失败 2取消 obu: "", // OBU号 card: "", // 卡号 } ``` 2. 签署合同 ```js const res = plugin.getSignProResult(); res = { state: 1, // 0 已签约 1未签约 } ``` 3. 车主服务签约 ```js const res = plugin.getSignCarServiceResule(); res = { state: 1, // 0 已签署 1未签署 } ```