diff --git a/ebike-payment/pom.xml b/ebike-payment/pom.xml index 61176243..83b739ea 100644 --- a/ebike-payment/pom.xml +++ b/ebike-payment/pom.xml @@ -107,6 +107,12 @@ javax.servlet-api true + + + cn.dev33 + sa-token-spring-boot3-starter + ${satoken.version} + org.springframework.boot diff --git a/ebike-payment/src/main/java/com/cdzy/payment/controller/EbikeWxPaymentController.java b/ebike-payment/src/main/java/com/cdzy/payment/controller/EbikeWxPaymentController.java index d1f73651..275dc939 100644 --- a/ebike-payment/src/main/java/com/cdzy/payment/controller/EbikeWxPaymentController.java +++ b/ebike-payment/src/main/java/com/cdzy/payment/controller/EbikeWxPaymentController.java @@ -1,9 +1,13 @@ package com.cdzy.payment.controller; +import cn.dev33.satoken.stp.StpUtil; 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.WxPayService; +import com.ebike.feign.clients.StaffFeignClient; +import com.ebike.feign.model.rsp.StaffFeign; import com.mybatisflex.core.paginate.Page; import com.wechat.pay.java.service.payments.model.Transaction; import com.wechat.pay.java.service.refund.model.Refund; @@ -26,6 +30,8 @@ public class EbikeWxPaymentController { @Resource private WxPayService wxPayService; + @Resource + private StaffFeignClient staffFeignClient; /** * 微信支付下单 @@ -84,7 +90,15 @@ public class EbikeWxPaymentController { */ @PostMapping("/refund") public JsonResult refund(@RequestBody ReqRefundDto refundDto) { - HandleNotifyResult r = wxPayService.refund(refundDto); + // 获取审核人信息 + String tokenValue = StpUtil.getTokenValue(); + String userId = null; + JsonResult result = staffFeignClient.getInfoByToken(tokenValue); + if (result.getCode() == Code.SUCCESS) { + StaffFeign staffFeign = result.getData(); + userId = String.valueOf(staffFeign.getStaffId()); + } + HandleNotifyResult r = wxPayService.refund(refundDto, userId); return r.isSuccess()?JsonResult.success(true):JsonResult.failed(r.getMessage()); } @@ -96,7 +110,15 @@ public class EbikeWxPaymentController { */ @PostMapping("/reviewRefund") public JsonResult reviewRefund(@RequestBody ReqRefundProcessDto processDto) { - boolean r = wxPayService.refundReview(processDto); + // 获取审核人信息 + String tokenValue = StpUtil.getTokenValue(); + String userId = null; + JsonResult result = staffFeignClient.getInfoByToken(tokenValue); + if (result.getCode() == Code.SUCCESS) { + StaffFeign staffFeign = result.getData(); + userId = String.valueOf(staffFeign.getStaffId()); + } + boolean r = wxPayService.refundReview(processDto, userId); return r?JsonResult.success(true):JsonResult.failed("审核失败"); } diff --git a/ebike-payment/src/main/java/com/cdzy/payment/service/WxPayService.java b/ebike-payment/src/main/java/com/cdzy/payment/service/WxPayService.java index a4186e68..25cb799e 100644 --- a/ebike-payment/src/main/java/com/cdzy/payment/service/WxPayService.java +++ b/ebike-payment/src/main/java/com/cdzy/payment/service/WxPayService.java @@ -81,17 +81,19 @@ public interface WxPayService { * 审核退款申请 * * @param processDto 退款审核信息 + * @operator 操作人id * @return 退款信息id */ - Boolean refundReview(ReqRefundProcessDto processDto); + Boolean refundReview(ReqRefundProcessDto processDto, String operator); /** * 调用微信退款接口 * * @param refundDto 退款请求 + * @param operator 操作人id * @return 退款信息id */ - HandleNotifyResult refund(ReqRefundDto refundDto); + HandleNotifyResult refund(ReqRefundDto refundDto, String operator); /** diff --git a/ebike-payment/src/main/java/com/cdzy/payment/service/impl/EbikeRefundServiceImpl.java b/ebike-payment/src/main/java/com/cdzy/payment/service/impl/EbikeRefundServiceImpl.java index b4dbc195..73bf3cd1 100644 --- a/ebike-payment/src/main/java/com/cdzy/payment/service/impl/EbikeRefundServiceImpl.java +++ b/ebike-payment/src/main/java/com/cdzy/payment/service/impl/EbikeRefundServiceImpl.java @@ -96,7 +96,8 @@ public class EbikeRefundServiceImpl extends ServiceImpl