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
c3628c61
Commit
c3628c61
authored
Nov 30, 2021
by
ping.wu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
支付退款接口分开到oms模块
parent
caccbb3a
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
145 additions
and
142 deletions
+145
-142
order-application-service/src/main/java/cn/freemud/entities/dto/pay/PayRefundData.java
+18
-18
order-application-service/src/main/java/cn/freemud/entities/dto/pay/PayRefundRequestDto.java
+76
-76
order-application-service/src/main/java/cn/freemud/entities/dto/pay/PayRefundResponseDto.java
+12
-12
order-application-service/src/main/java/cn/freemud/service/impl/PayServiceImpl.java
+23
-20
order-application-service/src/main/java/cn/freemud/service/thirdparty/PaymentNewClient.java
+12
-12
order-management/src/main/java/cn/freemud/management/service/handle/PaymentHandle.java
+2
-2
order-management/src/main/java/cn/freemud/management/thirdparty/OMSPaymentClient.java
+2
-2
No files found.
order-application-service/src/main/java/cn/freemud/entities/dto/pay/PayRefundData.java
View file @
c3628c61
package
cn
.
freemud
.
entities
.
dto
.
pay
;
import
lombok.Data
;
@Data
public
class
PayRefundData
{
private
Integer
resultCode
;
private
String
resultMsg
;
private
String
thirdPartTradeNo
;
private
String
tradeNo
;
private
String
refundTradeNo
;
private
String
thirdPartRefundTradeNo
;
private
Long
refundAmount
;
private
Long
totalAmount
;
private
Integer
refundStatus
;
}
//
package cn.freemud.entities.dto.pay;
//
//
import lombok.Data;
//
//
@Data
//
public class PayRefundData {
//
//
private Integer resultCode;
//
private String resultMsg;
//
private String thirdPartTradeNo;
//
private String tradeNo;
//
private String refundTradeNo;
//
private String thirdPartRefundTradeNo;
//
private Long refundAmount;
//
private Long totalAmount;
//
private Integer refundStatus;
//
//
}
order-application-service/src/main/java/cn/freemud/entities/dto/pay/PayRefundRequestDto.java
View file @
c3628c61
package
cn
.
freemud
.
entities
.
dto
.
pay
;
import
lombok.Data
;
import
java.util.Map
;
@Data
public
class
PayRefundRequestDto
{
/**
* 接口版本,必须为2
*/
private
Integer
ver
;
/**
* 商户编号(由非码提供)
*/
private
String
partnerId
;
/**
* 退款交易序号
*/
private
String
refundId
;
/**
* 营业员编号(可以使用固定值)
*/
private
String
operatorId
;
/**
* 商家POS机编号(可以使用固定值)
*/
private
String
stationId
;
/**
* 商家门店号(在线支付需要提前定义)
*/
private
String
storeId
;
/**
* 终端交易序号
*/
private
String
transId
;
/**
* 业务日期
*/
private
String
businessDate
;
/**
* 客户端code
*/
private
Long
clientCode
;
/**
* 非码交易流水号
*/
private
String
fmId
;
/**
* 总金额
*/
private
Long
totalAmount
;
/**
* 退款金额
*/
private
Long
refundAmount
;
/**
* 退款原因描述
*/
private
String
refundDesc
;
/**
* 退款回调地址
*/
private
String
notifyUrl
;
/**
* 退款时分账规则
*/
private
String
accountDivided
;
/**
* 扩展字段,存放扩展信息
*/
private
Map
<
String
,
String
>
extendParams
;
}
//
package cn.freemud.entities.dto.pay;
//
//
import lombok.Data;
//
//
import java.util.Map;
//
//
@Data
//
public class PayRefundRequestDto {
//
//
/**
//
* 接口版本,必须为2
//
*/
//
private Integer ver;
//
/**
//
* 商户编号(由非码提供)
//
*/
//
private String partnerId;
//
/**
//
* 退款交易序号
//
*/
//
private String refundId;
//
/**
//
* 营业员编号(可以使用固定值)
//
*/
//
private String operatorId;
//
/**
//
* 商家POS机编号(可以使用固定值)
//
*/
//
private String stationId;
//
/**
//
* 商家门店号(在线支付需要提前定义)
//
*/
//
private String storeId;
//
/**
//
* 终端交易序号
//
*/
//
private String transId;
//
/**
//
* 业务日期
//
*/
//
private String businessDate;
//
/**
//
* 客户端code
//
*/
//
private Long clientCode;
//
/**
//
* 非码交易流水号
//
*/
//
private String fmId;
//
/**
//
* 总金额
//
*/
//
private Long totalAmount;
//
/**
//
* 退款金额
//
*/
//
private Long refundAmount;
//
/**
//
* 退款原因描述
//
*/
//
private String refundDesc;
//
/**
//
* 退款回调地址
//
*/
//
private String notifyUrl;
//
/**
//
* 退款时分账规则
//
*/
//
private String accountDivided;
//
//
/**
//
* 扩展字段,存放扩展信息
//
*/
//
private Map<String, String> extendParams;
//
//
}
order-application-service/src/main/java/cn/freemud/entities/dto/pay/PayRefundResponseDto.java
View file @
c3628c61
package
cn
.
freemud
.
entities
.
dto
.
pay
;
import
lombok.Data
;
@Data
public
class
PayRefundResponseDto
{
private
Integer
code
;
private
String
message
;
private
PayRefundData
data
;
}
//
package cn.freemud.entities.dto.pay;
//
//
import lombok.Data;
//
//
@Data
//
public class PayRefundResponseDto {
//
//
private Integer code;
//
private String message;
//
private PayRefundData data;
//
//
}
order-application-service/src/main/java/cn/freemud/service/impl/PayServiceImpl.java
View file @
c3628c61
...
...
@@ -21,8 +21,14 @@ import cn.freemud.entities.vo.order.PlugInParameter;
import
cn.freemud.enums.*
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.management.entities.dto.request.BatchOrderRefundV2Request
;
import
cn.freemud.management.entities.dto.request.pay.PayRefundRequestDto
;
import
cn.freemud.management.entities.dto.request.pay.PaymentQueryOrderRequestDto
;
import
cn.freemud.management.entities.dto.response.pay.PayBatchRefundResponse
;
import
cn.freemud.management.entities.dto.response.pay.PayRefundData
;
import
cn.freemud.management.entities.dto.response.pay.PayRefundResponseDto
;
import
cn.freemud.management.entities.dto.response.pay.PaymentQueryOrderResponseDto
;
import
cn.freemud.management.thirdparty.MulitiPaymentClient
;
import
cn.freemud.management.thirdparty.OMSPaymentClient
;
import
cn.freemud.redis.RedisCache
;
import
cn.freemud.service.thirdparty.ComPayClient
;
import
cn.freemud.service.thirdparty.PaymentNewClient
;
...
...
@@ -61,18 +67,12 @@ import com.freemud.sdk.api.assortment.order.request.order.OrderEditRequest;
import
com.freemud.sdk.api.assortment.order.request.order.PaymentRequest
;
import
com.freemud.sdk.api.assortment.order.request.payment.CombPayRequest
;
import
com.freemud.sdk.api.assortment.order.response.order.MultiOrderRefundResponse
;
import
com.freemud.sdk.api.assortment.payment.biz.ReceiverBiz
;
import
com.freemud.sdk.api.assortment.payment.constant.ConstantPaymentReqType
;
import
com.freemud.sdk.api.assortment.payment.constant.ResponseConstant
;
import
com.freemud.sdk.api.assortment.payment.domain.AccountDivideVo
;
import
com.freemud.sdk.api.assortment.payment.enums.PayRuleIdEnum
;
import
com.freemud.sdk.api.assortment.payment.enums.PayRuleTypeEnum
;
import
com.freemud.sdk.api.assortment.payment.enums.PaymentRefundStatus
;
import
com.freemud.sdk.api.assortment.payment.enums.PlatformType
;
import
com.freemud.sdk.api.assortment.payment.request.OrderRefundRequest
;
import
com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest
;
import
com.freemud.sdk.api.assortment.payment.response.OrderRefundResponse
;
import
com.freemud.sdk.api.assortment.payment.service.ReceiverService
;
import
com.google.common.collect.Lists
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.ObjectUtils
;
...
...
@@ -100,8 +100,11 @@ public class PayServiceImpl {
private
SvcComPayClient
svcComPayClient
;
@Autowired
private
MulitiPaymentClient
mulitiPaymentClient
;
//OMSPaymentClient与PaymentNewClient都是payment-center-api服务,接口不能重复
@Autowired
private
PaymentNewClient
paymentNewClient
;
@Autowired
private
OMSPaymentClient
omsPaymentClient
;
@Autowired
private
AssortmentOpenPlatformWxappManager
openPlatformWxappManager
;
...
...
@@ -822,7 +825,7 @@ public class PayServiceImpl {
/**
* 支付查询
*/
public
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
PaymentQueryResponseDto
>
payQuery
(
PaymentQueryRequestDto
request
){
public
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
PaymentQueryResponseDto
>
payQuery
(
PaymentQueryRequestDto
request
){
return
paymentNewClient
.
payQuery
(
request
);
}
...
...
@@ -1288,7 +1291,7 @@ public class PayServiceImpl {
paymentQueryOrderRequest
.
setPartnerId
(
refundRequest
.
getPartnerId
());
paymentQueryOrderRequest
.
setStoreId
(
refundRequest
.
getStoreId
());
paymentQueryOrderRequest
.
setFrontTransId
(
refundRequest
.
getOrgTransId
());
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
PaymentQueryOrderResponseDto
>
payQueryOrderResponse
=
paymentNew
Client
.
payQueryOrder
(
paymentQueryOrderRequest
);
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
PaymentQueryOrderResponseDto
>
payQueryOrderResponse
=
omsPayment
Client
.
payQueryOrder
(
paymentQueryOrderRequest
);
Long
vipAmount
=
0L
;
String
payCode
=
null
;
if
(
Objects
.
equals
(
payQueryOrderResponse
.
getCode
(),
"100"
)
&&
payQueryOrderResponse
.
getData
()
!=
null
)
{
...
...
@@ -1329,22 +1332,22 @@ public class PayServiceImpl {
// request.setAccountDivided(receiveJsonStr);
// }
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
PayRefundResponseDto
>
refundNewResponse
=
paymentNew
Client
.
payRefund
(
request
);
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
PayRefundResponseDto
>
refundNewResponse
=
omsPayment
Client
.
payRefund
(
request
);
if
(
Objects
.
equals
(
refundNewResponse
.
getCode
(),
"100"
)
||
Objects
.
equals
(
refundNewResponse
.
getCode
(),
"101"
))
{
PayRefundResponseDto
res
=
refundNewResponse
.
getData
();
if
(
null
!=
res
&&
null
!=
res
.
getData
())
{
PayRefundData
refunData
=
res
.
getData
();
PayRefundData
refun
d
Data
=
res
.
getData
();
OrderRefundResponse
refundResponse
=
new
OrderRefundResponse
();
refundResponse
.
setStatusCode
(
refunData
.
getResultCode
());
refundResponse
.
setMsg
(
refunData
.
getResultMsg
());
refundResponse
.
setRefundAmount
(
refunData
.
getRefundAmount
());
refundResponse
.
setTotalAmount
(
refunData
.
getTotalAmount
());
refundResponse
.
setRefundStatus
(
this
.
getRefundStatus
(
refunData
.
getResultCode
()));
refundResponse
.
setRefundTradeNo
(
refunData
.
getRefundTradeNo
());
refundResponse
.
setTradeNo
(
refunData
.
getRefundTradeNo
());
refundResponse
.
setThirdPartRefundTradeNo
(
refunData
.
getThirdPartRefundTradeNo
());
refundResponse
.
setThirdPartTradeNo
(
refunData
.
getThirdPartTradeNo
());
refundResponse
.
setTotalAmount
(
refunData
.
getTotalAmount
());
refundResponse
.
setStatusCode
(
refun
d
Data
.
getResultCode
());
refundResponse
.
setMsg
(
refun
d
Data
.
getResultMsg
());
refundResponse
.
setRefundAmount
(
refun
d
Data
.
getRefundAmount
());
refundResponse
.
setTotalAmount
(
refun
d
Data
.
getTotalAmount
());
refundResponse
.
setRefundStatus
(
this
.
getRefundStatus
(
refun
d
Data
.
getResultCode
()));
refundResponse
.
setRefundTradeNo
(
refun
d
Data
.
getRefundTradeNo
());
refundResponse
.
setTradeNo
(
refun
d
Data
.
getRefundTradeNo
());
refundResponse
.
setThirdPartRefundTradeNo
(
refun
d
Data
.
getThirdPartRefundTradeNo
());
refundResponse
.
setThirdPartTradeNo
(
refun
d
Data
.
getThirdPartTradeNo
());
refundResponse
.
setTotalAmount
(
refun
d
Data
.
getTotalAmount
());
return
ResponseUtils
.
success
(
refundResponse
);
}
...
...
order-application-service/src/main/java/cn/freemud/service/thirdparty/PaymentNewClient.java
View file @
c3628c61
...
...
@@ -79,17 +79,17 @@ public interface PaymentNewClient {
@PostMapping
(
"paymentcenter/query"
)
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
PaymentQueryResponseDto
>
payQuery
(
@RequestBody
PaymentQueryRequestDto
request
);
/**
* 支付退款查询
*/
@LogIgnoreFeign
(
logMessage
=
"payQueryOrder"
)
@PostMapping
(
"paymentcenter/queryOrder"
)
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
PaymentQueryOrderResponseDto
>
payQueryOrder
(
@RequestBody
PaymentQueryOrderRequestDto
request
);
//
/**
//
* 支付退款查询
//
*/
//
@LogIgnoreFeign(logMessage="payQueryOrder")
//
@PostMapping("paymentcenter/queryOrder")
//
com.freemud.application.sdk.api.base.BaseResponse<PaymentQueryOrderResponseDto> payQueryOrder(@RequestBody PaymentQueryOrderRequestDto request);
/**
* 现金支付退款接口
*/
@LogIgnoreFeign
(
logMessage
=
"payRefund"
)
@PostMapping
(
"paymentcenter/refund"
)
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
PayRefundResponseDto
>
payRefund
(
@RequestBody
PayRefundRequestDto
request
);
//
/**
//
* 现金支付退款接口
//
*/
//
@LogIgnoreFeign(logMessage="payRefund")
//
@PostMapping("paymentcenter/refund")
//
com.freemud.application.sdk.api.base.BaseResponse<PayRefundResponseDto> payRefund(@RequestBody PayRefundRequestDto request);
}
order-management/src/main/java/cn/freemud/management/service/handle/PaymentHandle.java
View file @
c3628c61
...
...
@@ -11,7 +11,7 @@ import cn.freemud.management.entities.dto.response.pay.PaymentQueryOrderResponse
import
cn.freemud.management.enums.ResponseResult
;
import
cn.freemud.management.intercept.OrderServiceException
;
import
cn.freemud.management.thirdparty.MulitiPaymentClient
;
import
cn.freemud.management.thirdparty.
PaymentNew
Client
;
import
cn.freemud.management.thirdparty.
OMSPayment
Client
;
import
cn.freemud.management.util.RedisUtil
;
import
cn.freemud.redis.RedisCache
;
import
com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformIappWxappStore
;
...
...
@@ -78,7 +78,7 @@ public class PaymentHandle {
// private PaymentNewService paymentNewService;
@Autowired
private
PaymentNew
Client
paymentNewClient
;
private
OMSPayment
Client
paymentNewClient
;
@Autowired
private
AssortmentOpenPlatformIappWxappStoreManager
assortmentOpenPlatformIappWxappStoreManager
;
...
...
order-management/src/main/java/cn/freemud/management/thirdparty/
PaymentNew
Client.java
→
order-management/src/main/java/cn/freemud/management/thirdparty/
OMSPayment
Client.java
View file @
c3628c61
...
...
@@ -14,7 +14,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Title:
PaymentNew
Client
* @Title:
OMSPayment
Client
* @Package cn.freemud.service.thirdparty
* @Description:
* @author: ping1.wu
...
...
@@ -24,7 +24,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
*/
@FeignClient
(
name
=
"payment-center-api"
,
url
=
"${payment.new.baseUrl:}"
)
@RequestMapping
(
produces
=
{
"application/json;charset=UTF-8"
})
public
interface
PaymentNew
Client
{
public
interface
OMSPayment
Client
{
/**
* 关闭预支付订单
...
...
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