package com.dsh.activity.controller; import com.dsh.activity.entity.Coupon; import com.dsh.activity.model.CouponListVo; import com.dsh.activity.model.request.CouponPackageReq; import com.dsh.activity.model.response.CouponPackageResp; import com.dsh.activity.service.ICouponService; import com.dsh.activity.service.UserCouponService; import com.dsh.activity.util.ResultUtil; import com.dsh.activity.util.TokenUtil; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; /** * @author zhibing.pu * @date 2023/6/24 11:27 */ @RestController @RequestMapping("") public class CouponController { @Autowired private ICouponService couponService; @Autowired private TokenUtil tokenUtil; @Autowired private UserCouponService ucService; @ResponseBody @PostMapping("/api/coupon/queryCouponList") @ApiOperation(value = "获取优惠券列表", tags = {"APP-成为会员", ""}) @ApiImplicitParams({ @ApiImplicitParam(value = "1=积分购买,2=注册赠送", name = "distributionMethod", dataType = "int", required = true), @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) public ResultUtil> queryCouponList(Integer distributionMethod){ if(null == distributionMethod){ return ResultUtil.paranErr("distributionMethod"); } try { Integer uid = tokenUtil.getUserIdFormRedis(); if(null == uid){ return ResultUtil.tokenErr(); } List listVos = couponService.queryCouponList(uid, distributionMethod); return ResultUtil.success(listVos); }catch (Exception e){ e.printStackTrace(); return ResultUtil.success(); } } /** * 根据id获取优惠券信息 * @param id * @return */ @ResponseBody @PostMapping("/coupon/queryCouponById") public Coupon queryCouponById(@RequestBody Integer id){ try { Coupon coupon = couponService.getById(id); return coupon; }catch (Exception e){ e.printStackTrace(); return null; } } /** * 我的券包列表 * @param req * @return */ @ResponseBody @PostMapping("/api/coupon/queryCouponPackage") @ApiOperation(value = "我的券包列表", tags = {"APP-使用福利"}) @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) public ResultUtil> queryAppuserCouponList( CouponPackageReq req){ try { Integer uid = tokenUtil.getUserIdFormRedis(); if(null == uid){ return ResultUtil.tokenErr(); } return ResultUtil.success(ucService.queryCouponPackagesList(uid, req)); }catch (Exception e){ e.printStackTrace(); return ResultUtil.success(); } } }