## 目录
[TOC]
## 前言
>[info] 此处仅列出部分主要API,详细API请参考javadoc
[点击进入Javadoc](http://q1lzbuhju.bkt.clouddn.com/javadoc/index.html)
为了实现广大用户的需求,现开放API接入功能,依赖McPay核心插件,仅需几行代码,快捷接入!
你可以利用McPay API做这些事情 :
1. 获取商品列表
2. 获取商品信息
3. 创建订单并获取订单信息
4. 监听玩家支付结果
5. 获取玩家订单列表
6. 获取统计信息
马上开发适合自己的McPay附属吧~
随着版本更新API方法可能会有所改变
因所有的API方法均将产生实时网络请求,请尽量使用异步逻辑包裹
## 获取商品列表
|方法名|返回|
| --- | --- |
| com.mkuaiyun.mcpay.api.McPay.getCommodities(boolean includeHide) | List<ICommodity> |
|参数名|参数说明|
| --- | --- |
| includeHide | 是否要包含服主设置为隐藏的商品 |
## 获取商品信息
|方法名|返回|
| --- | --- |
| com.mkuaiyun.mcpay.api.McPay.getCommodity(int id) |ICommodity |
|参数名|参数说明|
| --- | --- |
| id | 商品ID |
## 创建订单并获取订单信息
|方法名|返回|
| --- | --- |
| com.mkuaiyun.mcpay.api.McPay.createTrade(String source, PaymentType payment, int commodityId, Player player) | Future<ITradeRequestInfo> |
|参数名|参数说明|
| --- | --- |
| source | 订单来源(一般传入自己的插件名即可) |
| payment | 付款方式 |
| commodityId | 商品ID |
| player | 购买该订单的玩家 |
## 支付完成事件
|事件名|事件说明|
| --- | --- |
| com.mkuaiyun.mcpay.api.event.PaymentEvent | 你可以通过该事件监听玩家何时支付完成,从而执行一些操作,例如关闭您创建的扫码页面、通知玩家支付成功等。该事件仅支付成功触发。 |
## 获取玩家订单列表
|方法名|返回|
| --- | --- |
|com.mkuaiyun.mcpay.api.McPay.getTradeInfoList(String playerName) | List<ITradeInfo> |
|参数名|参数说明|
| --- | --- |
| playerName | 玩家名 |
## 获取玩家统计信息
|方法名|返回|
| --- | --- |
| com.mkuaiyun.mcpay.api.McPay.getPlayerStatistics(String playerName) | IStatistics |
|参数名|参数说明|
| --- | --- |
| playerName | 玩家名 |
## 获取商品统计信息
|方法名|返回|
| --- | --- |
| com.mkuaiyun.mcpay.api.McPay.getCommodityStatistics(int commodityId) | IStatistics |
|参数名|参数说明|
| --- | --- |
| commodityId | 商品ID |
## 获取商户全部统计信息
|方法名|返回|
| --- | --- |
| com.mkuaiyun.mcpay.api.McPay.getAllStatistics() | IStatistics |