Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
order-group
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
order-group-application
order-group
Commits
f1fef8a7
Commit
f1fef8a7
authored
Dec 16, 2022
by
查志伟
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提供退订单金额接口
parent
6bda8ab9
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
64 additions
and
13 deletions
+64
-13
order-application-service/src/main/java/cn/freemud/controller/ExposureOrderController.java
+18
-11
order-application-service/src/main/java/cn/freemud/entities/vo/RefundOrderAmtRequest.java
+28
-0
order-application-service/src/main/java/cn/freemud/service/RefundService.java
+18
-2
No files found.
order-application-service/src/main/java/cn/freemud/controller/ExposureOrderController.java
View file @
f1fef8a7
...
...
@@ -5,13 +5,14 @@ import cn.freemud.entities.vo.*;
import
cn.freemud.entities.vo.order.PayConfigVo
;
import
cn.freemud.entities.vo.order.PaySuccessDataVo
;
import
cn.freemud.service.ExposureOrderService
;
import
cn.freemud.service.RefundService
;
import
cn.freemud.service.impl.OrderQueueService
;
import
cn.freemud.service.impl.OrderServiceImpl
;
import
cn.freemud.service.impl.PayServiceImpl
;
import
cn.freemud.utils.ResponseUtil
;
import
com.freemud.application.sdk.api.log.ApiAnnotation
;
import
com.freemud.application.sdk.api.log.LogParams
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
...
...
@@ -23,18 +24,14 @@ import org.springframework.web.bind.annotation.RestController;
*/
@RestController
@RequestMapping
(
"/order/exposure"
)
@RequiredArgsConstructor
public
class
ExposureOrderController
{
@Autowired
private
PayServiceImpl
payService
;
@Autowired
private
ExposureOrderService
exposureOrderService
;
@Autowired
private
OrderServiceImpl
orderService
;
@Autowired
private
OrderQueueService
orderQueueService
;
private
final
PayServiceImpl
payService
;
private
final
ExposureOrderService
exposureOrderService
;
private
final
OrderServiceImpl
orderService
;
private
final
OrderQueueService
orderQueueService
;
private
final
RefundService
refundService
;
/**
* 创建支付单,查询支付配置
...
...
@@ -132,4 +129,14 @@ public class ExposureOrderController {
return
ResponseUtil
.
success
(
exposureOrderService
.
getPayCode
(
req
));
}
/**
* 退订单金额(仅退款,不会处理订单状态)
* 返回退款状态, 1-成功 {@link cn.freemud.enums.PayRefundStatus}
*/
@PostMapping
(
"/refundOrderAmt"
)
@ApiAnnotation
(
logMessage
=
"退订单金额(仅退款,不会处理订单状态)"
)
public
BaseResponse
<
Integer
>
refundOrderAmt
(
@Validated
@LogParams
@RequestBody
RefundOrderAmtRequest
request
)
{
return
ResponseUtil
.
success
(
refundService
.
refundOrderAmt
(
request
.
getPartnerId
(),
request
.
getOrderCode
(),
request
.
getReason
()));
}
}
order-application-service/src/main/java/cn/freemud/entities/vo/RefundOrderAmtRequest.java
0 → 100644
View file @
f1fef8a7
package
cn
.
freemud
.
entities
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
/**
* @author Clover.z
* @version 1.0.0
* @since 1.0.0
*/
@Data
public
class
RefundOrderAmtRequest
{
@ApiModelProperty
(
value
=
"商户号"
,
required
=
true
)
@NotBlank
private
String
partnerId
;
@ApiModelProperty
(
value
=
"订单号"
,
required
=
true
)
@NotBlank
private
String
orderCode
;
@ApiModelProperty
(
value
=
"退款说明"
,
required
=
true
)
@NotBlank
private
String
reason
;
}
order-application-service/src/main/java/cn/freemud/service/RefundService.java
View file @
f1fef8a7
...
...
@@ -124,7 +124,7 @@ public class RefundService {
// 未接单
if
(
NewOrderStatus
.
PLACE_AN_ORDER
.
getIndex
().
equals
(
order
.
getOrderState
()))
{
//商家未接单逻辑处理 1.调用支付退款 2.根据支付退款返回状态组装订单取消参数,调用订单取消接口
refund
Amt
(
order
,
reason
,
refundDeliveryFee
,
refundMode
);
refund
Order
(
order
,
reason
,
refundDeliveryFee
,
refundMode
);
orderQueueService
.
backOrdersStatusChange
(
order
.
getOrderCode
(),
order
.
getOrderState
(),
order
.
getPayState
(),
order
.
getPartnerId
());
}
else
{
//已接单的,创建售后单
...
...
@@ -133,6 +133,22 @@ public class RefundService {
}
/**
* 退订单金额(仅退款,不会处理订单状态)
* @param partnerId 商户号
* @param orderCode 订单号
* @return 退款状态 {@link PayRefundStatus}
*/
public
Integer
refundOrderAmt
(
String
partnerId
,
String
orderCode
,
String
refundReason
)
{
// 查询订单信息
QueryByCodeResponse
response
=
orderSdkService
.
getOrderInfo
(
partnerId
,
orderCode
);
if
(
null
==
response
||
null
==
response
.
getResult
())
throw
new
ServiceException
(
"订单信息不存在"
);
OrderInfoReqs
order
=
response
.
getResult
();
// 退款,这里不用关心订单状态,直接退这笔订单的支付金额
PayRefundResponse
refundResponse
=
paymentHandle
.
getCommonPayRefundResponse
(
order
,
refundReason
);
return
refundResponse
.
getPayRefundStatus
().
getCode
();
}
/**
* 研发批量退款,内部技术支持使用
*
*/
...
...
@@ -247,7 +263,7 @@ public class RefundService {
* 1.调用支付退款 2.根据支付退款返回状态组装订单取消参数,调用订单取消接口
*
*/
private
void
refund
Amt
(
OrderInfoReqs
order
,
String
reason
,
Boolean
isRefundDeliveryFee
,
Byte
refundMode
)
{
private
void
refund
Order
(
OrderInfoReqs
order
,
String
reason
,
Boolean
isRefundDeliveryFee
,
Byte
refundMode
)
{
int
state
=
PayRefundStatus
.
SUCCESS
.
getCode
();
if
(
order
.
getActualPayAmount
().
longValue
()
>
0
)
{
PayRefundResponse
refundResponse
=
paymentHandle
.
getCommonPayRefundResponse
(
order
,
reason
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment