Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
T
travel-cloud
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
cloud
travel-cloud
Commits
9c21d0d8
提交
9c21d0d8
authored
12月 31, 2024
作者:
hzh
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
部分功能实现
上级
21c4dadf
显示空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
85 行增加
和
11 行删除
+85
-11
JsapiRefundNotifyModel.java
...org/dromara/common/pay/domain/JsapiRefundNotifyModel.java
+78
-0
IWxPayService.java
...in/java/org/dromara/common/pay/service/IWxPayService.java
+1
-1
WxPayServiceImpl.java
...org/dromara/common/pay/service/impl/WxPayServiceImpl.java
+2
-2
IOrderPayService.java
...main/java/org/dromara/order/service/IOrderPayService.java
+1
-2
WeChatOrderPayServiceImpl.java
...dromara/order/service/impl/WeChatOrderPayServiceImpl.java
+3
-6
没有找到文件。
ruoyi-common/ruoyi-common-pay/src/main/java/org/dromara/common/pay/domain/JsapiRefundNotifyModel.java
浏览文件 @
9c21d0d8
...
@@ -3,6 +3,8 @@ package org.dromara.common.pay.domain;
...
@@ -3,6 +3,8 @@ package org.dromara.common.pay.domain;
import
lombok.Data
;
import
lombok.Data
;
import
lombok.experimental.Accessors
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
/**
/**
* @author hzh
* @author hzh
* @date 2024-12-31
* @date 2024-12-31
...
@@ -11,4 +13,80 @@ import lombok.experimental.Accessors;
...
@@ -11,4 +13,80 @@ import lombok.experimental.Accessors;
@Data
@Data
@Accessors
(
chain
=
true
)
@Accessors
(
chain
=
true
)
public
class
JsapiRefundNotifyModel
{
public
class
JsapiRefundNotifyModel
{
/**
* 【商户号】商户下单时传入的商户号。
*/
private
String
mchid
;
/**
* 【商户订单号】 商户下单时传入的商户系统内部订单号。
*/
private
String
out_trade_no
;
/**
* 【微信支付订单号】 微信支付侧订单的唯一标识。
*/
private
String
transaction_id
;
/**
* 【商户退款单号】 商户申请退款时传的商户系统内部退款单号。
*/
private
String
out_refund_no
;
/**
* 【微信支付退款单号】 申请退款受理成功时,该笔退款单在微信支付侧生成的唯一标识。
*/
private
String
refund_id
;
/**
* 【退款状态】 退款状态:
* SUCCESS—退款成功
* CLOSED—退款关闭。
* PROCESSING—退款处理中
* ABNORMAL—退款异常,退款到银行发现用户的卡作废或者冻结了,导致原路退款银行卡失败,可前往商户平台-交易中心,手动处理此笔退款,可参考: 退款异常的处理,或者通过发起异常退款接口进行处理。
*/
private
String
refund_status
;
/**
* 【退款成功时间】 退款成功的时间。
*/
private
String
success_time
;
/**
* 【退款入账账户】
*/
private
String
user_received_account
;
/**
* 【退款金额】 退款总金额,单位为元。
*/
private
Amount
amount
;
@Data
@Accessors
(
chain
=
true
)
public
static
class
Amount
implements
Serializable
{
/**
* 订单总金额,单位为分。
*/
private
Integer
total
;
/**
* 【退款金额】 退款标价金额,单位为分,可以做部分退款
*/
private
Integer
refund
;
/**
* 用户支付金额,单位为分。
*/
private
Integer
payer_total
;
/**
* 【用户退款金额】 退款给用户的金额,单位为分,不包含所有优惠券金额
*/
private
Integer
payer_refund
;
}
}
}
ruoyi-common/ruoyi-common-pay/src/main/java/org/dromara/common/pay/service/IWxPayService.java
浏览文件 @
9c21d0d8
...
@@ -83,5 +83,5 @@ public interface IWxPayService {
...
@@ -83,5 +83,5 @@ public interface IWxPayService {
* @param outRefundNo 退款单号
* @param outRefundNo 退款单号
* @return 退款结果
* @return 退款结果
*/
*/
JsapiRefundNotify
Model
refundQuery
(
String
outRefundNo
);
org
.
dromara
.
common
.
pay
.
domain
.
Refund
Model
refundQuery
(
String
outRefundNo
);
}
}
ruoyi-common/ruoyi-common-pay/src/main/java/org/dromara/common/pay/service/impl/WxPayServiceImpl.java
浏览文件 @
9c21d0d8
...
@@ -287,7 +287,7 @@ public class WxPayServiceImpl implements IWxPayService {
...
@@ -287,7 +287,7 @@ public class WxPayServiceImpl implements IWxPayService {
}
}
@Override
@Override
public
JsapiRefundNotify
Model
refundQuery
(
String
outRefundNo
)
{
public
org
.
dromara
.
common
.
pay
.
domain
.
Refund
Model
refundQuery
(
String
outRefundNo
)
{
try
{
try
{
log
.
info
(
"退款订单查询,退款单号:{}"
,
outRefundNo
);
log
.
info
(
"退款订单查询,退款单号:{}"
,
outRefundNo
);
IJPayHttpResponse
response
=
WxPayApi
.
v3
(
IJPayHttpResponse
response
=
WxPayApi
.
v3
(
...
@@ -307,7 +307,7 @@ public class WxPayServiceImpl implements IWxPayService {
...
@@ -307,7 +307,7 @@ public class WxPayServiceImpl implements IWxPayService {
//验签成功
//验签成功
if
(
verifySignature
)
{
if
(
verifySignature
)
{
JSONObject
result
=
JSONUtil
.
parseObj
(
response
.
getBody
());
JSONObject
result
=
JSONUtil
.
parseObj
(
response
.
getBody
());
return
JSON
.
parseObject
(
JSON
.
toJSONString
(
result
),
JsapiRefundNotify
Model
.
class
);
return
JSON
.
parseObject
(
JSON
.
toJSONString
(
result
),
org
.
dromara
.
common
.
pay
.
domain
.
Refund
Model
.
class
);
}
}
}
}
throw
new
RuntimeException
(
"退款单:"
+
outRefundNo
+
"查询失败!"
);
throw
new
RuntimeException
(
"退款单:"
+
outRefundNo
+
"查询失败!"
);
...
...
ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/IOrderPayService.java
浏览文件 @
9c21d0d8
package
org
.
dromara
.
order
.
service
;
package
org
.
dromara
.
order
.
service
;
import
org.dromara.common.pay.domain.JsapiNotifyModel
;
import
org.dromara.common.pay.domain.JsapiNotifyModel
;
import
org.dromara.common.pay.domain.JsapiRefundNotifyModel
;
/**
/**
* @author hzh
* @author hzh
...
@@ -38,6 +37,6 @@ public interface IOrderPayService {
...
@@ -38,6 +37,6 @@ public interface IOrderPayService {
* @param outRefundNo 商户申请退款时传入的商户系统内部退款单号。
* @param outRefundNo 商户申请退款时传入的商户系统内部退款单号。
* @return 退款结果
* @return 退款结果
*/
*/
JsapiRefundNotify
Model
refundQuery
(
String
outRefundNo
);
org
.
dromara
.
common
.
pay
.
domain
.
Refund
Model
refundQuery
(
String
outRefundNo
);
}
}
ruoyi-modules/ruoyi-order/src/main/java/org/dromara/order/service/impl/WeChatOrderPayServiceImpl.java
浏览文件 @
9c21d0d8
...
@@ -102,7 +102,7 @@ public class WeChatOrderPayServiceImpl implements IOrderPayService {
...
@@ -102,7 +102,7 @@ public class WeChatOrderPayServiceImpl implements IOrderPayService {
* @param model 退款回调参数
* @param model 退款回调参数
*/
*/
private
void
dealRefundOrder
(
JsapiRefundNotifyModel
model
)
{
private
void
dealRefundOrder
(
JsapiRefundNotifyModel
model
)
{
//TODO 处理退款订单
}
}
@GlobalTransactional
(
rollbackFor
=
Exception
.
class
)
@GlobalTransactional
(
rollbackFor
=
Exception
.
class
)
...
@@ -116,11 +116,8 @@ public class WeChatOrderPayServiceImpl implements IOrderPayService {
...
@@ -116,11 +116,8 @@ public class WeChatOrderPayServiceImpl implements IOrderPayService {
@GlobalTransactional
(
rollbackFor
=
Exception
.
class
)
@GlobalTransactional
(
rollbackFor
=
Exception
.
class
)
@Override
@Override
public
JsapiRefundNotifyModel
refundQuery
(
String
outRefundNo
)
{
public
org
.
dromara
.
common
.
pay
.
domain
.
RefundModel
refundQuery
(
String
outRefundNo
)
{
JsapiRefundNotifyModel
model
=
wxPayService
.
refundQuery
(
outRefundNo
);
return
wxPayService
.
refundQuery
(
outRefundNo
);
//处理退款订单
dealRefundOrder
(
model
);
return
model
;
}
}
private
void
dealOrder
(
JsapiNotifyModel
model
)
{
private
void
dealOrder
(
JsapiNotifyModel
model
)
{
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论