[ 'class' => LoginBehavior::className(), 'ignore' => [ 'api/coupon/search', ] ] ]); } /** * showdoc * @catalog 卡券 * @title 卡券中心 * @description 卡券中心 * @method get * @url /api/coupon/search * @param page 非必选 int 页码,不传默认为1 * @param limit 非必选 int 每页显示条数,不传默认10条 * @return {"code":0,"msg":"ok","data":[{"id":"2","title":"高尔夫球车1元体验券","price":"1.00","end_time":"1669046400","num":"10","get_num":"0","date_cn":"2022-11-22 00:00","plan":0,"status":false}],"count":"1","page_size":10,"page_count":1,"page_no":1,"end_flag":true} * @return_param id string 卡券id * @return_param title string 卡券名称 * @return_param price string 卡券金额 * @return_param date_cn string 卡券使用日期 * @return_param subhead string 副标题 * @return_param plan string 已领百分比 * @return_param status bool 是否已领取,false=未领取,true=已领取 * @return_param count string 总条数 * @return_param page_count string 总页数 * @return_param page_no string 当前页 * @return_param end_flag bool 是否加载完毕true=已完毕,false=未完毕 * @remark 注意:status=true的无法再次点击领取按钮,按钮应切换为“已领取”并置灰 */ public function actionSearch() { $form = new CouponForm(); $form->attributes = \Yii::$app->request->get(); $form->user_id = \Yii::$app->user->identity->id ? \Yii::$app->user->identity->id : 0; $data = $form->search(); return $this->responseHandler($data); } /** * showdoc * @catalog 卡券 * @title 我的卡包 * @description 我的卡包 * @method get * @url /api/coupon/user-coupon * @param page 非必选 int 页码,不传默认为1 * @param limit 非必选 int 每页显示条数,不传默认10条 * @param store_id 非必选 int 球车所属门店id,支付通道进入需要传 * @return {"code":0,"msg":"ok","data":[{"id":"49","coupon_id":"1","title":"测试体验券","price":"22.00","start_time":"1667491200","end_time":"1667923200","date_cn":"2022/11/04 - 2022/11/09","subhead":"立减22.00元"},{"id":"27","coupon_id":"1","title":"测试体验券","price":"22.00","start_time":"1667491200","end_time":"1667923200","date_cn":"2022/11/04 - 2022/11/09","subhead":"立减22.00元"},{"id":"5","coupon_id":"1","title":"测试体验券","price":"22.00","start_time":"1667491200","end_time":"1667923200","date_cn":"2022/11/04 - 2022/11/09","subhead":"立减22.00元"}],"count":"3","page_size":10,"page_count":1,"page_no":1,"end_flag":true} * @return_param id string 我的卡券id * @return_param coupon_id string 卡券id * @return_param title string 卡券名称 * @return_param price string 卡券金额 * @return_param date_cn string 卡券有效期 * @return_param subhead string 副标题 * @return_param type string 优惠券类型0=体验券1=立减券 * @return_param count string 总条数 * @return_param page_count string 总页数 * @return_param page_no string 当前页 * @return_param end_flag bool 是否加载完毕true=已完毕,false=未完毕 * @remark 注意:用户点击“去使用”需先调用“校验用户卡券是否可使用”接口,如果code为0则可使用,反正不能,并提示相关信息 */ public function actionUserCoupon() { $form = new CouponForm(); $form->scenario = 'user_coupon'; $form->attributes = \Yii::$app->request->get(); $form->user_id = \Yii::$app->user->identity->id; $data = $form->userCoupon(); return $this->responseHandler($data); } /** * showdoc * @catalog 卡券 * @title 领取卡券 * @description 领取卡券 * @method post * @url /api/coupon/get-coupon * @param coupon_id 必选 int 卡券id * @return {"code":0,"msg":"领取成功","data":[]} * @remark code=0,弹框提醒。code=1,弹框提醒,不刷新页面。code=2,弹框提醒,用户点击确认,刷新页面。code=3,弹框提醒,按钮切换为已领完,不刷新页面。code=4,跳转会员注册页面。code=5,不刷新,按钮改为已领取。data里面的返回值用于优惠券弹框使用 */ public function actionGetCoupon() { $form = new CouponForm(); $form->scenario = 'get_coupon'; $form->attributes = \Yii::$app->request->post(); $form->user_id = \Yii::$app->user->identity->id; $data = $form->getCoupon(); return $this->responseHandler($data); } /** * showdoc * @catalog 卡券 * @title 校验用户卡券是否可使用 * @description 校验用户卡券是否可使用 * @method get * @url /api/coupon/check-user-coupon * @param user_coupon_id 必选 int 我的卡券id * @return {"code":0,"msg":"领取成功","data":[]} * @remark code=0,弹框提醒,跳转租赁中心。code=1,弹框提醒。code=2,弹框提醒,用户点击确认,刷新页面 */ public function actionCheckUserCoupon() { $form = new CouponForm(); $form->scenario = 'check_user_coupon'; $form->attributes = \Yii::$app->request->get(); $form->user_id = \Yii::$app->user->identity->id; $data = $form->checkUserCoupon(); return $this->responseHandler($data); } /** * showdoc * @catalog 卡券 * @title 首页弹框查询可领取优惠券 * @description 首页弹框查询可领取优惠券 * @method get * @url /api/coupon/check-run-coupon * @return {"code":0,"msg":"ok","data":[{"id":"7","title":"新用户体验卷","price":"0.00","end_time":"1669737600","num":"-1","get_num":"0","date_cn":"2022/11/30","subhead":"2022/11/30前可用","plan":"无限","status":false}]} * @remark 注:调用该接口必须登录,如用户未登录则登录过后调用该接口。未做分页,如条数过多,可只展示几条,剩下的点击查看更多进行跳转展示 */ public function actionCheckRunCoupon() { $form = new CouponForm(); $form->scenario = 'check_run_coupon'; $form->user_id = \Yii::$app->user->identity->id; $data = $form->checkRunCoupon(); return $this->responseHandler($data); } /** * showdoc * @catalog 卡券 * @title 校验用户是否有可用优惠券 * @description 租赁球车时校验用户是否有可用优惠券 * @method get * @url /api/coupon/check-use-coupon * @param ball_number 必选 string 球车编号 * @return {"code":0,"msg":"ok","data":{"id":"12","title":"11/18测试","type":0,"price":1}} * @remark 注:data为空则无可用卡券,type=0体验券,type=1立减券 */ public function actionCheckUseCoupon() { $form = new CouponForm(); $form->scenario = 'check_use_coupon'; $form->attributes = \Yii::$app->request->get(); $form->user_id = \Yii::$app->user->identity->id; $data = $form->checkUseCoupon(); return $this->responseHandler($data); } }