package com.xiaopeng.api.feignClient.order; import com.xiaopeng.api.dto.order.GetOrderNumDto; import com.xiaopeng.api.dto.statistics.OrderStatisticsDTO; import com.xiaopeng.api.dto.statistics.StatisticsQueryDTO; import com.xiaopeng.api.factory.order.XpOrderClientFallbackFactory; import com.xiaopeng.api.model.order.XpOrder; import com.xiaopeng.common.core.domain.R; import com.xiaopeng.common.core.dto.ServiceNameConstantsEnum; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; /** * 订单Feign客户端 * * @author mitao */ @FeignClient(contextId = "XpOrderClient", value = ServiceNameConstantsEnum.XP_ORDER_SERVICE, fallbackFactory = XpOrderClientFallbackFactory.class) public interface XpOrderClient { /** * 获取订单统计数据 * * @param query 查询参数 * @return 订单统计数据 */ @PostMapping("/inner/order/statistics") R getOrderStatistics(@RequestBody StatisticsQueryDTO query); /** * 查询是否有未支付订单 或 正在进行的订单 */ @PostMapping("/inner/order/has-unpaid-order") R hasUnPaodOrder(String uid); /** * 通过订单id查询订单信息 * * @param orderId 订单id * @return 订单详情 */ @PostMapping("/inner/order/queryOrderById") R queryOrderById(@RequestParam Long orderId); /** * 添加订单 * * @param xpOrder 订单信息 */ @PostMapping("/inner/order/addOrder") R addOrder(@RequestBody XpOrder xpOrder); /** * 取消订单 * * @param orderId 订单id */ @PostMapping("/inner/order/cancelOrder") R cancelOrder(String orderId); /** * 通过订单编号查询订单信息 * * @param orderNo 订单编号 * @return 订单详情 */ @PostMapping("/inner/order/queryOrderByOrderNo") R queryOrderByOrderNo(@RequestParam String orderNo); /** * 获取订单数量 * * @param * @return 订单数量 */ @PostMapping("/inner/order/getOrderNum") R getOrderNum(@RequestBody GetOrderNumDto dto); }