You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?php
declare(strict_types=1);/** * This file is part of Hyperf. * * @link https://www.hyperf.io * @document https://doc.hyperf.io * @contact group@hyperf.io * @license https://github.com/hyperf/hyperf/blob/master/LICENSE */
namespace App\Controller\v3;
use App\Constants\v3\ErrorCode;use App\Exception\ErrorCodeException;use App\Constants\v3\OrderState;use App\Model\v3\OrderMain;use App\Request\v3\UserRequest;use Hyperf\Di\Annotation\Inject;use App\Controller\BaseController;use App\Service\v3\Interfaces\CouponRecServiceInterface;use App\Request\v3\CouponReceiveRequest;
class CouponController extends BaseController{ /** * @Inject * @var CouponRecServiceInterface */ protected $couponRecService;
/** * 获取用户可领取优惠卷接口 */ public function getSystemCouponUserList() {
}
//统计用户
public function userCouponAccount() {
}
/** * 用户领取优惠卷 */ public function userReceiveCoupon() {
}
/** * 获取用户已经领取的优惠卷列表 */ public function getUserReceiveCouponList() {
}
/** * 获取用户当前订单可用的优惠券列表 * 按分类(1订单 等优惠)分组返回 */ public function getListByUser(UserRequest $request) { $userId = $this->request->input('user_id'); $page = $this->request->input('page'); $pagesize = $this->request->input('pagesize'); $type = $this->request->input('type','1'); /** * $type unused 未使用 used 已使用 expired已失效 */
$res['coupon_list'] = $this->couponRecService->getListByUser($userId,$type,$page,$pagesize); $res['statistics'] = $this->couponRecService->statistics($userId);
return $this->success($res); }
public function getAvailableListByNewUser() { $userId = $this->request->input("user_id", 0); $receiveType = $this->request->input("receive_type", 0); $newUserCheck = OrderMain::query() ->where('user_id',$userId) ->whereIn('state',OrderState::CAN_DEL) ->whereIn('state',OrderState::REFUND) ->exists(); if($newUserCheck){ return $this->success( [ 'status' => 'error', 'message' => '不是新用户无法领券', 'text'=>'关注懒族菜市微信公众号,更多精彩活动一手掌握!' ] ); } $res = $this->couponRecService->getAvailableList($userId,$receiveType); return $this->success($res); }
/** * 用户领取优惠卷 */ public function Receive(CouponReceiveRequest $request) { $userId = $this->request->input("user_id", 0); $receiveType = $this->request->input("receive_type", 0); $ids = $this->request->input("ids", ''); $res = $this->couponRecService->receive($userId,$receiveType,$ids); if(!empty($res['success'])){ return $this->success([ 'status' => 'ok', 'message' => '红包领取成功,请到“我的-红包”中查看'] ); }else{ throw new ErrorCodeException(ErrorCode::COUPON_RECEIVE_FAILURE); } }}
|