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
dd965948
Commit
dd965948
authored
Apr 30, 2022
by
周晓航
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改成批量操作
parent
7ad343d8
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
60 additions
and
42 deletions
+60
-42
order-application-service/src/main/java/cn/freemud/entities/vo/OrderDevelopRefundVo.java
+2
-1
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+58
-41
No files found.
order-application-service/src/main/java/cn/freemud/entities/vo/OrderDevelopRefundVo.java
View file @
dd965948
...
...
@@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
java.util.List
;
/**
* @author : xh.Z
...
...
@@ -18,7 +19,7 @@ public class OrderDevelopRefundVo {
* 订单号
*/
@NotBlank
(
message
=
"订单编号不能为空"
)
private
String
orderCode
;
private
List
<
String
>
orderCodes
;
private
String
partnerId
;
...
...
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
dd965948
...
...
@@ -157,7 +157,6 @@ import java.util.stream.Collectors;
import
static
cn
.
freemud
.
constant
.
OrderRefundConstant
.
ALLOW_REFUND
;
@Service
public
class
OrderServiceImpl
implements
Orderservice
{
...
...
@@ -675,7 +674,7 @@ public class OrderServiceImpl implements Orderservice {
return
newSendPaySuccessNoticeMessage
();
}
//无售后单,退款回掉取消订单,冲正库存等
if
(
CollectionUtils
.
isEmpty
(
orderBean
.
getRefundList
()))
{
if
(
CollectionUtils
.
isEmpty
(
orderBean
.
getRefundList
()))
{
return
cancelOrder
(
orderBean
);
}
//订单状态
...
...
@@ -980,7 +979,7 @@ public class OrderServiceImpl implements Orderservice {
// 所以在这个地方排除掉coco,在下边单独实现
//参与支付有礼活动
// if (!cocoPartnerId.contains(queryOrderVo.getPartnerId())) {
joinPayGift
(
queryOrderVo
.
getSessionId
(),
queryOrderResponseVo
,
partnerId
,
queryOrderVo
.
getPayGiftVer
());
joinPayGift
(
queryOrderVo
.
getSessionId
(),
queryOrderResponseVo
,
partnerId
,
queryOrderVo
.
getPayGiftVer
());
// }
}
catch
(
Exception
e
)
{
...
...
@@ -1256,7 +1255,7 @@ public class OrderServiceImpl implements Orderservice {
// 所以在这个地方排除掉coco,在下边单独实现
//参与支付有礼活动
// if (!cocoPartnerId.contains(queryOrderVo.getPartnerId())) {
joinPayGift
(
queryOrderVo
.
getSessionId
(),
queryOrderResponseVo
,
partnerId
,
queryOrderVo
.
getPayGiftVer
());
joinPayGift
(
queryOrderVo
.
getSessionId
(),
queryOrderResponseVo
,
partnerId
,
queryOrderVo
.
getPayGiftVer
());
// }
}
catch
(
Exception
e
)
{
AppLogUtil
.
errorLog
(
"queryOrders_activity_error"
,
gson
.
toJson
(
queryOrdersRequest
),
gson
.
toJson
(
queryOrderResponseVo
),
e
);
...
...
@@ -1897,7 +1896,7 @@ public class OrderServiceImpl implements Orderservice {
// 这里如果发现会员id不一致,就去查询会员合并数据,重新匹配一下
// 不要在外面查, 大部分情况不会进这个if, 不影响通常逻辑下的tps
List
<
String
>
memberIds
=
memberInfoManager
.
getMemberAllIds
(
partnerId
,
memberId
);
if
(!
memberIds
.
contains
(
orderByIdResponseDto
.
getData
().
getUserId
()))
if
(!
memberIds
.
contains
(
orderByIdResponseDto
.
getData
().
getUserId
()))
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_QUERYORDER_ERROR
.
getCode
(),
"不能操作非本人的订单"
);
}
OrderBeanV1
orderBean
=
orderByIdResponseDto
.
getData
();
...
...
@@ -1911,7 +1910,7 @@ public class OrderServiceImpl implements Orderservice {
}
// 微商城订单
if
(
Objects
.
equals
(
BizTypeEnum
.
MALL
.
getBizType
()
,
orderBean
.
getBizType
())
||
Objects
.
equals
(
"23"
,
orderBean
.
getOrderClient
()))
{
if
(
Objects
.
equals
(
BizTypeEnum
.
MALL
.
getBizType
()
,
orderBean
.
getBizType
())
||
Objects
.
equals
(
"23"
,
orderBean
.
getOrderClient
()))
{
// 微商城因为没有退款原因选项 所以将用户退款说明用户作为退款原因
orderRefundVo
.
setReason
(
orderRefundVo
.
getRemarks
());
// 必须选择退款方式
...
...
@@ -1929,8 +1928,7 @@ public class OrderServiceImpl implements Orderservice {
&&
(
StringUtils
.
isBlank
(
orderBean
.
getSpellGroupCode
())
||
StringUtils
.
isBlank
(
orderBean
.
getSpellGroupActivityCode
())))
{
return
ResponseUtil
.
error
(
ResponseResult
.
SPELL_GROUP_QUERY_GROUP_WORK_ERROR
);
}
}
else
if
(
NewOrderStatus
.
DELIVERING
.
getIndex
().
equals
(
orderBean
.
getStatusV2
()))
{
}
else
if
(
NewOrderStatus
.
DELIVERING
.
getIndex
().
equals
(
orderBean
.
getStatusV2
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"订单配送中,退款请联系售后!"
);
}
...
...
@@ -1958,7 +1956,7 @@ public class OrderServiceImpl implements Orderservice {
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"商家正在处理中,请稍后……"
);
}
//商城订单可二次发起退款
if
(!
Objects
.
equals
(
BizTypeEnum
.
MALL
.
getBizType
(),
orderBean
.
getBizType
())
&&
RefundStatus
.
REFUSE_REFUND
.
getCode
().
equals
(
refundBean
.
getStatus
()))
{
if
(!
Objects
.
equals
(
BizTypeEnum
.
MALL
.
getBizType
(),
orderBean
.
getBizType
())
&&
RefundStatus
.
REFUSE_REFUND
.
getCode
().
equals
(
refundBean
.
getStatus
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"您的申请已被商家拒绝,请联系门店沟通。"
);
}
}
...
...
@@ -1970,7 +1968,7 @@ public class OrderServiceImpl implements Orderservice {
boolean
isRefundDeliveryFee
=
true
;
//商城查询配送费
if
(
Objects
.
equals
(
BizTypeEnum
.
MALL
.
getBizType
(),
orderBean
.
getBizType
())
if
(
Objects
.
equals
(
BizTypeEnum
.
MALL
.
getBizType
(),
orderBean
.
getBizType
())
&&
StringUtils
.
isNotEmpty
(
orderBean
.
getExtInfo
()))
{
JSONObject
extInfoJsonObject
=
JSONObject
.
parseObject
(
orderBean
.
getExtInfo
());
OrderExtInfoDto
orderExtInfoDto
=
extInfoJsonObject
.
toJavaObject
(
OrderExtInfoDto
.
class
);
...
...
@@ -2349,7 +2347,7 @@ public class OrderServiceImpl implements Orderservice {
spuIds
.
add
(
productDto
.
getProductId
());
}
Map
<
String
,
GetProductsVo
>
products
=
itemService
.
getSpuProducts
(
spuIds
,
createOrderDto
.
getCompanyId
(),
createOrderDto
.
getShopId
(),
createOrderDto
.
getMenuType
());
if
(
products
==
null
)
{
if
(
products
==
null
)
{
return
createOrderDto
;
}
if
(
products
.
isEmpty
())
{
...
...
@@ -3311,6 +3309,7 @@ public class OrderServiceImpl implements Orderservice {
/**
* 支付退款成功,订单未创建售后单
*
* @return
*/
private
String
cancelOrder
(
OrderBeanV1
orderBean
)
{
...
...
@@ -3346,7 +3345,7 @@ public class OrderServiceImpl implements Orderservice {
userLoginInfoDto
=
new
AssortmentCustomerInfoVo
();
userLoginInfoDto
.
setMemberId
(
orderBean
.
getUserId
());
userLoginInfoDto
.
setWxAppId
(
orderBean
.
getAppId
());
}
else
{
}
else
{
// 校验用户是否登录
BaseResponse
<
AssortmentCustomerInfoVo
>
baseResponse
=
this
.
checkUserLoginInfoDto
(
orderRefundVo
.
getSessionId
());
if
(!
Objects
.
equals
(
baseResponse
.
getCode
(),
ResponseResult
.
SUCCESS
.
getCode
()))
{
...
...
@@ -3375,7 +3374,7 @@ public class OrderServiceImpl implements Orderservice {
// 走正常退款订单逻辑 这里是否可以丢MQ 异步操作
try
{
this
.
doCouponOrderRefund
(
orderBean
,
orderRefundVo
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
RefundFailureRequestDTO
requestDTO
=
RefundFailureRequestDTO
.
builder
().
orderCode
(
orderBean
.
getOid
())
.
failureType
(
RefundFailureRequestDTO
.
FAILURETYPE_SYSTEM_ERROR
)
.
reason
(
JSON
.
toJSONString
(
e
.
getMessage
()))
...
...
@@ -3388,7 +3387,6 @@ public class OrderServiceImpl implements Orderservice {
}
/**
*
* @param orderBean
* @return
*/
...
...
@@ -3416,7 +3414,8 @@ public class OrderServiceImpl implements Orderservice {
}
/**
* 调用券码作废操作
* 调用券码作废操作
*
* @param orderBean
* @return
*/
...
...
@@ -3438,7 +3437,7 @@ public class OrderServiceImpl implements Orderservice {
CouponResponseDTO
<
CheckAndCancelResponseDTO
>
responseDTO
=
couponOnlineClient
.
checkandcancel
(
request
);
if
(
responseDTO
==
null
||
!
Objects
.
equals
(
responseDTO
.
getStatusCode
(),
100
))
{
||
!
Objects
.
equals
(
responseDTO
.
getStatusCode
(),
100
))
{
// 直接接口调用失败,
return
ResponseUtil
.
error
(
ResponseResult
.
COUPON_CANCEL_FAIL
.
getCode
(),
"操作失败,请稍后重试"
);
}
...
...
@@ -3476,7 +3475,7 @@ public class OrderServiceImpl implements Orderservice {
QueryRefundFailuresListReq
queryRefundFailuresListReq
=
new
QueryRefundFailuresListReq
();
queryRefundFailuresListReq
.
setId
(
orderRefundRetryVo
.
getId
());
BaseResponse
<
List
<
QueryRefundFailuresListDto
>>
queryRefundFailuresListDtoBaseResponse
=
orderServiceClient
.
refundFailuresList
(
queryRefundFailuresListReq
);
if
(!
ResponseConstant
.
SUCCESS_RESPONSE_CODE_STR
.
equals
(
queryRefundFailuresListDtoBaseResponse
.
getCode
())
if
(!
ResponseConstant
.
SUCCESS_RESPONSE_CODE_STR
.
equals
(
queryRefundFailuresListDtoBaseResponse
.
getCode
())
||
CollectionUtils
.
isEmpty
(
queryRefundFailuresListDtoBaseResponse
.
getResult
())
||
queryRefundFailuresListDtoBaseResponse
.
getResult
().
size
()
!=
1
)
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"该记录不存在或查询异常"
);
...
...
@@ -3486,11 +3485,11 @@ public class OrderServiceImpl implements Orderservice {
// 查询订单
BaseResponse
<
OrderBeanV1
>
orderResponse
=
this
.
checkOrderAndGetOrderBean
(
queryRefundFailuresListDto
.
getOrderCode
());
if
(!
Objects
.
equals
(
orderResponse
.
getCode
(),
ResponseResult
.
SUCCESS
.
getCode
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"订单数据查询失败:"
+
orderResponse
.
getMessage
());
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"订单数据查询失败:"
+
orderResponse
.
getMessage
());
}
OrderBeanV1
orderBean
=
orderResponse
.
getResult
();
AfterSalesOrderResp
afterSalesOrderResp
=
orderBean
.
getAfterSalesOrderResp
();
if
(
afterSalesOrderResp
==
null
)
{
if
(
afterSalesOrderResp
==
null
)
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"不存在售后单信息"
);
}
...
...
@@ -3501,7 +3500,7 @@ public class OrderServiceImpl implements Orderservice {
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"处理中,请稍等。"
);
}
if
(
Integer
.
valueOf
(
1
).
equals
(
queryRefundFailuresListDto
.
getLastFailureType
())
||
Integer
.
valueOf
(
2
).
equals
(
queryRefundFailuresListDto
.
getLastFailureType
()))
{
if
(
Integer
.
valueOf
(
1
).
equals
(
queryRefundFailuresListDto
.
getLastFailureType
())
||
Integer
.
valueOf
(
2
).
equals
(
queryRefundFailuresListDto
.
getLastFailureType
()))
{
Long
refundId
=
System
.
currentTimeMillis
();
if
(
orderBean
.
getAmount
()
!=
0
)
{
...
...
@@ -3510,7 +3509,7 @@ public class OrderServiceImpl implements Orderservice {
MultiOrderRefundRequest
multiOrderRefundRequest
=
orderAdapter
.
getMultiOrderPayRefundRequest
(
orderBean
,
refundId
);
MultiOrderRefundResponse
multiOrderRefundResponse
=
payServiceImpl
.
paymentApplicationRefund
(
multiOrderRefundRequest
,
orderBean
.
getCompanyId
());
if
(
multiOrderRefundResponse
==
null
||
multiOrderRefundResponse
.
getData
()
==
null
||
!
ResponseCodeConstant
.
RESPONSE_SUCCESS_200
.
equals
(
multiOrderRefundResponse
.
getCode
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"调用支付退款接口失败:"
+
JSON
.
toJSONString
(
multiOrderRefundResponse
));
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"调用支付退款接口失败:"
+
JSON
.
toJSONString
(
multiOrderRefundResponse
));
}
List
<
MultiOrderRefundResponse
.
RefundPlatformResponse
>
refundPlatformResponseList
=
multiOrderRefundResponse
.
getData
().
refundPlatformResponseList
;
if
(
null
!=
refundPlatformResponseList
&&
refundPlatformResponseList
.
size
()
>
0
)
{
...
...
@@ -3523,10 +3522,10 @@ public class OrderServiceImpl implements Orderservice {
orderPayRefundRequest
.
setRefundDesc
(
"退款失败人工重试"
);
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
OrderRefundResponse
>
response
=
payServiceImpl
.
orderRefund
(
orderPayRefundRequest
);
if
(
response
==
null
||
response
.
getData
()
==
null
||
!
ResponseCodeConstant
.
RESPONSE_SUCCESS_STR
.
equals
(
response
.
getCode
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"调用支付退款接口失败:"
+
JSON
.
toJSONString
(
response
));
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"调用支付退款接口失败:"
+
JSON
.
toJSONString
(
response
));
}
if
(!
ResponseConstant
.
SUCCESS_RESPONSE_CODE
.
equals
(
response
.
getData
().
getStatusCode
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"支付退款失败:"
+
JSON
.
toJSONString
(
response
));
if
(!
ResponseConstant
.
SUCCESS_RESPONSE_CODE
.
equals
(
response
.
getData
().
getStatusCode
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"支付退款失败:"
+
JSON
.
toJSONString
(
response
));
}
}
}
...
...
@@ -3536,7 +3535,7 @@ public class OrderServiceImpl implements Orderservice {
refundFailuresSuccessfulReq
.
setOrderCode
(
orderBean
.
getOid
());
refundFailuresSuccessfulReq
.
setPartnerId
(
orderBean
.
getCompanyId
());
BaseResponse
baseResponse
=
orderServiceClient
.
refundFailuresSuccessful
(
refundFailuresSuccessfulReq
);
if
(!
ResponseConstant
.
SUCCESS_RESPONSE_CODE_STR
.
equals
(
baseResponse
.
getCode
()))
{
if
(!
ResponseConstant
.
SUCCESS_RESPONSE_CODE_STR
.
equals
(
baseResponse
.
getCode
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"处理完成但更新记录失败"
);
}
...
...
@@ -3554,7 +3553,7 @@ public class OrderServiceImpl implements Orderservice {
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"基础服务订单退款完成失败"
);
}
stockHandle
.
revert
(
null
,
orderBean
);
stockHandle
.
revert
(
null
,
orderBean
);
}
else
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"暂不支持该操作"
);
...
...
@@ -3563,7 +3562,7 @@ public class OrderServiceImpl implements Orderservice {
}
catch
(
Exception
e
)
{
throw
e
;
}
finally
{
LockUtils
.
unlock
(
redisCache
.
getRedisTemplate
(),
lockKey
);
LockUtils
.
unlock
(
redisCache
.
getRedisTemplate
(),
lockKey
);
}
return
ResponseUtil
.
success
();
...
...
@@ -3571,12 +3570,31 @@ public class OrderServiceImpl implements Orderservice {
@Override
public
BaseResponse
developRefund
(
OrderDevelopRefundVo
orderRefundVo
)
{
if
(
CollectionUtils
.
isEmpty
(
orderRefundVo
.
getOrderCodes
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_QUERYORDER_ERROR
.
getCode
(),
"未传递订单号"
);
}
BaseResponse
finalResp
=
new
BaseResponse
();
Map
<
String
,
String
>
resultMap
=
new
HashMap
<>();
orderRefundVo
.
getOrderCodes
().
forEach
(
orderCode
->
{
BaseResponse
resp
=
this
.
batchDevelopRefund
(
orderRefundVo
,
orderCode
);
if
(
Objects
.
equals
(
resp
.
getCode
(),
ResponseResult
.
SUCCESS
.
getCode
()))
{
resultMap
.
put
(
orderCode
,
"成功"
);
}
else
{
resultMap
.
put
(
orderCode
,
resp
.
getMessage
());
}
});
return
finalResp
;
}
private
BaseResponse
batchDevelopRefund
(
OrderDevelopRefundVo
orderRefundVo
,
String
orderCode
)
{
if
(
StringUtils
.
isEmpty
(
orderRefundVo
.
getReason
()))
{
orderRefundVo
.
setReason
(
"内部操作退款,操作人:"
+
orderRefundVo
.
getOperator
());
}
// 查询订单
BaseQueryOrderRequest
baseQueryOrderRequest
=
new
BaseQueryOrderRequest
();
baseQueryOrderRequest
.
setOrderId
(
order
RefundVo
.
getOrderCode
()
);
baseQueryOrderRequest
.
setOrderId
(
order
Code
);
baseQueryOrderRequest
.
setTrackingNo
(
LogThreadLocal
.
getTrackingNo
());
QueryOrderByIdResponse
queryOrderByIdResponse
=
orderCenterSdkService
.
queryOrderById
(
baseQueryOrderRequest
);
String
string
=
JSONObject
.
toJSONString
(
queryOrderByIdResponse
);
...
...
@@ -3594,7 +3612,7 @@ public class OrderServiceImpl implements Orderservice {
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"订单已取消,无法退款"
);
}
// 微商城订单
if
(
Objects
.
equals
(
BizTypeEnum
.
MALL
.
getBizType
()
,
orderBean
.
getBizType
())
||
Objects
.
equals
(
"23"
,
orderBean
.
getOrderClient
()))
{
if
(
Objects
.
equals
(
BizTypeEnum
.
MALL
.
getBizType
()
,
orderBean
.
getBizType
())
||
Objects
.
equals
(
"23"
,
orderBean
.
getOrderClient
()))
{
// 完成/配送中 可以选择退货退款
List
<
Integer
>
refundGoodsCodes
=
Arrays
.
asList
(
NewOrderStatus
.
DELIVERING
.
getIndex
(),
NewOrderStatus
.
COMPLETE
.
getIndex
());
...
...
@@ -3606,7 +3624,7 @@ public class OrderServiceImpl implements Orderservice {
&&
(
StringUtils
.
isBlank
(
orderBean
.
getSpellGroupCode
())
||
StringUtils
.
isBlank
(
orderBean
.
getSpellGroupActivityCode
())))
{
return
ResponseUtil
.
error
(
ResponseResult
.
SPELL_GROUP_QUERY_GROUP_WORK_ERROR
);
}
}
else
if
(
NewOrderStatus
.
DELIVERING
.
getIndex
().
equals
(
orderBean
.
getStatusV2
()))
{
}
else
if
(
NewOrderStatus
.
DELIVERING
.
getIndex
().
equals
(
orderBean
.
getStatusV2
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"订单配送中,退款请联系售后!"
);
}
...
...
@@ -3614,7 +3632,7 @@ public class OrderServiceImpl implements Orderservice {
if
(
PayStatus
.
HAVE_PAID
.
getCode
().
equals
(
orderBean
.
getPayStatus
()))
{
boolean
isRefundDeliveryFee
=
true
;
//商城查询配送费
if
(
Objects
.
equals
(
BizTypeEnum
.
MALL
.
getBizType
(),
orderBean
.
getBizType
())
if
(
Objects
.
equals
(
BizTypeEnum
.
MALL
.
getBizType
(),
orderBean
.
getBizType
())
&&
StringUtils
.
isNotEmpty
(
orderBean
.
getExtInfo
()))
{
JSONObject
extInfoJsonObject
=
JSONObject
.
parseObject
(
orderBean
.
getExtInfo
());
OrderExtInfoDto
orderExtInfoDto
=
extInfoJsonObject
.
toJavaObject
(
OrderExtInfoDto
.
class
);
...
...
@@ -3636,7 +3654,7 @@ public class OrderServiceImpl implements Orderservice {
}
}
}
}
else
{
}
else
{
// 查询小程序是否配置了退运费
String
configStr
=
redisCache
.
hashGet
(
MessageFormat
.
format
(
OrderRedisKeyConstant
.
ORDER_REFUND_CONFIG
,
orderBean
.
getCompanyId
(),
orderBean
.
getAppId
()),
OrderRedisKeyConstant
.
HashKeyForOrderRefundConfig
.
TAKE_OUT
);
if
(
StringUtils
.
isNotEmpty
(
configStr
))
{
...
...
@@ -3655,7 +3673,7 @@ public class OrderServiceImpl implements Orderservice {
if
(
NewOrderStatus
.
PLACE_AN_ORDER
.
getIndex
().
equals
(
orderBean
.
getStatusV2
()))
{
// 未接单的 请用户直接操作C端小程序处理
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER__ERRORREFUND
.
getCode
(),
"订单未接单,请指引用户C端操作退款!"
);
}
else
{
}
else
{
CancelOrderRequest
cancelOrderRequest
=
new
CancelOrderRequest
();
cancelOrderRequest
.
setPartnerId
(
orderBean
.
getCompanyId
());
cancelOrderRequest
.
setStoreId
(
orderBean
.
getShopId
());
...
...
@@ -3731,9 +3749,9 @@ public class OrderServiceImpl implements Orderservice {
//支付退款
PayRefundResponse
refundResponse
;
try
{
if
(
null
!=
orderBean
.
getOrderPayItem
()
&&
orderBean
.
getOrderPayItem
().
size
()>
0
)
{
if
(
null
!=
orderBean
.
getOrderPayItem
()
&&
orderBean
.
getOrderPayItem
().
size
()
>
0
)
{
refundResponse
=
paymentHandle
.
multiRefund
(
orderBean
);
}
else
{
}
else
{
refundResponse
=
paymentHandle
.
refund
(
"用户买券订单-申请退款"
,
orderBean
);
}
if
(
refundResponse
.
getPayRefundStatus
().
getCode
().
compareTo
(
PayRefundStatus
.
SUCCESS
.
getCode
())
!=
0
)
{
...
...
@@ -3750,7 +3768,7 @@ public class OrderServiceImpl implements Orderservice {
orderServiceClient
.
refundFailures
(
requestDTO
);
}
state
=
refundResponse
.
getPayRefundStatus
().
getCode
();
}
catch
(
OrderServiceException
orderEx
){
}
catch
(
OrderServiceException
orderEx
)
{
// 系统异常
RefundFailureRequestDTO
requestDTO
=
RefundFailureRequestDTO
.
builder
().
orderCode
(
orderBean
.
getOid
())
.
failureType
(
RefundFailureRequestDTO
.
FAILURETYPE_SYSTEM_ERROR
)
...
...
@@ -3774,7 +3792,7 @@ public class OrderServiceImpl implements Orderservice {
}
else
if
(
Objects
.
equals
(
PayRefundStatus
.
SUCCESS
.
getCode
(),
state
))
{
//退款成功
cancelOrderRequest
.
setCreateEvent
(
AfterSalesOrderCreateEventEnum
.
REFUND_COMPLETE
.
getCreateEvent
());
}
else
{
}
else
{
// 退款失败,直接给基础服务null 用于后续补偿操作
cancelOrderRequest
.
setCreateEvent
(
null
);
}
...
...
@@ -3790,7 +3808,7 @@ public class OrderServiceImpl implements Orderservice {
}
if
(
Objects
.
nonNull
(
state
))
{
//冲正库存
stockHandle
.
revert
(
null
,
orderBean
);
stockHandle
.
revert
(
null
,
orderBean
);
}
// 删除订单 通知活动添加商品库存 status 需要老订单的 ordercode
// orderQueueService.backOrdersStatusChange(orderBean.getOrderCode(), orderBean.getOrderState(), orderBean.getPayState());
...
...
@@ -3822,11 +3840,11 @@ public class OrderServiceImpl implements Orderservice {
}
// fisherman 查询配置是否能退款 未完成
boolean
isTrue
=
orderAdapter
.
checkRefundButtionBizTypeIs6
(
orderBean
.
getCompanyId
(),
orderBean
.
getBizType
(),
orderBean
.
getStatus
(),
userLoginInfoDto
.
getWxAppId
(),
new
Date
(
orderBean
.
getGmtCreate
()),
orderBean
.
getOrderType
());
orderBean
.
getStatus
(),
userLoginInfoDto
.
getWxAppId
(),
new
Date
(
orderBean
.
getGmtCreate
()),
orderBean
.
getOrderType
());
if
(
isTrue
)
{
return
ResponseUtil
.
success
();
}
return
ResponseUtil
.
error
(
ResponseResult
.
COUPON_ORDER_COMMON_VERIFY_FAIL
.
getCode
(),
"虚拟券退款配置未启用,请联系客服"
);
return
ResponseUtil
.
error
(
ResponseResult
.
COUPON_ORDER_COMMON_VERIFY_FAIL
.
getCode
(),
"虚拟券退款配置未启用,请联系客服"
);
}
...
...
@@ -3869,7 +3887,6 @@ public class OrderServiceImpl implements Orderservice {
/**
* 发送支付成功模板消息
*
*/
public
void
sendMessageByNewApp
(
SendPaySuccessMessageVo
sendPaySuccessMessageVo
)
{
OrderBeanV1
orderBean
=
new
OrderBeanV1
();
...
...
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