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
312f284d
Commit
312f284d
authored
Sep 06, 2020
by
huiyang.chen
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/qa' into qa
parents
d6e872f8
2d8834cf
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
124 additions
and
46 deletions
+124
-46
order-application-service/src/main/java/cn/freemud/service/delivery/ThirdDeliveryServiceImpl.java
+1
-1
order-management/src/main/java/cn/freemud/management/service/OrderManagerService.java
+7
-0
order-management/src/main/java/cn/freemud/management/service/adapter/OrderManagerAdapter.java
+20
-0
order-management/src/main/java/cn/freemud/management/service/handle/OrderVerifyHandle.java
+33
-17
order-management/src/main/java/cn/freemud/management/service/handle/SaasOrderHandle.java
+13
-0
order-management/src/main/java/cn/freemud/management/service/impl/McCafeMangerServiceImpl.java
+16
-0
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/ActivityCalculationDiscountResponseDto.java
+2
-0
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/mcoffee/calculation/CalculationServiceImpl.java
+1
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/mcoffee/calculation/CouponDiscountCalculation.java
+31
-27
No files found.
order-application-service/src/main/java/cn/freemud/service/delivery/ThirdDeliveryServiceImpl.java
View file @
312f284d
...
@@ -163,7 +163,7 @@ public class ThirdDeliveryServiceImpl implements ThirdDeliveryService {
...
@@ -163,7 +163,7 @@ public class ThirdDeliveryServiceImpl implements ThirdDeliveryService {
if
(
reviewStatus
!=
null
&&
reviewStatus
.
equals
(
DeliveryReviewStatus
.
AGREE
.
getCode
())){
if
(
reviewStatus
!=
null
&&
reviewStatus
.
equals
(
DeliveryReviewStatus
.
AGREE
.
getCode
())){
orderManagerRequest
.
setOperateType
(
OperateType
.
ORDER_AGREE_REFUND
.
getOpType
());
orderManagerRequest
.
setOperateType
(
OperateType
.
ORDER_AGREE_REFUND
.
getOpType
());
orderManagerRequest
.
setReason
(
"配送回调-同意退款"
);
orderManagerRequest
.
setReason
(
"配送回调-同意退款"
);
return
orderManagerAdapter
.
order
Agree
Refund
(
orderManagerRequest
);
return
orderManagerAdapter
.
order
Pay
Refund
(
orderManagerRequest
);
}
}
if
(
reviewStatus
!=
null
&&
reviewStatus
.
equals
(
DeliveryReviewStatus
.
REJECT
.
getCode
())){
if
(
reviewStatus
!=
null
&&
reviewStatus
.
equals
(
DeliveryReviewStatus
.
REJECT
.
getCode
())){
orderManagerRequest
.
setOperateType
(
OperateType
.
ORDER_REJECT_REFUND
.
getOpType
());
orderManagerRequest
.
setOperateType
(
OperateType
.
ORDER_REJECT_REFUND
.
getOpType
());
...
...
order-management/src/main/java/cn/freemud/management/service/OrderManagerService.java
View file @
312f284d
...
@@ -81,5 +81,12 @@ public interface OrderManagerService {
...
@@ -81,5 +81,12 @@ public interface OrderManagerService {
return
ResponseUtil
.
success
();
return
ResponseUtil
.
success
();
}
}
/**
* 取消订单
*/
default
BaseResponse
<
OrderManagerResponse
>
orderCancel
(
OrderManagerRequest
request
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
){
return
ResponseUtil
.
success
();
}
}
}
order-management/src/main/java/cn/freemud/management/service/adapter/OrderManagerAdapter.java
View file @
312f284d
...
@@ -148,6 +148,26 @@ public class OrderManagerAdapter {
...
@@ -148,6 +148,26 @@ public class OrderManagerAdapter {
}
}
/**
/**
* 同意退款或者取消订单
*/
public
BaseResponse
orderPayRefund
(
OrderManagerRequest
request
)
{
//查询订单
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
=
orderBaseService
.
getByOrderCode
(
request
.
getOrderId
());
if
(
CollectionUtils
.
isNotEmpty
(
orderBean
.
getRefundList
())){
//订单接单参数校验
BaseResponse
verifyResponse
=
orderVerifyHandle
.
orderAgreeRefundMCCafe
(
orderBean
,
request
);
if
(
ObjectUtils
.
notEqual
(
verifyResponse
.
getCode
(),
ResponseResult
.
SUCCESS
.
getCode
()))
{
return
handleResponse
(
request
,
orderBean
,
verifyResponse
);
}
BaseResponse
<
OrderManagerResponse
>
orderManagerResponse
=
orderBeanFactory
.
getOrderManagerService
(
orderBean
).
orderAgreeRefund
(
request
,
orderBean
);
return
handleResponse
(
request
,
orderBean
,
orderManagerResponse
);
}
else
{
BaseResponse
<
OrderManagerResponse
>
orderManagerResponse
=
orderBeanFactory
.
getOrderManagerService
(
orderBean
).
orderCancel
(
request
,
orderBean
);
return
handleResponse
(
request
,
orderBean
,
orderManagerResponse
);
}
}
/**
* 拒绝退款
* 拒绝退款
* @param request
* @param request
* @return
* @return
...
...
order-management/src/main/java/cn/freemud/management/service/handle/OrderVerifyHandle.java
View file @
312f284d
...
@@ -229,25 +229,41 @@ public class OrderVerifyHandle {
...
@@ -229,25 +229,41 @@ public class OrderVerifyHandle {
if
(
orderBean
.
getHasRefund
()
==
null
if
(
orderBean
.
getHasRefund
()
==
null
||
!
orderBean
.
getHasRefund
()
||
!
orderBean
.
getHasRefund
()
||
orderBean
.
getRefundList
().
get
(
orderBean
.
getRefundList
().
size
()
-
1
).
getStatus
()
!=
1
)
{
||
orderBean
.
getRefundList
().
get
(
orderBean
.
getRefundList
().
size
()
-
1
).
getStatus
()
!=
1
)
{
CancelOrderRequest
cancelOrderRequest
=
new
CancelOrderRequest
();
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_REFUND_NOT_APPLY
);
cancelOrderRequest
.
setPartnerId
(
orderBean
.
getCompanyId
());
}
cancelOrderRequest
.
setStoreId
(
orderBean
.
getShopId
());
//订单是否支持退款
cancelOrderRequest
.
setOrderId
(
orderBean
.
getOid
());
boolean
isCanRefund
=
false
;
cancelOrderRequest
.
setOrderClient
(
orderSdkAdapter
.
getNewOrderClient
(
orderBean
.
getSource
()));
//订单
boolean
isRefundDeliveryFee
=
false
;
//传入的售后单类型为:2:售中用户取消 8:售后申请
//saas渠道订单,已完成的订单不能操作, 商户配置已完成订单可退款可退款
cancelOrderRequest
.
setAfterSalesType
(
AfterSalesType
.
USER_CANCEL
);
if
(
ObjectUtils
.
equals
(
orderBean
.
getSource
(),
OrderSource
.
SAAS
.
getSource
()))
{
cancelOrderRequest
.
setReason
(
"餐道主动取消"
);
isCanRefund
=
getRefundConfig
(
orderBean
);
cancelOrderRequest
.
setReqRemark
(
"餐道直接取消"
);
if
(!
isCanRefund
)
{
cancelOrderRequest
.
setOperator
(
orderBean
.
getUserName
());
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_HAD_AFFIRM_CAN_NOT_REFUND
);
cancelOrderRequest
.
setTrackingNo
(
LogTreadLocal
.
getTrackingNo
());
cancelOrderRequest
.
setRefundDeliveryAmount
(
true
);
BaseOrderResponse
baseResponseDto
=
orderCenterSdkService
.
orderCancel
(
cancelOrderRequest
);
if
(!
ResponseCodeConstant
.
RESPONSE_SUCCESS
.
equals
(
baseResponseDto
.
getErrcode
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_REFUND_NOT_APPLY
);
}
}
}
}
if
(
isCanRefund
)
{
orderBean
.
setAmount
(
getRefundAmount
(
orderBean
,
isRefundDeliveryFee
).
longValue
());
}
return
ResponseUtil
.
success
();
}
/**
* 麦咖啡同意退款
*
* @param orderBean
* @param request
* @return
*/
public
BaseResponse
orderAgreeRefundMCCafe
(
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
,
OrderManagerRequest
request
)
{
//已取消的订单不能操作
if
(
ObjectUtils
.
equals
(
OrderStatus
.
CANCEL
.
getCode
(),
orderBean
.
getStatus
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_HAS_CANCELED
);
}
if
(
CollectionUtils
.
isNotEmpty
(
orderBean
.
getRefundList
())
&&
orderBean
.
getRefundList
().
get
(
orderBean
.
getRefundList
().
size
()
-
1
).
getStatus
()
!=
1
)
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_REFUND_NOT_APPLY
);
}
//订单是否支持退款
//订单是否支持退款
boolean
isCanRefund
=
false
;
boolean
isCanRefund
=
false
;
//订单
//订单
...
...
order-management/src/main/java/cn/freemud/management/service/handle/SaasOrderHandle.java
View file @
312f284d
...
@@ -183,5 +183,18 @@ public class SaasOrderHandle {
...
@@ -183,5 +183,18 @@ public class SaasOrderHandle {
return
ResponseUtil
.
success
();
return
ResponseUtil
.
success
();
}
}
/**
* 取消订单
*/
public
BaseResponse
orderCancel
(
OrderManagerRequest
request
,
PayRefundResponse
refundResponse
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
)
{
//作废订单
CancelOrderRequest
cancelOrderRequest
=
orderSdkAdapter
.
getCancelOrderRequest
(
request
.
getOperator
(),
request
.
getReason
(),
refundResponse
.
getPayRefundStatus
(),
refundResponse
.
getRefundId
(),
orderBean
);
BaseOrderResponse
baseOrderResponse
=
orderCenterSdkService
.
orderCancel
(
cancelOrderRequest
);
if
(
baseOrderResponse
==
null
||
ObjectUtils
.
notEqual
(
ResponseResult
.
SUCCESS
.
getCode
(),
baseOrderResponse
.
getErrcode
().
toString
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
AFFIRM_ORDER_FAIL
);
}
return
ResponseUtil
.
success
();
}
}
}
order-management/src/main/java/cn/freemud/management/service/impl/McCafeMangerServiceImpl.java
View file @
312f284d
...
@@ -195,4 +195,20 @@ public class McCafeMangerServiceImpl implements OrderManagerService {
...
@@ -195,4 +195,20 @@ public class McCafeMangerServiceImpl implements OrderManagerService {
saasOrderHandle
.
refundReject
(
request
,
orderBean
);
saasOrderHandle
.
refundReject
(
request
,
orderBean
);
return
ResponseUtil
.
success
();
return
ResponseUtil
.
success
();
}
}
/**
* 商家取消
*/
@Override
public
BaseResponse
<
OrderManagerResponse
>
orderCancel
(
OrderManagerRequest
request
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
)
{
//支付退款
PayRefundResponse
refund
=
paymentHandle
.
refund
(
request
,
orderBean
);
//订单拒单
saasOrderHandle
.
orderCancel
(
request
,
refund
,
orderBean
);
//冲正库存
stockHandle
.
revert
(
request
,
orderBean
);
return
ResponseUtil
.
success
();
}
}
}
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/ActivityCalculationDiscountResponseDto.java
View file @
312f284d
...
@@ -303,6 +303,8 @@ public class ActivityCalculationDiscountResponseDto {
...
@@ -303,6 +303,8 @@ public class ActivityCalculationDiscountResponseDto {
private
Integer
discountAmount
;
private
Integer
discountAmount
;
private
Integer
activityType
;
private
Integer
activityType
;
private
String
activityName
;
}
}
@Data
@Data
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/mcoffee/calculation/CalculationServiceImpl.java
View file @
312f284d
...
@@ -204,7 +204,7 @@ public class CalculationServiceImpl {
...
@@ -204,7 +204,7 @@ public class CalculationServiceImpl {
if
(
discountType
!=
null
&&
discountAmount
>
0
)
{
if
(
discountType
!=
null
&&
discountAmount
>
0
)
{
ActivityDiscountsDto
activityDiscountsDto
=
new
ActivityDiscountsDto
();
ActivityDiscountsDto
activityDiscountsDto
=
new
ActivityDiscountsDto
();
activityDiscountsDto
.
setActivityCode
(
discount
.
getCouponCode
());
activityDiscountsDto
.
setActivityCode
(
discount
.
getCouponCode
());
activityDiscountsDto
.
setActivityName
(
discount
.
get
CouponCod
e
());
activityDiscountsDto
.
setActivityName
(
discount
.
get
ActivityNam
e
());
activityDiscountsDto
.
setActivityType
(
discountType
);
activityDiscountsDto
.
setActivityType
(
discountType
);
activityDiscountsDto
.
setDiscountAmount
(
0
-
discountAmount
);
activityDiscountsDto
.
setDiscountAmount
(
0
-
discountAmount
);
activityDiscountsDtos
.
add
(
activityDiscountsDto
);
activityDiscountsDtos
.
add
(
activityDiscountsDto
);
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/mcoffee/calculation/CouponDiscountCalculation.java
View file @
312f284d
...
@@ -85,32 +85,32 @@ public class CouponDiscountCalculation {
...
@@ -85,32 +85,32 @@ public class CouponDiscountCalculation {
return
;
return
;
}
}
Map
<
String
,
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
Goods
>
goodsMap
=
goodsList
.
parallelStream
()
// Map<String, ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods> goodsMap = goodsList.parallelStream()
.
collect
(
Collectors
.
toMap
(
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
Goods
::
getGoodsId
,
Function
.
identity
(),
(
k1
,
k2
)
->
k1
));
// .collect(Collectors.toMap(ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods::getGoodsId, Function.identity(), (k1, k2) -> k1));
for
(
CartGoods
cartGoods
:
cartGoodsList
)
{
// for (CartGoods cartGoods : cartGoodsList) {
//商品券商品
// //商品券商品
if
(
StringUtils
.
isNotBlank
(
cartGoods
.
getCouponCode
()))
{
// if (StringUtils.isNotBlank(cartGoods.getCouponCode())) {
// String couponCode = cartGoods.getCouponCode();
//// String couponCode = cartGoods.getCouponCode();
// // 计算优惠信息时,已将券校验过,放在map中
//// // 计算优惠信息时,已将券校验过,放在map中
// Map<String, CheckSpqInfoResponseDto> validCouponMap = calculationDiscountResult.getValidCouponMap();
//// Map<String, CheckSpqInfoResponseDto> validCouponMap = calculationDiscountResult.getValidCouponMap();
// if (MapUtils.isNotEmpty(validCouponMap)) {
//// if (MapUtils.isNotEmpty(validCouponMap)) {
// CheckSpqInfoResponseDto checkSpqInfoResponseDto = validCouponMap.get(couponCode);
//// CheckSpqInfoResponseDto checkSpqInfoResponseDto = validCouponMap.get(couponCode);
// if (checkSpqInfoResponseDto != null) {
//// if (checkSpqInfoResponseDto != null) {
// cartGoods.setOriginalPrice(checkSpqInfoResponseDto.getPrice());
//// cartGoods.setOriginalPrice(checkSpqInfoResponseDto.getPrice());
// cartGoods.setSpuId(checkSpqInfoResponseDto.getSpuId());
//// cartGoods.setSpuId(checkSpqInfoResponseDto.getSpuId());
// cartGoods.setSkuId(StringUtils.isEmpty(checkSpqInfoResponseDto.getSkuId()) ? checkSpqInfoResponseDto.getSpuId() : checkSpqInfoResponseDto.getSkuId());
//// cartGoods.setSkuId(StringUtils.isEmpty(checkSpqInfoResponseDto.getSkuId()) ? checkSpqInfoResponseDto.getSpuId() : checkSpqInfoResponseDto.getSkuId());
// cartGoods.setQty(1);
//// cartGoods.setQty(1);
// cartGoods.setCouponCode(checkSpqInfoResponseDto.getCouponCode());
//// cartGoods.setCouponCode(checkSpqInfoResponseDto.getCouponCode());
// cartGoods.setSpuName(checkSpqInfoResponseDto.getSpuName());
//// cartGoods.setSpuName(checkSpqInfoResponseDto.getSpuName());
// }
//// }
//// }
// if (goodsMap.get(cartGoods.getGoodsId()) == null) {
// continue;
// }
// }
if
(
goodsMap
.
get
(
cartGoods
.
getGoodsId
())
==
null
)
{
// cartGoods.setAmount(goodsMap.get(cartGoods.getGoodsId()).getRealAmount());
continue
;
// }
}
// }
cartGoods
.
setAmount
(
goodsMap
.
get
(
cartGoods
.
getGoodsId
()).
getRealAmount
());
}
}
// 当couponCode不为空时,需计算优惠价格
// 当couponCode不为空时,需计算优惠价格
long
couponDiscount
=
0
;
long
couponDiscount
=
0
;
...
@@ -205,8 +205,8 @@ public class CouponDiscountCalculation {
...
@@ -205,8 +205,8 @@ public class CouponDiscountCalculation {
public
ActivityClassifyCouponBean
availableCoupon
(
String
partnerId
,
String
storeId
,
String
userId
,
String
thirdPartyMemberId
,
String
unionId
,
String
appId
public
ActivityClassifyCouponBean
availableCoupon
(
String
partnerId
,
String
storeId
,
String
userId
,
String
thirdPartyMemberId
,
String
unionId
,
String
appId
,
String
couponCode
,
Integer
orderType
,
List
<
CartGoods
>
cartGoods
)
{
,
String
couponCode
,
Integer
orderType
,
List
<
CartGoods
>
cartGoods
)
{
List
<
CartGoods
>
tmpCartGoods
=
cartGoods
.
parallelStream
().
filter
(
k
->
k
.
getCartGoodsUid
().
startsWith
(
CommonsConstant
.
COUPON_PREFIX
)).
collect
(
Collectors
.
toList
());
// List<CartGoods> tmpCartGoods = cartGoods.parallelStream().filter(k -> StringUtils.isBlank(k.getCouponCode()
)).collect(Collectors.toList());
boolean
hasGoodsCoupon
=
CollectionUtils
.
isNotEmpty
(
tmpCartGoods
)
;
boolean
hasGoodsCoupon
=
false
;
// 获取会员服务的优惠券列表
// 获取会员服务的优惠券列表
GetMemberCouponListRequestDto
getMemberCouponListRequestDto
=
new
GetMemberCouponListRequestDto
(
partnerId
,
userId
);
GetMemberCouponListRequestDto
getMemberCouponListRequestDto
=
new
GetMemberCouponListRequestDto
(
partnerId
,
userId
);
...
@@ -356,6 +356,10 @@ public class CouponDiscountCalculation {
...
@@ -356,6 +356,10 @@ public class CouponDiscountCalculation {
if
(
StringUtils
.
isEmpty
(
cartGood
.
getSkuId
())
&&
StringUtils
.
isEmpty
(
cartGood
.
getSpuId
()))
{
if
(
StringUtils
.
isEmpty
(
cartGood
.
getSkuId
())
&&
StringUtils
.
isEmpty
(
cartGood
.
getSpuId
()))
{
continue
;
continue
;
}
}
// 剔除商品券得商品,麦咖啡逻辑
if
(
StringUtils
.
isNotEmpty
(
cartGood
.
getCouponCode
())){
continue
;
}
CouponProductVo
product
=
new
CouponProductVo
();
CouponProductVo
product
=
new
CouponProductVo
();
product
.
setKeyProductCode
(
cartGood
.
getCustomerCode
());
product
.
setKeyProductCode
(
cartGood
.
getCustomerCode
());
product
.
setProductId
(
StringUtils
.
isEmpty
(
cartGood
.
getSkuId
())
?
cartGood
.
getSpuId
()
:
cartGood
.
getSkuId
());
product
.
setProductId
(
StringUtils
.
isEmpty
(
cartGood
.
getSkuId
())
?
cartGood
.
getSpuId
()
:
cartGood
.
getSkuId
());
...
...
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