package com.cdzy.user.service; import com.cdzy.user.model.dto.EbikeUserCyclingDto; import com.cdzy.user.model.entity.EbikeOrder; import com.ebike.feign.model.dto.FeignEbikeDto; import com.ebike.feign.model.dto.FeignOrderPaymentDto; import com.ebike.feign.model.vo.FeignEbikeBikeRadiusVo; import com.mybatisflex.core.service.IService; import java.util.List; /** * 用户订单 服务层 * * @author: yanglei * @since: 2025-10-15 17:06 */ public interface EbikeOrderService extends IService { /** * 生成骑行订单 * * @param orderDto 用户骑行信息 * @return 骑行订单 */ Long saveRide(EbikeUserCyclingDto orderDto); /** * 检查历史订单 * * @param userId 用户id */ EbikeOrder checkHistoryOrder(Long userId); /** * 订单支付 * * @param orderPaymentDto 订单支付信息 */ void payment(FeignOrderPaymentDto orderPaymentDto); /** * 订单发起退款 * * @param orderId 订单ID */ void refundApply(Long orderId); /** * 订单退款 * * @param orderId 订单ID */ void refund(Long orderId); /** * 订单退款完成 * * @param orderId 订单ID */ void doneRefund(Long orderId); /** * 订单退款失败 * * @param orderId 订单ID */ void failRefund(Long orderId); /** * 订单退款驳回 * * @param orderId 订单ID */ void rejectRefund(Long orderId); /** * 获取半径内车辆信息 * * @param feignEbikeBikeRadiusVo 半径内查询参数 * @return 所有车辆信息 */ List userRadiusList(FeignEbikeBikeRadiusVo feignEbikeBikeRadiusVo); }