车辆列表获取

This commit is contained in:
yanglei 2025-11-07 17:41:57 +08:00
parent 9756a94315
commit 314b0a1338
3 changed files with 51 additions and 0 deletions

View File

@ -5,7 +5,10 @@ import com.cdzy.common.model.response.JsonResult;
import com.cdzy.user.model.dto.EbikeUserCyclingDto;
import com.cdzy.user.model.entity.EbikeOrder;
import com.cdzy.user.service.EbikeOrderService;
import com.ebike.feign.clients.OperationsFeignClient;
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.paginate.Page;
import com.mybatisflex.core.query.QueryWrapper;
import jakarta.annotation.Resource;
@ -13,6 +16,7 @@ import jakarta.validation.constraints.NotBlank;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Objects;
import static com.cdzy.user.model.entity.table.EbikeOrderTableDef.EBIKE_ORDER;
@ -31,6 +35,9 @@ public class EbikeOrderController {
@Resource
private EbikeOrderService ebikeOrderService;
@Resource
private OperationsFeignClient operationsFeignClient;
/**
* 开始骑行生成订单开锁
*
@ -154,4 +161,15 @@ public class EbikeOrderController {
return JsonResult.success(page);
}
/**
* 车辆列表
*
* @param feignEbikeBikeRadiusVo 坐标信息
* @ {@code 200} 添加成功{@code 500} 添加失败
*/
@PostMapping("bikeList")
public JsonResult<?> bikeList(@RequestBody @Validated FeignEbikeBikeRadiusVo feignEbikeBikeRadiusVo) {
List<FeignEbikeDto> result = ebikeOrderService.userRadiusList(feignEbikeBikeRadiusVo);
return JsonResult.success(result);
}
}

View File

@ -2,9 +2,13 @@ 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;
/**
* 用户订单 服务层
*
@ -31,38 +35,51 @@ public interface EbikeOrderService extends IService<EbikeOrder> {
/**
* 订单支付
*
* @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);
}

View File

@ -1,6 +1,9 @@
package com.cdzy.user.service.impl;
import com.cdzy.common.enums.BikeUsageStatus;
import com.cdzy.common.enums.Code;
import com.cdzy.common.ex.EbikeException;
import com.cdzy.common.model.response.JsonResult;
import com.cdzy.user.enums.OrderStatus;
import com.cdzy.user.mapper.EbikeOrderMapper;
import com.cdzy.user.model.dto.EbikeUserCyclingDto;
@ -8,14 +11,18 @@ import com.cdzy.user.model.entity.EbikeOrder;
import com.cdzy.user.service.EbikeOrderService;
import com.cdzy.user.utils.RedisUtil;
import com.ebike.feign.clients.OperationsFeignClient;
import com.ebike.feign.model.dto.FeignEbikeDto;
import com.ebike.feign.model.dto.FeignOrderPaymentDto;
import com.ebike.feign.model.vo.FeignEbikeBikeInfoVo;
import com.ebike.feign.model.vo.FeignEbikeBikeRadiusVo;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.mybatisflex.core.query.QueryWrapper;
import com.mybatisflex.spring.service.impl.ServiceImpl;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;
import java.util.List;
import static com.cdzy.user.model.entity.table.EbikeOrderTableDef.EBIKE_ORDER;
@ -155,6 +162,15 @@ public class EbikeOrderImpl extends ServiceImpl<EbikeOrderMapper, EbikeOrder> im
updateOrderStatus(orderId, OrderStatus.REFUND_APPLYING, OrderStatus.REFUND_REJECTED);
}
@Override
public List<FeignEbikeDto> userRadiusList(FeignEbikeBikeRadiusVo feignEbikeBikeRadiusVo) {
JsonResult<List<FeignEbikeDto>> jsonResult = operationsFeignClient.userRadiusList(feignEbikeBikeRadiusVo);
if (jsonResult.getCode() != Code.SUCCESS) {
throw new EbikeException("获取半径内车辆错误");
}
return jsonResult.getData();
}
/**
* 校验车辆是否可用
*