回顧
之前我們介紹完了卡券從建立到發放的基本流程,今天我們将介紹卡券和Code的相關操作。本文主要介紹NodeJS語言下wechat-card子產品的操作方式,另外對重要的地方進行特别說明,以便其他語言開發者參考。
卡券ID清單
這個接口可以查詢到公衆号下的所有卡券ID,需要注意下,這裡擷取的是卡券ID,而不是卡券資訊,使用方法和查詢門店清單類似,也是通過 offset 和 count 兩個參數來擷取清單,接口如下:
1 | |
通過wechat-card 進行操作的方法如下:
2 3 | |
這裡的兩個參數不做過多說明,可以參照查詢門店清單接口處的介紹。
卡券查詢
這個接口時用來通過 卡券ID 查詢卡券的詳細資訊的接口,可以和上面擷取卡券ID清單的接口搭配來擷取所有卡券的資訊。接口如下:
|
通過 wechat-card 擷取卡券資訊方式如下:
4 5 6 | |
接口傳回的資料可以參見文檔,其實就是添加卡券時候的卡券資訊而已。
修改卡券
這個接口用于修改卡券資訊,當然并不是所有的資訊,隻是一部分無關緊要的資訊而已,很多關鍵資訊都是不允許修改的。接口如下:
|
在 wechat-card 修改卡券的方法如下:
7 8 9 10 11 12 13 14 | |
需要注意的問題有:
1. 在修改時候需要傳遞一個參數對象,包含要修改的卡券的card_id, base_info,和special_info, 當然這裡base_info和special_info可以修改的字段是非常少的,具體哪些字段可以修改,大家可以參照微信官方的文檔。而且,在卡券修改後,已經發放的卡券也會随之而改變,而且修改某些字段後,已經稽核通過的卡券會重新進入待稽核狀态,稽核失敗的卡券則不會重新稽核,具體哪些字段可以出發重新稽核,請大家參照官方文檔。
2. 微信接口中所有的查詢接口都有緩存,是以有一定的幾率會造成一種情況,在修改卡券成功後立刻進行查詢,有可能緩存沒有更新,而導緻查詢到的資料沒有變化,這裡有待微信進行優化了。
3. 在修改卡券有效期的時候,需要注意的一點是:修改的時間範圍不能小于原有的時間範圍,比如目前卡券有效期為2015-03-12,那麼修改的日期必須為2015-3-12以後。
删除卡券
這個接口可以通過卡券ID删除已經建立的卡券, 接口為:
|
使用 wechat-card 删除卡券的方法如下:
|
這裡需要注意的問題有:删除卡券以後,已經被領取的Code還是有效的,可以通過核銷Code的方式進行核銷。
Code查詢
查詢Code接口可以通過code查詢對應的資訊,包括code對應的卡券card id,領取code使用者的openid,以及卡券的有效期。這裡比較奇怪的是沒有code的狀态,這裡期待微信以後可以支援。
接口為:
|
在 wechat-card 中查詢code的方法如下:
|
Code修改
這個接口用于修改已經領取的Code值。
這個接口使用的情況有:當卡券為自定義SN時,并且允許轉贈卡券時,當卡券贈送給朋友以後,為了保證Code安全性,需要修改該Code的值,推薦在轉贈以後收到事件推送(事件推送為微信向自定義伺服器推送資料,在之後我們會進行詳細介紹)時進行修改。
|
在 wechat-card 中修改Code的方法為:傳遞參數為原始Code,對應的卡券ID, 和新的Code
|
設定Code失效
這個接口可以通過Code将已經領取的卡券設定為失效。接口為:
|
在 wechat-card 中設定Code失效的方法為:
|
修改卡券庫存
這個接口是用來補充卡券的庫存值或者減少庫存值,卡券庫存即在建立卡券時 base_info.sku.quantity 字段。這個字段無法再修改卡券中進行修改,需要單獨的接口進行修改,接口為:
|
在 wechat-card 中修改卡券庫存的方法為:調用方法的第二個參數為要改變的庫存值,比如增加10個,為+10, 比如減少20個,為-20。
|