修改退款申请订单详情相关接口

This commit is contained in:
jkcdev 2025-05-21 15:46:19 +08:00
parent 796081cf7b
commit 6df85e7ca8
15 changed files with 255 additions and 5 deletions

View File

@ -6,10 +6,7 @@ import com.ebike.feign.model.res.ReqVehicleStatusUpdateDto;
import com.ebike.feign.model.rsp.FeignEbikeBikeInfoDto; import com.ebike.feign.model.rsp.FeignEbikeBikeInfoDto;
import com.ebike.feign.model.rsp.RspBikeInfo; import com.ebike.feign.model.rsp.RspBikeInfo;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List; import java.util.List;
@ -38,6 +35,15 @@ public interface MaintenanceFeignClient {
@PostMapping("ebikeBikeInfo/getEbikeInfoByCode") @PostMapping("ebikeBikeInfo/getEbikeInfoByCode")
JsonResult<FeignEbikeBikeInfoDto> getEbikeInfoByCode(@RequestParam(name = "ebikeCode") String ebikeCode); JsonResult<FeignEbikeBikeInfoDto> getEbikeInfoByCode(@RequestParam(name = "ebikeCode") String ebikeCode);
/**
* 根据车辆编号获取车辆基本信息
*
* @param bikeCode 车辆编号
* @return
*/
@GetMapping("ebikeBikeInfo/getBikeBaseInfoByCode/{bikeCode}")
JsonResult<?> getBikeBaseInfoByCode(@PathVariable("bikeCode") String bikeCode);
/** /**
* 保存头盔信息 * 保存头盔信息
* *

View File

@ -3,6 +3,7 @@ package com.ebike.feign.clients;
import com.cdzy.common.model.EbikeTracking; import com.cdzy.common.model.EbikeTracking;
import com.cdzy.common.model.JsonResult; import com.cdzy.common.model.JsonResult;
import com.cdzy.common.model.ReqBatchRegionDto; import com.cdzy.common.model.ReqBatchRegionDto;
import com.ebike.feign.model.res.ReqEbikeSiteQuery;
import com.ebike.feign.model.res.ReqUserOperateDto; import com.ebike.feign.model.res.ReqUserOperateDto;
import com.ebike.feign.model.res.ResFeignEbikeSysRcostsetDto; import com.ebike.feign.model.res.ResFeignEbikeSysRcostsetDto;
import com.ebike.feign.model.rsp.FeignEbikeRegionDto; import com.ebike.feign.model.rsp.FeignEbikeRegionDto;
@ -143,4 +144,13 @@ public interface OperateFeignClient {
@PostMapping("ebikeRegion/operationRegionIdFilter") @PostMapping("ebikeRegion/operationRegionIdFilter")
JsonResult<List<Long>> operationRegionIdFilter(@RequestBody ReqBatchRegionDto reqBatchRegionDto); JsonResult<List<Long>> operationRegionIdFilter(@RequestBody ReqBatchRegionDto reqBatchRegionDto);
/**
* 查询车辆所在站点
*
* @param siteQuery 查询参数
* @return
*/
@PostMapping("ebikeTracking/querySite")
JsonResult<?> querySite(@RequestBody ReqEbikeSiteQuery siteQuery);
} }

View File

@ -0,0 +1,35 @@
package com.ebike.feign.model.res;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* 车辆位于站点查询 请求参数
*
* @author dingchao
* @date 2025/5/21
* @modified by:
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ReqEbikeSiteQuery implements Serializable {
/**
* 运营区域ID
*/
private long areaId;
/**
* 经度
*/
private Double longitude;
/**
* 纬度
*/
private Double latitude;
}

View File

@ -0,0 +1,74 @@
package com.ebike.feign.model.rsp;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* 车辆基本信息 实体类
*
* @author dingchao
* @since 2025-05-21
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class EbikeBikeBaseInfo implements Serializable {
/**
* 车辆ID
*/
private String bikeId;
/**
* 区域ID
*/
private String reginId;
/**
* 中控ID
*/
private String ecuId;
/**
* 电池ID
*/
private String batteryId;
/**
* 头盔ID
*/
private String helmetId;
/**
* 状态
*/
private String state;
/**
* 车辆编号
*/
private String bikeCode;
/**
* 使用状态
*/
private Integer usageStatus;
/**
* 备注信息
*/
private String remarks;
/**
* 车辆型号
*/
private String bikeModel;
/**
* 车牌号
*/
private String bikeNumber;
}

View File

@ -0,0 +1,26 @@
package com.ebike.feign.model.rsp;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 车辆位于站点查询 响应参数
*
* @author dingchao
* @date 2025/5/21
* @modified by:
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class EbikeSiteInfo {
/**
* 站点ID
*/
private Long siteId;
/**
* 站点名称
*/
private String siteName;
}

View File

@ -11,6 +11,7 @@ import com.cdzy.common.utils.ConvertUtil;
import com.cdzy.ebikemaintenance.utils.MinioUtil; import com.cdzy.ebikemaintenance.utils.MinioUtil;
import com.cdzy.ebikemaintenance.utils.RedisUtil; import com.cdzy.ebikemaintenance.utils.RedisUtil;
import com.ebike.feign.model.res.ReqEcuSnDto; import com.ebike.feign.model.res.ReqEcuSnDto;
import com.ebike.feign.model.rsp.EbikeBikeBaseInfo;
import com.ebike.feign.model.rsp.RspBikeInfo; import com.ebike.feign.model.rsp.RspBikeInfo;
import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.query.QueryWrapper; import com.mybatisflex.core.query.QueryWrapper;
@ -141,6 +142,23 @@ public class EbikeBikeInfoController {
} }
/**
* 根据车辆编号获取车辆基本信息
*
* @param bikeCode 车辆编号
* @return
*/
@GetMapping("getBikeBaseInfoByCode/{bikeCode}")
public JsonResult<?> getBikeBaseInfoByCode(@PathVariable("bikeCode") String bikeCode) {
EbikeBikeInfo ebikeBikeInfo = ebikeBikeInfoService.getByBikeCode(bikeCode);
if (ebikeBikeInfo == null) {
return JsonResult.failed("获取车辆基本信息失败");
}
EbikeBikeBaseInfo bikeBaseInfo = new EbikeBikeBaseInfo();
BeanUtils.copyProperties(ebikeBikeInfo, bikeBaseInfo);
return JsonResult.success(bikeBaseInfo);
}
/** /**
* 根据车辆编号获取ecuSn * 根据车辆编号获取ecuSn
* *

View File

@ -2,9 +2,14 @@ package com.cdzy.ebikeoperate.controller;
import com.cdzy.common.model.EbikeTracking; import com.cdzy.common.model.EbikeTracking;
import com.cdzy.common.model.JsonResult; import com.cdzy.common.model.JsonResult;
import com.cdzy.ebikeoperate.model.pojo.EbikeSiteRegion;
import com.cdzy.ebikeoperate.service.EbikeSiteRegionService;
import com.cdzy.ebikeoperate.utils.RedisUtil;
import com.ebike.feign.model.res.ReqEbikeSiteQuery;
import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeTrackingDto; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeTrackingDto;
import com.cdzy.ebikeoperate.model.dto.response.EbikeTrackingDto; import com.cdzy.ebikeoperate.model.dto.response.EbikeTrackingDto;
import com.cdzy.ebikeoperate.service.EbikeTrackingService; import com.cdzy.ebikeoperate.service.EbikeTrackingService;
import com.ebike.feign.model.rsp.EbikeSiteInfo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -25,6 +30,10 @@ public class EbikeTrackingController {
@Autowired @Autowired
private EbikeTrackingService ebikeTrackingService; private EbikeTrackingService ebikeTrackingService;
@Autowired
private RedisUtil redisUtil;
@Autowired
private EbikeSiteRegionService ebikeSiteRegionService;
/** /**
* 保存车辆轨迹 * 保存车辆轨迹
@ -52,4 +61,25 @@ public class EbikeTrackingController {
List<EbikeTrackingDto> result = ebikeTrackingService.query(reqEbikeTrackingDto); List<EbikeTrackingDto> result = ebikeTrackingService.query(reqEbikeTrackingDto);
return JsonResult.success(result); return JsonResult.success(result);
} }
/**
* 查询车辆所在站点
*
* @param siteQuery 查询参数
* @return
*/
@PostMapping("querySite")
public JsonResult<?> querySite(@RequestBody ReqEbikeSiteQuery siteQuery) {
EbikeSiteInfo siteInfo = new EbikeSiteInfo();
Long siteId = redisUtil.isPointInSiteWithSiteRegionId(siteQuery.getLongitude(), siteQuery.getLatitude(), siteQuery.getAreaId());
siteInfo.setSiteId(siteId);
if (siteId == null) {
siteInfo.setSiteName( "不在站点范围内");
}
EbikeSiteRegion siteRegion = ebikeSiteRegionService.getById(siteId);
if (siteRegion != null) {
siteInfo.setSiteName(siteRegion.getSiteName());
}
return JsonResult.success(siteInfo);
}
} }

View File

@ -157,4 +157,16 @@ public class EbikeWxPaymentController {
ResOrderInfoDto r = wxPayService.queryRefundOrderById(refundId); ResOrderInfoDto r = wxPayService.queryRefundOrderById(refundId);
return r == null?JsonResult.failed(String.format("退款单号{%s}查询订单详情失败", refundId)):JsonResult.success(r); return r == null?JsonResult.failed(String.format("退款单号{%s}查询订单详情失败", refundId)):JsonResult.success(r);
} }
/**
* 退款申请订单详情
*
* @param orderId 订单id
* @return 订单详情
*/
@GetMapping("/refundApplyOrderDetail/{orderId}")
public JsonResult<?> refundApplyOrderDetail(@PathVariable(name = "orderId") String orderId) {
ResRefundOrderInfo r = wxPayService.queryRefundApplyOrderById(orderId);
return r == null?JsonResult.failed(String.format("订单号{%s}查询订单详情失败", orderId)):JsonResult.success(r);
}
} }

View File

@ -21,11 +21,13 @@ public class BorrowingInfo {
/** /**
* 借用站点 * 借用站点
*/ */
// ebike_operate
private String borrowSite; private String borrowSite;
/** /**
* 借用地址 * 借用地址
*/ */
// 逆地理编码
private String borrowAddress; private String borrowAddress;
} }

View File

@ -28,6 +28,7 @@ public class OrderInfo {
/** /**
* 运营区域 * 运营区域
*/ */
// ebike_operate
private String operate; private String operate;
/** /**
@ -36,7 +37,7 @@ public class OrderInfo {
private String orderSource; private String orderSource;
/** /**
* 租借方式 * 租借方式微信支付分押金
*/ */
private String rentMethod; private String rentMethod;
@ -68,6 +69,7 @@ public class OrderInfo {
/** /**
* 轨迹里程 * 轨迹里程
*/ */
// 逆地理编码
private String trajectoryMileage; private String trajectoryMileage;
/** /**
@ -93,10 +95,12 @@ public class OrderInfo {
/** /**
* 起始行政区域 * 起始行政区域
*/ */
// 逆地理编码
private String startRegion; private String startRegion;
/** /**
* 结束行政区域 * 结束行政区域
*/ */
// 逆地理编码
private String endRegion; private String endRegion;
} }

View File

@ -26,6 +26,7 @@ public class ReturnInfo {
/** /**
* 归还地址 * 归还地址
*/ */
// 逆地理编码
private String returnAddress; private String returnAddress;
} }

View File

@ -1,5 +1,7 @@
package com.cdzy.payment.service; package com.cdzy.payment.service;
import com.cdzy.payment.model.dto.OrderDetailInfo;
import com.cdzy.payment.model.dto.ResOrderInfoDto;
import com.mybatisflex.core.service.IService; import com.mybatisflex.core.service.IService;
import com.cdzy.payment.model.entity.EbikePayment; import com.cdzy.payment.model.entity.EbikePayment;
import com.wechat.pay.java.service.payments.model.Transaction; import com.wechat.pay.java.service.payments.model.Transaction;
@ -44,4 +46,12 @@ public interface EbikePaymentService extends IService<EbikePayment> {
* @return * @return
*/ */
EbikePayment getByOrderId(String orderId); EbikePayment getByOrderId(String orderId);
/**
* 订单详情
*
* @param orderId 退款id
* @return 订单详情
*/
OrderDetailInfo getOrderDetail(String orderId);
} }

View File

@ -135,4 +135,12 @@ public interface WxPayService {
* @return 退款详情 * @return 退款详情
*/ */
ResOrderInfoDto queryRefundOrderById(String refundId); ResOrderInfoDto queryRefundOrderById(String refundId);
/**
* 退款申请订单详情
*
* @param orderId 订单id
* @return 退款申请详情
*/
ResRefundOrderInfo queryRefundApplyOrderById(String orderId);
} }

View File

@ -1,5 +1,7 @@
package com.cdzy.payment.service.impl; package com.cdzy.payment.service.impl;
import com.cdzy.payment.model.dto.OrderDetailInfo;
import com.cdzy.payment.model.dto.ResOrderInfoDto;
import com.cdzy.payment.model.enums.PayMethod; import com.cdzy.payment.model.enums.PayMethod;
import com.cdzy.payment.utils.StringUtils; import com.cdzy.payment.utils.StringUtils;
import com.ebike.feign.clients.OrdersFeignClient; import com.ebike.feign.clients.OrdersFeignClient;
@ -81,6 +83,13 @@ public class EbikePaymentServiceImpl extends ServiceImpl<EbikePaymentMapper, Ebi
return this.getOne(query); return this.getOne(query);
} }
@Override
public OrderDetailInfo getOrderDetail(String orderId) {
//QueryWrapper query = QueryWrapper.create()
// .select(EBIKE_PAYMENT., EBIKE_PAYMENT.PAYMENT_ID, EBIKE_PAYMENT.TOTAL, EBIKE_PAYMENT.COST_PRICE, EBIKE_PAYMENT.CREATE_TIME, EBIKE_PAYMENT.TRADE_STATE)
return null;
}
/** /**
* 根据支付id查询支付记录 * 根据支付id查询支付记录
* *

View File

@ -593,6 +593,11 @@ public class WxPayServiceImpl implements WxPayService {
return orderDto; return orderDto;
} }
@Override
public ResRefundOrderInfo queryRefundApplyOrderById(String orderId) {
return null;
}
/** /**
* 打印日志 * 打印日志
* *