ebike-plus/ebike-user/src/main/java/com/cdzy/user/service/EbikeOrderService.java
2025-11-07 17:42:06 +08:00

86 lines
1.7 KiB
Java

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<EbikeOrder> {
/**
* 生成骑行订单
*
* @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<FeignEbikeDto> userRadiusList(FeignEbikeBikeRadiusVo feignEbikeBikeRadiusVo);
}