package com.ruoyi.account.api.feignClient; import com.ruoyi.account.api.factory.UserCouponClientFallbackFactory; import com.ruoyi.account.api.vo.CouponInfoVo; import com.ruoyi.account.api.vo.PaymentUserCoupon; import com.ruoyi.account.api.vo.PaymentUserCouponVo; import com.ruoyi.common.core.constant.ServiceNameConstants; import com.ruoyi.common.core.domain.R; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import java.util.List; /** * @author zhibing.pu * @Date 2024/11/29 14:22 */ @FeignClient(contextId = "UserCouponClient", value = ServiceNameConstants.ACCOUNT_SERVICE, fallbackFactory = UserCouponClientFallbackFactory.class) public interface UserCouponClient { /** * 根据id获取优惠券数据 * @param paymentUserCoupon * @return */ @PostMapping("/user-coupon/getPaymentUserCoupon") R> getPaymentUserCoupon(@RequestBody PaymentUserCoupon paymentUserCoupon); /** * 根据用户优惠券id获取优惠券详情 * @param userCouponId * @return */ @PostMapping("/user-coupon/getCouponInfo") R getCouponInfo(@RequestParam("userCouponId") Long userCouponId); @GetMapping("/user-coupon/getCouponCount") R getCouponCount(@RequestParam("couponId") Integer couponId); }