新增退款申请用户交易记录接口
This commit is contained in:
parent
bba222e730
commit
d10edde2cf
@ -5,6 +5,7 @@ import com.alibaba.fastjson2.JSONObject;
|
||||
import com.cdzy.common.enums.Code;
|
||||
import com.cdzy.common.model.JsonResult;
|
||||
import com.cdzy.payment.model.dto.*;
|
||||
import com.cdzy.payment.service.EbikeRefundService;
|
||||
import com.cdzy.payment.service.WxPayService;
|
||||
import com.ebike.feign.clients.StaffFeignClient;
|
||||
import com.ebike.feign.model.rsp.StaffFeign;
|
||||
@ -32,6 +33,8 @@ public class EbikeWxPaymentController {
|
||||
private WxPayService wxPayService;
|
||||
@Resource
|
||||
private StaffFeignClient staffFeignClient;
|
||||
@Resource
|
||||
private EbikeRefundService ebikeRefundService;
|
||||
|
||||
/**
|
||||
* 微信支付下单
|
||||
@ -172,7 +175,7 @@ public class EbikeWxPaymentController {
|
||||
}
|
||||
|
||||
/**
|
||||
* 退款申请
|
||||
* 退款申请用户详情
|
||||
*
|
||||
* @param refundId 退款id
|
||||
* @return
|
||||
@ -180,6 +183,18 @@ public class EbikeWxPaymentController {
|
||||
@PostMapping("/refundApplyUserDetail/{refundId}")
|
||||
public JsonResult<?> refundApplyUserDetail(@PathVariable(name = "refundId") String refundId) {
|
||||
UserBasicInformation r = wxPayService.queryRefundUserInfoById(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 reqTradeRecordDto
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/refundApplyTradeRecord")
|
||||
public JsonResult<?> refundApplyTradeRecord(@RequestBody ReqTradeRecordDto reqTradeRecordDto) {
|
||||
Page<TransactionRecord> list = ebikeRefundService.queryRefundTradeRecordById(reqTradeRecordDto);
|
||||
return JsonResult.success(list);
|
||||
}
|
||||
}
|
||||
|
||||
@ -0,0 +1,26 @@
|
||||
package com.cdzy.payment.model.dto;
|
||||
|
||||
import com.cdzy.common.model.PageParam;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author:Ding
|
||||
* @ClassName:ReqTradeRecordDto
|
||||
* @Package:com.cdzy.payment.model.dto.ReqTradeRecordDto
|
||||
* @Description:交易记录查询dto
|
||||
* @CreateDate:2025年05月21日
|
||||
* @Version:V1.0
|
||||
**/
|
||||
@Data
|
||||
public class ReqTradeRecordDto {
|
||||
|
||||
private String refundId;
|
||||
|
||||
/**
|
||||
* 分页参数
|
||||
*/
|
||||
@NotNull(message = "分页参数不能为空")
|
||||
private PageParam pageParam;
|
||||
|
||||
}
|
||||
@ -86,4 +86,12 @@ public interface EbikeRefundService extends IService<EbikeRefund> {
|
||||
* @return 退款详情
|
||||
*/
|
||||
ResOrderInfoDto getRefundOrderDetail(String refundId);
|
||||
|
||||
/**
|
||||
* 退款申请交易记录
|
||||
*
|
||||
* @param reqTradeRecordDto 退款id
|
||||
* @return
|
||||
*/
|
||||
Page<TransactionRecord> queryRefundTradeRecordById(ReqTradeRecordDto reqTradeRecordDto);
|
||||
}
|
||||
|
||||
@ -243,4 +243,15 @@ public class EbikeRefundServiceImpl extends ServiceImpl<EbikeRefundMapper, Ebike
|
||||
.where(EBIKE_REFUND.REFUND_ID.eq(refundId));
|
||||
return getOneAs(query, ResOrderInfoDto.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<TransactionRecord> queryRefundTradeRecordById(ReqTradeRecordDto reqTradeRecordDto) {
|
||||
QueryWrapper query = QueryWrapper.create()
|
||||
.select(EBIKE_PAYMENT.TOTAL.as("amount"), EBIKE_PAYMENT.CREATE_TIME)
|
||||
.leftJoin(EBIKE_PAYMENT).on(EBIKE_PAYMENT.ORDER_ID.eq(EBIKE_REFUND.ORDER_ID))
|
||||
.where(EBIKE_REFUND.REFUND_ID.eq(reqTradeRecordDto.getRefundId()));
|
||||
|
||||
Page<TransactionRecord> page = reqTradeRecordDto.getPageParam().getPage();
|
||||
return pageAs(page, query, TransactionRecord.class);
|
||||
}
|
||||
}
|
||||
|
||||
@ -21,6 +21,7 @@ import com.ebike.feign.model.rsp.DetailDto;
|
||||
import com.ebike.feign.model.rsp.EbikePaymentDto;
|
||||
import com.ebike.feign.model.rsp.PayDetailDto;
|
||||
import com.mybatisflex.core.paginate.Page;
|
||||
import com.mybatisflex.core.query.QueryWrapper;
|
||||
import com.wechat.pay.java.core.Config;
|
||||
import com.wechat.pay.java.core.cipher.Signer;
|
||||
import com.wechat.pay.java.core.exception.HttpException;
|
||||
@ -48,6 +49,8 @@ import java.time.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import static com.cdzy.payment.model.entity.table.EbikePaymentTableDef.EBIKE_PAYMENT;
|
||||
import static com.cdzy.payment.model.entity.table.EbikeRefundTableDef.EBIKE_REFUND;
|
||||
import static com.wechat.pay.java.core.http.Constant.*;
|
||||
import static com.wechat.pay.java.core.http.Constant.WECHAT_PAY_SERIAL;
|
||||
|
||||
@ -582,8 +585,10 @@ public class WxPayServiceImpl implements WxPayService {
|
||||
//1-骑行时长费 2-运营区调度费用 3-停车区调度费用 4-高峰时段出行费用 5-高峰日出行费用 6-起步费用
|
||||
switch (detailDto.getItemType()) {
|
||||
case 1, 4, 5 -> orderDto.setDurationCost(orderDto.getDurationCost() + detailDto.getUnitPrice());
|
||||
case 2 -> orderDto.setDispatchFeeOutOperateArea(orderDto.getParkingAreaOutDispatchFee() + detailDto.getUnitPrice());
|
||||
case 3 -> orderDto.setParkingAreaOutDispatchFee(orderDto.getParkingAreaOutDispatchFee() + detailDto.getUnitPrice());
|
||||
case 2 ->
|
||||
orderDto.setDispatchFeeOutOperateArea(orderDto.getParkingAreaOutDispatchFee() + detailDto.getUnitPrice());
|
||||
case 3 ->
|
||||
orderDto.setParkingAreaOutDispatchFee(orderDto.getParkingAreaOutDispatchFee() + detailDto.getUnitPrice());
|
||||
case 6 -> orderDto.setStartupCost(orderDto.getStartupCost() + detailDto.getUnitPrice());
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user