package com.xiaopeng.api.feignClient.account;
|
|
import com.xiaopeng.api.dto.account.GetUserCouponDto;
|
import com.xiaopeng.api.dto.account.UseUserCouponDto;
|
import com.xiaopeng.api.factory.account.XpAppUserCouponClientFallbackFactory;
|
import com.xiaopeng.api.model.account.XpAppUserCoupon;
|
import com.xiaopeng.api.vo.account.AppUserCouponSaveBatchVo;
|
import com.xiaopeng.api.vo.account.CalculateDiscountAmountVo;
|
import com.xiaopeng.api.vo.account.UserCouponVo;
|
import com.xiaopeng.common.core.domain.R;
|
import com.xiaopeng.common.core.dto.ServiceNameConstantsEnum;
|
import io.swagger.annotations.ApiOperation;
|
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.math.BigDecimal;
|
import java.util.List;
|
|
/**
|
* 小程序用户Feign客户端
|
*
|
* @author mitao
|
*/
|
@FeignClient(contextId = "XpAppUserCouponClient",
|
value = ServiceNameConstantsEnum.XP_ACCOUNT_SERVICE,
|
fallbackFactory = XpAppUserCouponClientFallbackFactory.class)
|
public interface XpAppUserCouponClient {
|
|
|
@PostMapping("/logan/inner/appUserCoupon/getUserCoupon")
|
R<UserCouponVo> getUserCoupon(@RequestBody GetUserCouponDto dto);
|
|
@PostMapping("/logan/inner/appUserCoupon/useUserCoupon")
|
R<BigDecimal> useUserCoupon(@RequestBody UseUserCouponDto dto);
|
|
|
/**
|
* 退回用户的优惠卷
|
*
|
* @param dto
|
* @return
|
*/
|
@PostMapping("/logan/inner/appUserCoupon/backUserCoupon")
|
R<BigDecimal> backUserCoupon(@RequestBody UseUserCouponDto dto);
|
|
|
@GetMapping("/logan/inner/appUserCoupon/holding")
|
boolean isHolding(Long id);
|
|
|
/**
|
* userIds 、couponId、activityId、activityName、activityStartTime、activityEndTime、activityRemarks
|
*
|
* @param dto
|
* @return
|
*/
|
@PostMapping("/api/v1/appUserCoupon/saveInfo_activity")
|
@ApiOperation(value = "活动发放优惠券", tags = {"管理后台-活动发放优惠券"})
|
R<String> saveInfo_activity(@RequestBody UseUserCouponDto dto);
|
|
|
/**
|
* 获取用户活动领取的优惠券
|
*
|
* @return
|
*/
|
@PostMapping("/logan/inner/appUserCoupon/getXpAppUserCoupon")
|
R<List<XpAppUserCoupon>> getXpAppUserCoupon(@RequestParam Long activityId);
|
|
|
/**
|
* 计算优惠金额
|
*
|
* @param vo
|
* @return
|
*/
|
@PostMapping("/logan/inner/appUserCoupon/calculateDiscountAmount")
|
R<BigDecimal> calculateDiscountAmount(@RequestBody CalculateDiscountAmountVo vo);
|
|
|
/**
|
* 批量保存数据
|
* @param vo
|
* @return
|
*/
|
@PostMapping("/logan/inner/appUserCoupon/saveBatch")
|
R<?> saveBatch(@RequestBody AppUserCouponSaveBatchVo vo);
|
}
|