ActivityData.php 2.26 KB
<?php

namespace LibModels\Wap\Cuxiao;

use Api\Yohobuy;

/**
 * 活动的数据模型
 * 
 * @name ActivityData
 * @package LibModels/Wap/Cuxiao
 * @copyright yoho.inc
 * @version 1.0 (2015-11-25 19:10:52)
 * @author fei.hong <fei.hong@yoho.cn>
 */
class ActivityData
{

    const URI_GET_ACTIVITY_INFO = 'event/api/v1/activity/get';
    const URI_GET_NAMED_COUPON = 'event/api/v1/activity/getCoupon';
    const URI_GET_ALL_COUPON = 'event/api/v1/activity/getCoupon';
    const URI_SEND_MESSAGE = 'inbox/service/v1/inbox';

    /**
     * 用户获取某个活动指定的单个优惠券
     * 
     * @param int $uid 用户ID
     * @param int $activityId 活动ID
     * @param int $couponId 优惠券ID
     * @return array
     */
    public static function getCouponNamed($uid, $activityId, $couponId)
    {
        $param = array();
        $param['uid'] = $uid;
        $param['activity_id'] = $activityId;
        $param['coupon_id'] = $couponId;

        return Yohobuy::get(Yohobuy::SERVICE_URL . self::URI_GET_NAMED_COUPON, $param);
    }

    /**
     * 用户获取某个活动所有的优惠券操作
     * 
     * @param int $uid 用户ID
     * @param int $activityId 活动ID
     * @return array
     */
    public static function getCouponAll($uid, $activityId)
    {
        $param = array();
        $param['uid'] = $uid;
        $param['activity_id'] = $activityId;

        return Yohobuy::get(Yohobuy::SERVICE_URL . self::URI_GET_ALL_COUPON, $param);
    }

    /**
     * 获取活动信息
     * 
     * @param int $activityId 活动ID
     * @return array
     */
    public static function getActivityInfo($activityId)
    {
        $param = array('activity_id' => $activityId);

        return Yohobuy::get(Yohobuy::SERVICE_URL . self::URI_GET_ACTIVITY_INFO, $param, 3600); // 有缓存1小时
    }

    /**
     * 发送站内信
     * 
     * @param int $activityId 活动ID
     * @return array
     */
    public static function message($uid, $title, $content, $type = 1, $verify_key = '', $send_uid = 0, $call_back = '')
    {
        //调用接口发送站内信
        return Yohobuy::yarClient(Yohobuy::SERVICE_URL . self::URI_SEND_MESSAGE, 'setSingleMessage', array(
                $uid, $title, $content, $type, $verify_key, $send_uid, $call_back
        ));
    }

}