<?php 
/**
 * @api {get} wonderful/passport/?l=applet.login 用户登录
 * @apiVersion 2.0.0
 * @apiName applet.login
 * @apiGroup AppletPassportV1
 *
 * @apiDescription 用户登录
 *
 * @apiParam {String} code 微信登录返回的code
 * @apiParam {String} nickname 用户昵称
 * @apiParam {String} avatarurl 用户头像
 * @apiParam {String} gender 性别
 * @apiParam {String} city 城市
 * @apiParam {String} province 省份
 * @apiParam {String} country 县区
 * @apiParam {String} iv 微信的加密参数
 * @apiParam {String} encryptedData 微信的加密参数
 *
 * @apiSuccess {Number}   vid  微信id,请保存在本地
 * @apiSuccess {Number}   uid  用户id,请保存在本地
 * @apiSuccess {String}   signature 用于登录后的uid验证,每次都要传入,请登录后将这个值保存在本地
 */

/**
 * @api {get} wonderful/main/?l=journal_v1.getList 小程序小刊列表
 * @apiVersion 2.0.0
 * @apiName journal.getList
 * @apiGroup JournalV1
 *
 * @apiDescription 小刊列表,按照分类读取,根据获取的信息,可以直接进入到小刊详情页,无需再次请求接口。
 *
 * @apiParam {String} signature signature
 * @apiParam {String} system 分类id,默认为1,传入-1就是获取全部
 *
 * @apiSuccess {Object[]} journal 小刊数据列表
 * @apiSuccess {String}   journal.id 小刊id
 * @apiSuccess {String}   journal.name 名称
 * @apiSuccess {String}   journal.subname 期号
 * @apiSuccess {String}   journal.pic_cover 列表封面图片 暂时无效
 * @apiSuccess {String}   journal.pic_view_cover 小刊封面图片 封面图都用这个
 * @apiSuccess {String}   journal.pic_view_bg 全屏背景图,多张图片,这是一个数组
 * @apiSuccess {String}   journal.pic_gd 小刊推广图
 * @apiSuccess {String}   journal.pdate 时间
 * @apiSuccess {String}   journal.num_ding 订阅数
 * @apiSuccess {String}   journal.buy 小刊是否收费 1收费 2免费 3会员
 * @apiSuccess {String}   journal.h5 h5地址
 * @apiSuccess {String}   journal.buy_type 购买类型,1是普通支付,2是按照明星支付
 * @apiSuccess {String}   journal.bgmusic 小刊背景音乐
 * @apiSuccess {Object[]}   journal.button 按钮判断 如果不需要这个,可以不用
 * @apiSuccess {Object[]}   journal.button.read 第一个按钮 阅读按钮
 * @apiSuccess {String}   journal.button.read.status 状态 -1不显示 1为进入阅读 2为兑换 3为预售,注意,当值为2时,必须在阅读按钮上,当用户点击按钮时,绑定一个事件,该事件的接口为journal_v1.subscribe
 * @apiSuccess {String}   journal.button.read.name 按钮上的名字
 * @apiSuccess {Object[]}   journal.button.buy 第二个按钮 购买按钮
 * @apiSuccess {String}   journal.button.buy.status 状态 -1不显示 1为购买
 * @apiSuccess {String}   journal.button.buy.name 按钮上的名字
 * @apiSuccess {Object[]}   journal.button.share 第三个按钮 排行榜按钮
 * @apiSuccess {String}   journal.button.share.status 状态 -1不显示 1为排行榜
 * @apiSuccess {String}   journal.button.share.name 按钮上的名字
 *
 * @apiSuccess {Object[]} push 主推小刊
 * @apiSuccess {String}   push.id 小刊id
 * @apiSuccess {String}   push.name 名称
 * @apiSuccess {String}   push.num_ding 订阅数

 * @apiSuccess {Object[]} cate 当前分类
 * @apiSuccess {String}   cate.id 分类id
 * @apiSuccess {String}   cate.name 名称
 */

/**
 * @api {get} wonderful/main/?l=journal_v1.getAppList APP小刊列表
 * @apiVersion 2.0.0
 * @apiName journal.getAppList
 * @apiGroup JournalV1
 *
 * @apiDescription 小刊列表,按照分类读取,根据获取的信息,可以直接进入到小刊详情页,无需再次请求接口。
 *
 * @apiParam {String} signature signature
 * @apiParam {String} system 分类id,默认为1,传入-1就是获取全部
 *
 * @apiSuccess {Object[]} journal 小刊数据列表
 * @apiSuccess {String}   journal.id 小刊id
 * @apiSuccess {String}   journal.name 名称
 * @apiSuccess {String}   journal.subname 期号
 * @apiSuccess {String}   journal.pic_cover 列表封面图片 暂时无效
 * @apiSuccess {String}   journal.pic_view_cover 小刊封面图片 封面图都用这个
 * @apiSuccess {String}   journal.pic_view_bg 全屏背景图,多张图片,这是一个数组
 * @apiSuccess {String}   journal.pic_gd 小刊推广图
 * @apiSuccess {String}   journal.pdate 时间
 * @apiSuccess {String}   journal.num_ding 订阅数
 * @apiSuccess {String}   journal.buy 小刊是否收费 1收费 2免费 3会员
 * @apiSuccess {String}   journal.bgmusic 小刊背景音乐
 * @apiSuccess {Object[]}   journal.button 按钮判断 如果不需要这个,可以不用
 * @apiSuccess {Object[]}   journal.button.read 第一个按钮 阅读按钮
 * @apiSuccess {String}   journal.button.read.status 状态 -1不显示 1为进入阅读 2为兑换 3为预售,注意,当值为2时,必须在阅读按钮上,当用户点击按钮时,绑定一个事件,该事件的接口为journal_v1.subscribe
 * @apiSuccess {String}   journal.button.read.name 按钮上的名字
 * @apiSuccess {Object[]}   journal.button.buy 第二个按钮 购买按钮
 * @apiSuccess {String}   journal.button.buy.status 状态 -1不显示 1为购买
 * @apiSuccess {String}   journal.button.buy.name 按钮上的名字
 * @apiSuccess {Object[]}   journal.button.share 第三个按钮 排行榜按钮
 * @apiSuccess {String}   journal.button.share.status 状态 -1不显示 1为排行榜
 * @apiSuccess {String}   journal.button.share.name 按钮上的名字
 *
 * @apiSuccess {Object[]} push 主推小刊
 * @apiSuccess {String}   push.id 小刊id
 * @apiSuccess {String}   push.name 名称
 * @apiSuccess {String}   push.num_ding 订阅数

 * @apiSuccess {Object[]} cate 当前分类
 * @apiSuccess {String}   cate.id 分类id
 * @apiSuccess {String}   cate.name 名称

 * @apiSuccess {Object[]} cateList 分类列表
 * @apiSuccess {String}   cateList.id 分类id
 * @apiSuccess {String}   cateList.name 名称
 */

/**
 * @api {get} wonderful/act/?l=order.getMyList 我的订单列表
 * @apiVersion 2.0.0
 * @apiName order.getMyList
 * @apiGroup UserActionV1
 *
 * @apiDescription 我的订单列表
 *
 * @apiParam {String} signature signature
 * @apiParam {String} system 分类id
 *
 * @apiSuccess {Object[]} order 订单信息
 * @apiSuccess {String}   order.name 名称
 * @apiSuccess {String}   order.order_id 订单id
 * @apiSuccess {String}   order.buy_num 购买本数
 * @apiSuccess {String}   order.cdate 购买时间
 */

/**
 * @api {get} wonderful/act/?l=order.getMyCodeList 我的兑换码列表
 * @apiVersion 2.0.0
 * @apiName order.getMyCodeList
 * @apiGroup UserActionV1
 *
 * @apiDescription 我的兑换码列表
 *
 * @apiParam {String} signature signature
 * @apiParam {String} order_id 订单id
 *
 * @apiSuccess {Object[]} code 兑换码列表
 * @apiSuccess {String}   code.code 兑换码
 * @apiSuccess {String}   code.type 类型 1为未使用 3为已使用 4为已作废
 */

/**
 * @api {get} wonderful/main/?l=journal_v1.read 电子刊阅读页
 * @apiVersion 1.0.0
 * @apiName journal_v1.read
 * @apiGroup JournalV1
 *
 * @apiDescription 电子刊阅读页
 *
 * @apiParam {String} signature signature
 * @apiParam {Number} id 电子刊id
 *
 * @apiSuccess {Object[]} content 内容数据列表,每页显示10条,请在翻到第7或者第8条时,请求第2页
 * @apiSuccess {String}   content.id 内容id
 * @apiSuccess {String}   content.type 内容类型1全屏图、2长图、3图文内容、11关联图文、12关联视频、13关联直播、4全屏视频、5留言视频、6留言音频|||新增:7长屏图、8横屏图、9无边框图片、10四宫格图片、21对话模板、31试用产品、32是h5的url地址(独立h5)
 * @apiSuccess {String}   content.name 标题。type=5,6时有效
 * @apiSuccess {String}   content.cover 音频或者视频的封面图,type=4,5,6时有效
 * @apiSuccess {String}   content.video 视频地址。type=4,5时有效
 * @apiSuccess {String}   content.music 音频地址。type=6时有效
 * @apiSuccess {String}   content.pic 全屏图或者长图,type=1,2,7,8,9时有效
 * @apiSuccess {String}   content.pic_info 全屏图或者长图的图片信息,type=1,2,7,8,9时有效,值如1024_768_548.12_35,请用_分隔成数组使用,1024为宽度,768为高度,548.12为图片大小,35为图片id
 * @apiSuccess {String}   content.is_button 全屏图上的保存按钮,1显示2不显示,type=1时有效
 * @apiSuccess {String}   content.button_name 全屏图上的保存按钮的文字,type=1时有效
 * @apiSuccess {String}   content.button_color 全屏图上的保存按钮的文字颜色,type=1时有效
 * @apiSuccess {String}   content.note 是否预约提醒1为已预约,2为未预约
 * @apiSuccess {Object[]}   content.text 全屏图上的九个文字位置,type=1时有效
 * @apiSuccess {String}   content.text.text 文字位置,1上左2上中3上右4中左5正中6中右7下左8下中9下右
 * @apiSuccess {String}   content.text.name 文字内容 换行用\n隔开
 * @apiSuccess {String}   content.text.color 文字颜色
 * @apiSuccess {String}   content.text.bgcolor 文字背景颜色
 * @apiSuccess {String}   content.text.bgcolor_type 是否设置文字背景颜色,1设置,2不设置,不设置则文字背景颜色为透明。
 * @apiSuccess {String}   content.text.size 文字像素大小
 * @apiSuccess {Object[]}   content.info type=3,11,12,13时有效,当等于11,12,13时,分别对应图文详情、视频详情、直播详情里的字段,等于3时,请查看以下字段
 * @apiSuccess {String}   content.info.name 标题
 * @apiSuccess {String}   content.info.focus 焦点图
 * @apiSuccess {String}   content.info.content 内容
 * @apiSuccess {String}   content.info.content_array 数组内容
 * @apiSuccess {Object[]}   content.info.author 作者

  * @apiSuccess {Object[]}   content.product type=31时有效
 * @apiSuccess {String}   content.product.name 产品标题
 * @apiSuccess {String}   content.product.pic 产品图片
 * @apiSuccess {String}   content.product.content 内容
 * @apiSuccess {String}   content.product.cate 产品分类信息
 * @apiSuccess {Object[]}   content.product.price 产品价格

 * @apiSuccess {Object[]}   content.palaces 四宫格图片的四个图片,type=10时有效
 * @apiSuccess {String}   content.palaces.palaces 图片位置,1上左2上右3下左4下右
 * @apiSuccess {String}   content.palaces.pic 图片

 * @apiSuccess {String}   content.talk_pic 对话模板的置顶图片,为空则不显示,type=21时有效
 * @apiSuccess {Object[]}   content.talk 对话模板里的对话内容,type=21时有效
 * @apiSuccess {String}   content.talk.talk_location 对话位置,1左2右
 * @apiSuccess {String}   content.talk.talk_type 对话类型,1文字,2图片,3音频
 * @apiSuccess {String}   content.talk.avatar 头像
 * @apiSuccess {String}   content.talk.text 文字
 * @apiSuccess {String}   content.talk.pic 图片
 * @apiSuccess {String}   content.talk.audio 音频
 */

/**
 * @api {get} wonderful/main/?l=journal_v1.view 小刊详情页[废弃]
 * @apiVersion 2.0.0
 * @apiName journal.view
 * @apiGroup JournalV1
 *
 * @apiDescription 小刊详情页[废弃,请从journal_v1.getList或者journal_v1.getAppList中获取这些信息]
 *
 * @apiParam {String} signature signature
 * @apiParam {Number} id 小刊id
 *
 * @apiSuccess {Object[]} info 小刊详情
 * @apiSuccess {String}   info.id 小刊id
 * @apiSuccess {String}   info.name 名称
 * @apiSuccess {String}   journal.subname 期号
 * @apiSuccess {String}   info.pic_cover 列表封面图片 暂时无效
 * @apiSuccess {String}   info.pic_view_cover 小刊封面图片 封面图都用这个
 * @apiSuccess {String}   info.pic_view_bg 全屏背景图,多张图片,这是一个数组
 * @apiSuccess {String}   info.pic_gd 小刊推广图
 * @apiSuccess {String}   info.pdate 时间
 * @apiSuccess {String}   info.ydate 预售时间
 * @apiSuccess {String}   info.ytype 预售状态,1为可以阅读2显示预售弹窗,如果用button就不用判断该字段了
 * @apiSuccess {String}   info.num_ding 订阅数
 * @apiSuccess {String}   info.buy 小刊是否收费 1收费 2不收费
 * @apiSuccess {String}   info.subscribe 是否订阅,1为已订阅2为未订阅
 * @apiSuccess {String}   info.active 是否有活动,1为有2为没有,有则显示排行榜按钮

 * @apiSuccess {Object[]}   button 按钮判断 如果不需要这个,可以不用
 * @apiSuccess {Object[]}   button.read 第一个按钮 阅读按钮
 * @apiSuccess {String}   button.read.status 状态 -1不显示 1为进入阅读 2为兑换 3为预售
 * @apiSuccess {String}   button.read.name 按钮上的名字
 * @apiSuccess {Object[]}   button.buy 第二个按钮 购买按钮
 * @apiSuccess {String}   button.buy.status 状态 -1不显示 1为购买
 * @apiSuccess {String}   button.buy.name 按钮上的名字
 * @apiSuccess {Object[]}   button.share 第三个按钮 排行榜按钮
 * @apiSuccess {String}   button.share.status 状态 -1不显示 1为排行榜
 * @apiSuccess {String}   button.share.name 按钮上的名字
 */

/**
 * @api {get} wonderful/main/?l=journal_v1.getView 小刊详情页
 * @apiVersion 2.0.0
 * @apiName journal.getView
 * @apiGroup JournalV1
 *
 * @apiDescription 小刊详情页,如果是分享进来的,请求这个接口来获取按钮
 *
 * @apiParam {String} signature signature
 * @apiParam {Number} id 小刊id
 *
 * @apiSuccess {Object[]} info 小刊详情
 * @apiSuccess {String}   info.id 小刊id
 * @apiSuccess {String}   info.name 名称
 * @apiSuccess {String}   journal.subname 期号
 * @apiSuccess {String}   info.pic_cover 列表封面图片 暂时无效
 * @apiSuccess {String}   info.pic_view_cover 小刊封面图片 封面图都用这个
 * @apiSuccess {String}   info.pic_view_bg 全屏背景图,多张图片,这是一个数组
 * @apiSuccess {String}   info.pic_gd 小刊推广图
 * @apiSuccess {String}   info.pdate 时间
 * @apiSuccess {String}   info.ydate 预售时间
 * @apiSuccess {String}   info.ytype 预售状态,1为可以阅读2显示预售弹窗,如果用button就不用判断该字段了
 * @apiSuccess {String}   info.num_ding 订阅数
 * @apiSuccess {String}   info.buy 小刊是否收费 1收费 2不收费
 * @apiSuccess {String}   info.buy_type 电子刊支付类型,1为普通支付,2为明星支付(读取明星列表)
 * @apiSuccess {String}   info.subscribe 是否订阅,1为已订阅2为未订阅
 * @apiSuccess {String}   info.active 是否有活动,1为有2为没有,有则显示排行榜按钮

 * @apiSuccess {Object[]}   button 按钮判断 如果不需要这个,可以不用
 * @apiSuccess {Object[]}   button.read 第一个按钮 阅读按钮
 * @apiSuccess {String}   button.read.status 状态 -1不显示 1为进入阅读 2为兑换 3为预售,注意,当值为2时,必须在阅读按钮上,当用户点击按钮时,绑定一个事件,该事件的接口为journal_v1.subscribe
 * @apiSuccess {String}   button.read.name 按钮上的名字
 * @apiSuccess {Object[]}   button.buy 第二个按钮 购买按钮
 * @apiSuccess {String}   button.buy.status 状态 -1不显示 1为购买
 * @apiSuccess {String}   button.buy.name 按钮上的名字
 * @apiSuccess {Object[]}   button.share 第三个按钮 排行榜按钮
 * @apiSuccess {String}   button.share.status 状态 -1不显示 1为排行榜
 * @apiSuccess {String}   button.share.name 按钮上的名字
 */

/**
 * @api {get} wonderful/main/?l=journal_v1.getAppView APP小刊详情页
 * @apiVersion 2.0.0
 * @apiName journal.getAppView
 * @apiGroup JournalV1
 *
 * @apiDescription APP小刊详情页,如果是分享进来的,请求这个接口来获取按钮
 *
 * @apiParam {String} signature signature
 * @apiParam {Number} id 小刊id
 *
 * @apiSuccess {Object[]} info 小刊详情
 * @apiSuccess {String}   info.id 小刊id
 * @apiSuccess {String}   info.name 名称
 * @apiSuccess {String}   journal.subname 期号
 * @apiSuccess {String}   info.pic_cover 列表封面图片 暂时无效
 * @apiSuccess {String}   info.pic_view_cover 小刊封面图片 封面图都用这个
 * @apiSuccess {String}   info.pic_view_bg 全屏背景图,多张图片,这是一个数组
 * @apiSuccess {String}   info.pic_gd 小刊推广图
 * @apiSuccess {String}   info.pdate 时间
 * @apiSuccess {String}   info.ydate 预售时间
 * @apiSuccess {String}   info.ytype 预售状态,1为可以阅读2显示预售弹窗,如果用button就不用判断该字段了
 * @apiSuccess {String}   info.num_ding 订阅数
 * @apiSuccess {String}   info.buy 小刊是否收费 1收费 2不收费
 * @apiSuccess {String}   info.subscribe 是否订阅,1为已订阅2为未订阅
 * @apiSuccess {String}   info.active 是否有活动,1为有2为没有,有则显示排行榜按钮

 * @apiSuccess {Object[]}   button 按钮判断 如果不需要这个,可以不用
 * @apiSuccess {Object[]}   button.read 第一个按钮 阅读按钮
 * @apiSuccess {String}   button.read.status 状态 -1不显示 1为进入阅读 2为兑换 3为预售,注意,当值为2时,必须在阅读按钮上,当用户点击按钮时,绑定一个事件,该事件的接口为journal_v1.subscribe
 * @apiSuccess {String}   button.read.name 按钮上的名字
 * @apiSuccess {Object[]}   button.buy 第二个按钮 购买按钮
 * @apiSuccess {String}   button.buy.status 状态 -1不显示 1为购买
 * @apiSuccess {String}   button.buy.name 按钮上的名字
 * @apiSuccess {Object[]}   button.share 第三个按钮 排行榜按钮
 * @apiSuccess {String}   button.share.status 状态 -1不显示 1为排行榜
 * @apiSuccess {String}   button.share.name 按钮上的名字
 */

/**
 * @api {get} wonderful/main/?l=journal_v1.subscribe 检测小刊是否可以阅读
 * @apiVersion 2.0.0
 * @apiName journal.subscribe
 * @apiGroup JournalV1
 *
 * @apiDescription 检测小刊是否可以阅读
 *
 * @apiParam {String} signature signature
 * @apiParam {Number} id 小刊id
 *
 * @apiSuccess {String}   subscribe 1为已订阅可以阅读,2为未订阅不能阅读,弹出兑换码
 */

/**
 * @api {get} wonderful/main/?l=journal_v1.buy 小刊购买页
 * @apiVersion 2.0.0
 * @apiName journal.buy
 * @apiGroup JournalV1
 *
 * @apiDescription 小刊购买页
 *
 * @apiParam {String} signature signature
 * @apiParam {Number} id 小刊id
 *
 * @apiSuccess {Object[]} info 小刊详情
 * @apiSuccess {String}   info.id 小刊id
 * @apiSuccess {String}   info.name 名称
 *
 * @apiSuccess {String} buy_desc 购买说明
 * @apiSuccess {Object[]}   buy_list 购买列表
 * @apiSuccess {String}   buy_list.id 购买id 支付时使用
 * @apiSuccess {String}   buy_list.name 名称
 * @apiSuccess {String}   buy_list.price 标价
 * @apiSuccess {String}   buy_list.cash 实际支付价格
 */

/**
 * @api {get} wonderful/main/?l=journal_v1.star 电子刊明星列表页
 * @apiVersion 1.0.0
 * @apiName journal_v1.star
 * @apiGroup Journal
 *
 * @apiDescription 电子刊明星列表页,当buy_type==2时读取本接口
 *
 * @apiParam {String} signature signature
 * @apiParam {Number} id 电子刊id
 *
 * @apiSuccess {Object[]} info 电子刊详情
 * @apiSuccess {String}   info.id 电子刊id
 * @apiSuccess {String}   info.name 名称
 * @apiSuccess {Object[]}   star 明星列表
 * @apiSuccess {String}   star.id 明星id 支付时使用
 * @apiSuccess {String}   star.name 明星名称
 * @apiSuccess {String}   star.avatar 明星头像
 * @apiSuccess {String}   star.num_ding 明星订阅数
 */

/**
 * @api {get} wonderful/act/?l=order.pay 发起支付
 * @apiVersion 2.0.0
 * @apiName order.pay
 * @apiGroup UserActionV1
 *
 * @apiDescription 发起支付:请注意,如果是苹果支付,请在发起苹果支付之后,将苹果返回的验证数据,传入该接口
 *
 * @apiParam {String} signature signature
 * @apiParam {String} journal_id 小刊id
 * @apiParam {String} buy_id 购买本数id
 * @apiParam {String} star_id 明星id
 * @apiParam {String} receipt 当header中的source_type为ios时,请传入该参数,参数的值为苹果支付后返回的参数,即可发起支付验证。
*
 * @apiSuccess {Object[]} pay 微信支付返回的数据
 * @apiSuccess {String}   pay.time 服务器时间戳
 * @apiSuccess {String}   pay.nonce_str 随机字符串
 * @apiSuccess {String}   pay.prepay_id 统一下单接口返回的 prepay_id 参数值,通过'prepay_id=' + prepay_id 拼装成package
 * @apiSuccess {String}   pay.sign_type 签名算法
 * @apiSuccess {String}   pay.sign 签名
 * @apiSuccess {String}   pay.yes 苹果支付时显示改参数,1为支付成功2为支付失败
 * @apiSuccess {String}   pay.order_id 支付的订单id
 */

/**
 * @api {get} wonderful/act/?l=order.code 兑换码兑换
 * @apiVersion 2.0.0
 * @apiName order.code
 * @apiGroup UserActionV1

 * @apiDescription 兑换码兑换
 *
 * @apiParam {String} signature signature
 * @apiParam {String} journal_id 小刊id
 * @apiParam {String} code 兑换码
 *
 * @apiSuccess {String}   ok 兑换成功
 */

/**
 * @api {get} wonderful/main/?l=journal_v1.top 小刊本数排行榜
 * @apiVersion 2.0.0
 * @apiName journal.top
 * @apiGroup JournalV1
 *
 * @apiDescription 小刊本数排行榜
 *
 * @apiParam {String} signature signature
 * @apiParam {Number} id 小刊id
 *
 * @apiSuccess {Object[]} info 小刊详情
 * @apiSuccess {String}   info.id 小刊id
 * @apiSuccess {String}   info.name 名称
 *
 * @apiSuccess {Object[]}   top 本数排行
 * @apiSuccess {String}   top.uid 用户id
 * @apiSuccess {String}   top.num 本数
 * @apiSuccess {String}   top.username 用户名
 * @apiSuccess {String}   top.avatar 头像
  *
 * @apiSuccess {Object[]}   active 活动说明表
 * @apiSuccess {String}   active.name 名称
 * @apiSuccess {String}   active.status 活动状态 1活动进行中 2活动已结束
 * @apiSuccess {String}   active.desc 描述
 * @apiSuccess {String}   active.invite_title 邀请好友标题
 * @apiSuccess {String}   active.invite_desc 邀请好友描述 换行用\n隔开
 * @apiSuccess {String}   active.content 活动说明,富文本
 */

/**
 * @api {get} package/log/?api.push 日志记录
 * @apiVersion 1.0.0
 * @apiName api.push
 * @apiGroup Log
 *
 * @apiDescription 日志记录
 *
 * @apiParam {String} project 项目,目前有两个值:ad_show为广告曝光,就是打开页面时需要访问本接口,ad_click为广告点击,点击某个广告时需要访问本接口
 * @apiParam {String} source 来源,暂时写死:jingmei
 * @apiParam {String} system 系统,1是h5,2是安卓,3是苹果,4是微信小程序
 * @apiParam {String} uid 用户id,如果未登录需要传入-1
 * @apiParam {String} ip 用户ip,如果未登录,会通过ip识别用户
 * @apiParam {String} ua ua信息
 * @apiParam {String} os 操作系统
 * @apiParam {String} browser 浏览器
 * @apiParam {String} ck_mobile 是否手机,请写死为1
 * @apiParam {String} ck_wechat 是否微信,请写死为2,如果是小程序或者h5,请根据实际情况来写值,1就是微信,2不是
 * @apiParam {String} ad_page_id 广告页面id
 * @apiParam {String} ad_info_id 广告位id
 * @apiParam {String} ad_data_id 广告投放id
 */