>[danger] 注意:舊版本API已經棄用,隨時可能被刪除,此頁面僅做歸檔,請不要使用舊版本API
## 目錄
[TOC]
## 前言
>[danger] 注意:舊版本API已經棄用,隨時可能被刪除,此頁面僅做歸檔,請不要使用舊版本API
為了實現廣大用戶的需求,現開放API接入功能,依賴McPay核心插件,僅需幾行代碼,快捷接入!
你可以利用McPay API做這些事情 :
1. 獲取商品列表
2. 創建訂單并獲取二維碼
3. 監聽玩家支付結果
5. 獲取玩家訂單列表
6. 獲取玩家統計信息
馬上開發適合自己的McPay附屬吧~
隨著版本更新API方法可能會有所改變
因所有的API方法均將產生實時網絡請求,請盡量使用異步邏輯包裹
## 獲取商品列表
|方法名|返回|
| --- | --- |
|org.miaokuaiyunplugin.mcpay.Api.getCommodity(int 獲取頁數,int 每頁獲取商品數) | org.miaokuaiyunplugin.mcpay.util.json.Commodity|
**org.miaokuaiyunplugin.mcpay.util.json.Commodity**
* getResult() int 獲取結果 1為成功 0為失敗
* getMsg() String 獲取結果狀態消息
若獲取結果為0,以下方法返回null!
* getTotalAmount() int 商品總數量
* getMaxPage() int 最大頁數
* getCommdity() List<org.miaokuaiyunplugin.mcpay.util.json.Commodity.Commodity2> 獲取到的商品
**org.miaokuaiyunplugin.mcpay.util.json.Commodity.Commodity2**
* getId() String 商品id
* getName() String 商品名稱
* getPrice() String 商品價格
* getIntroduce() String 商品介紹
## 創建訂單并獲取二維碼
|方法名|返回|
| --- | --- |
| org.miaokuaiyunplugin.mcpay.Api.Buy(String 操作插件,String 支付方式,String 商品id,String 購買玩家名稱) | Map<String, String> |
**參數說明**
* @param 操作插件 此參數是僅作為監聽玩家支付事情而設置的插件標識,如果你不需要后續的監聽,請設置為null或"McPay"。
* @param 支付方式 ALIPAY=支付寶 WEIXINPAY=微信 QQPAY=QQ
* @param 商品id 略
* @param 購買玩家名稱 略
**Map<String, String>**
* @key result 訂單創建結果 1為成功 0為失敗
* @key msg 訂單狀態消息
* 若獲取結果為0,以下key為null!
* @key order_on 訂單號
* @key qr_code 二維碼地址,無需生成二維碼,地址即二維碼圖片
## 支付完成事件
**org.miaokuaiyunplugin.mcpay.event.PaymentEvent**
**事件說明**
你可以通過該事件監聽玩家何時支付完成,從而執行一些操作,例如關閉您創建的掃碼頁面、通知玩家支付成功等
該事件僅支付成功觸發。
**方法說明**
* getPlugin() String 操作插件
* getOrderOn() String 訂單號
* getPlayerName() String 購買玩家名稱
* getCommodityName() String 商品名稱
* getPrice() String 支付金額
## 獲取玩家訂單列表
|方法名|返回|
| --- | --- |
|org.miaokuaiyunplugin.mcpay.Api.getBuyTrade(int 獲取頁數,int 每頁獲取商品數,String 玩家名稱) | org.miaokuaiyunplugin.mcpay.util.json.BuyTrade|
**org.miaokuaiyunplugin.mcpay.util.json.BuyTrade**
* getResult() int 獲取結果 1為成功 0為失敗
* getMsg() String 獲取結果狀態消息
若獲取結果為0,以下方法返回null!
* getTotalAmount() int 訂單總數量
* getMaxPage() int 最大頁數
* getTrade() List<org.miaokuaiyunplugin.mcpay.util.json.BuyTrade.Trade> 獲取到的訂單
**org.miaokuaiyunplugin.mcpay.util.json.BuyTrade.Trade**
* getOrderOn() String 訂單號
* getPayment() String 支付方式
* getCommodityName() String 商品名稱
* getPrice() String 付款金額
* getStatus() String 交易狀態
## 獲取玩家統計信息
|方法名|返回|
| --- | --- |
|org.miaokuaiyunplugin.mcpay.Api.getStatistics(String 玩家名稱,String 商品id) | Map<String,String>|
**參數說明**
* @param 玩家名稱 指定玩家名稱,如果你需要獲取全部玩家請設該值為null
* @param 商品id 指定商品id,如果你需要獲取全部商品請設改值為null
**Map<String, String>**
* @key result 獲取結果 1為成功 0為失敗
* @key msg 獲取狀態消息
* 若獲取結果為0,以下key為null!
* @key amount 購買次數
* @key money 消費總額