[TOC]
#### 營銷卡券
營銷卡券在微擎中分為微信卡券和系統卡券,此兩個類型在系統中使用常量 **COUPON_TYPE** 來標識,使用前請先調用 **activity_coupon_type_init()** 來初始化公眾號支持卡券類型,以下我們分別介紹一下這兩種卡券。
* 微信卡券,當公眾號為認證服務號時,系統默認切換為微信卡券來使用卡券,支持的卡券類型為折扣券、代金券、禮品券、團購券、優惠券幾種。領取、發放及核銷全部通過微信接口來操作。
```
activity_coupon_type_init();
if (COUPON_TYPE == WECHAT_COUPON) {
//當前系統使用微信卡券
}
```
* 系統卡券,當非認證服務號時,系統模擬公眾平臺微信卡券的功能實現一套了卡券功能,支持的卡券類型為折扣券、代金券。此卡券與微信卡券并不通用。
```
activity_coupon_type_init();
if (COUPON_TYPE == SYSTEM_COUPON) {
//當前系統使用系統卡券
}
```
>[warning] 值得注意的是,微信卡券與系統卡券數據并不通用,當使用系統卡券添加的數據,并不會推送到微信卡券端,所以切換微信卡券后,數據需要重新添加。
<p>
>[info]系統卡券只是為了補充那些沒有權限的用戶使用,強烈建議您使用體驗和完整程度更高的微信卡券功能
#### 添加卡券
添加卡券可以在 **粉絲營銷** - **卡券管理** - **添加卡券** 來添加一個卡券。下面詳情說明一些添加卡券的表單項。
* 適用模塊,添加卡券后管理員可以自由設置該卡券可以在哪些特定的模塊中發放,核銷,不選的話則不限制。
#### 發放卡券
##### 通過營銷活動發放
發放卡券可以在 **粉絲營銷** - **卡券管理** - **卡券營銷** 中進行卡券發放
##### 通過模塊發放
在模塊中調用 activity_coupon_grant()方法發放卡券
>[info]activity_coupon_grant($id, $openid)
* $id 卡券id
* $openid 指定會員的openid
*返回值*
error
[錯誤結構](http://www.hmoore.net/donknap/we7/134630)
*示例*
```
load()->('activity');
$id = intval($_GPC['id']);
$activity_exchange = pdo_get('activity_exchange', array('extra' => $id));
if ($activity_exchange['credit'] < 0) {
message(error(-1, '兌換' . $creditnames[$activity_exchange['credittype']] . '有誤'), '', 'ajax');
}
$openid = $_W['member']['uid'];
activity_coupon_grant($id, $openid);
```
#### 核銷卡券
>[info]activity_coupon_use($couponid, $recid, $module == 'system')
* $couponid 卡券id
* $recid 兌換記錄id
* $module 模塊名稱,默認為系統模塊
*返回值*
error
[錯誤結構](http://www.hmoore.net/donknap/we7/134630)
*示例*
```
load()->model('activity');
$code = trim($_GPC['code']);
$record = pdo_get('coupon_record', array('code' => $code));
if(empty($record)) {
message(error(-1, '卡券記錄不存在'), '', 'ajax');
}
activity_coupon_use($record['couponid'], $record['id'], 'paycenter');
```
#### 卡券相關函數
#####初始化公眾號支持卡券類型.
>[info] **activity_coupon_type_init**()
*示例*
```
activity_coupon_type_init();
if (COUPON_TYPE == SYSTEM_COUPON) {
//當前系統使用系統卡券
}
```
#####獲取某張卡券的所有信息
>[info]activity_coupon_info($id)
* $id 卡券id
*返回值*
error
[錯誤結構](http://www.hmoore.net/donknap/we7/134630)
succss
```
array(
'id' => 190; //卡券id
'card_id' => 'pTKzFjqwwpBOUNP5opKJbxCHNVVM' // 微信卡券id
'type' => '2' // 卡券類型 1.折扣券 2.代金券 3.團購券 4.禮品券 5.優惠券
'date_info' => array(
'time_type' => 1 // 時間類型 1.固定如期 2.領取后的一段時間內
'time_limit_start' => 2016.07.25 // 卡券有效期結束日期
'time_limit_end' => 2016.08.26 // 時間類型
'deadline' => 5 // 領取后幾天可以使用
'limit' => 10 // 有效天數
'quantity' => 300 // 庫存總量
'get_limit' => 10 // 每人限領
'extra' => array( // 優惠詳情
'discount' => '0.8' //折扣(折扣券
'least_cost' => '100'//最低消費金額(代金券)
'10'//抵扣金額(代金券)
'deal_detail' => '使用團購券可享受團購優惠'//團購券詳情(團購券)
'gift' => '憑此禮品券可免費領取禮品一個'//禮品券詳情(禮品券)
'default_detail' => '憑此優惠券在中秋到店消費可享受優惠'//優惠券詳情(優惠券)
'status' => a卡券狀態1.審核中2.審核未通過3.審核通過4.卡券被商戶刪除5.未知 // 優惠詳情
'is_display' => 1//是否上架1.是2.否
'dosage' => 12//已領取數量
);
```
*示例*
```
load()->model('activity');.
$id = $_GPC['id'];
$coupon = activity_coupon_info($id);
```
#####獲取當前公眾號所有有效的卡券
>[info]activity_coupon_available()
*返回值*
error
[錯誤結構](http://www.hmoore.net/donknap/we7/134630)
success
```
array(
'0' => array(
'id' => 190
'card_id' => 'pTKzFjqwwpBOUNP5opKJbxCHNVVM'
//卡券詳情,同activity_coupon_info()的返回值
),
'1' => array(
'id' => 190
'card_id' => 'pTKzFjqwwpBsdfe235KJbxCHNVVM'
//卡券詳情,同activity_coupon_info()的返回值
)
)
```
*示例*
```
load()->model('activity');
$available_coupons = activity_coupon_available();
```
#####獲取當前會員當前已有卡券及使用情況
>[info]activity_coupon_owned()
*返回值*
error
[錯誤結構](http://www.hmoore.net/donknap/we7/134630)
success
```
array(
'0' => array(
'id' => 190
'card_id' => 'pTKzFjqwwpBOUNP5opKJbxCHNVVM'
//卡券詳情,同activity_coupon_info()的返回值
),
'1' => array(
'id' => 190
'card_id' => 'pTKzFjqwwpBsdfe235KJbxCHNVVM'
//卡券詳情,同activity_coupon_info()的返回值
)
)
```
*示例*
```
load()->model('activity');
$coupon_records = activity_coupon_owned();
```
#####指定會員兌換指定真實物品
>[info]activity_goods_grant($uid, $exid)
* $uid 會員id
* $exid 真實物品id
*返回值*
error
[錯誤結構](http://www.hmoore.net/donknap/we7/134630)
success
物品兌換記錄id
*示例*
```
load()->model('activity');
$uid = $_W['member']['uid'];
$exid = intval($_GPC['exid']);
$goods = activity_exchange_info($id, $_W['uniacid']);
if(empty($goods)){
message(error(-1, '沒有指定的禮品兌換'), '', 'ajax');
}
activity_goods_grant($uid, $exid);
```
#####指定會員兌換指定活動
>[info]activity_module_grant($uid, $exid)
* $uid 會員id
* $exid 活動id
*返回值*
error
[錯誤結構](http://www.hmoore.net/donknap/we7/134630)
success
true
*示例*
```
load()->model('activity');
$uid = $_W['member']['uid'];
$exid = intval($_GPC['exid']);
activity_module_grant($uid, $exid);
```
- 入門
- 系統安裝
- 接入公眾平臺
- 關鍵字回復
- 更上一層樓
- 編碼規范
- php編碼規范
- html&css編碼規范
- JavaScript編碼規范
- 系統概述
- 結構概述
- 入口腳本
- 微擎MVC
- URL路由&創建
- $_W&全局變量
- 加載器
- 錯誤處理
- 日志記錄
- 模板
- 模板標簽
- 數據調用
- 常用變量
- 手機端組件
- 概述及依賴
- 圖像上傳
- 彈出選項
- 后臺組件
- 概述及依賴
- 后臺文件上傳
- 富文本編輯器
- 系統鏈接選擇器
- 其它常用組件
- 數據庫
- 參數綁定
- 數據操作
- 主從配置
- 連接其它數據庫
- 緩存
- 配置
- 緩存操作
- Http請求
- 概述及依賴
- GET&POST請求
- 發送郵件
- 會員與積分
- 統一用戶中心
- 借用OAuth
- 積分操作
- 資料操作
- 卡券
- 營銷卡券
- 會員卡
- 消息響應
- 消息概述
- 消息響應
- 微信API
- 公眾號AccessToken
- 共享收貨地址(廢棄)
- 共享收貨地址(新)
- 粉絲標簽
- 客服消息
- 模板消息
- 粉絲信息
- 素材
- 群發
- 二維碼
- 在線支付
- 概述及依賴
- 發起支付(PHP)
- 發起支付(JS)
- 驗證支付
- 模塊
- 設計模塊
- 目錄結構
- module.php
- processor.php
- site.php
- receiver.php
- 模塊高級專題
- 自定義分享
- 智能應答
- 微信卡券
- 遠程附件
- 權限控制
- 特殊事件觸發模塊
- 粉絲信息
- 小程序
- 概述
- Uitl類
- 云服務
- 云API
- 系統接口
- 模塊云配置
- 云短信
- 云短信錯誤代碼
- 云短信發送函數
- 批量群發短信
- 應用推廣
- 懸賞文案
- 折扣碼
- 系統消息
- 開發者等級資料認證
- 應用標簽
- 模塊自動檢測訂閱支持
- 小程序
- 開發實例
- 參數設置
- 常見問題