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
48438b0b
Commit
48438b0b
authored
Mar 12, 2021
by
chongfu.liang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
x减
parent
d5d599e0
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
32 additions
and
6 deletions
+32
-6
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationSharingDiscountService.java
+8
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/promotion/GiftSharingService.java
+24
-5
No files found.
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationSharingDiscountService.java
View file @
48438b0b
...
@@ -25,6 +25,7 @@ import com.freemud.application.sdk.api.log.ErrorLog;
...
@@ -25,6 +25,7 @@ import com.freemud.application.sdk.api.log.ErrorLog;
import
com.freemud.sdk.api.assortment.shoppingcart.constant.CommonsConstant
;
import
com.freemud.sdk.api.assortment.shoppingcart.constant.CommonsConstant
;
import
com.freemud.sdk.api.assortment.shoppingcart.enums.BusinessTypeEnum
;
import
com.freemud.sdk.api.assortment.shoppingcart.enums.BusinessTypeEnum
;
import
com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl
;
import
com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl
;
import
javafx.util.Pair
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
...
@@ -206,7 +207,13 @@ public class CalculationSharingDiscountService {
...
@@ -206,7 +207,13 @@ public class CalculationSharingDiscountService {
convert2SendPoint
(
result
,
discountDTO
);
convert2SendPoint
(
result
,
discountDTO
);
}
}
// 将x件y折的0折数据转为赠品
// 将x件y折的0折数据转为赠品
giftSharingService
.
xPiecesYFoldAdapter
(
sharingDiscountResponseDto
);
Pair
<
String
,
Integer
>
pair
=
giftSharingService
.
xPiecesYFoldAdapter
(
sharingDiscountResponseDto
);
if
(
pair
!=
null
){
CartGoods
cartGoods
=
cartGoodsList
.
stream
().
filter
(
p
->
p
.
getCartGoodsUid
().
equals
(
pair
.
getKey
())).
findFirst
().
orElseGet
(
null
);
if
(
cartGoods
!=
null
){
cartGoods
.
setQty
(
pair
.
getValue
());
}
}
result
.
setValidCouponMap
(
validCouponMap
);
result
.
setValidCouponMap
(
validCouponMap
);
result
.
setDeliveryAmount
(
deliveryAmount
);
result
.
setDeliveryAmount
(
deliveryAmount
);
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/promotion/GiftSharingService.java
View file @
48438b0b
...
@@ -16,6 +16,7 @@ import cn.freemud.service.active.ActiveService;
...
@@ -16,6 +16,7 @@ import cn.freemud.service.active.ActiveService;
import
cn.freemud.service.impl.AssortmentSdkService
;
import
cn.freemud.service.impl.AssortmentSdkService
;
import
com.freemud.application.sdk.api.productcenter.domain.ProductBeanDTO
;
import
com.freemud.application.sdk.api.productcenter.domain.ProductBeanDTO
;
import
com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl
;
import
com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl
;
import
javafx.util.Pair
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.ObjectUtils
;
import
org.apache.commons.lang.ObjectUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -111,14 +112,14 @@ public class GiftSharingService {
...
@@ -111,14 +112,14 @@ public class GiftSharingService {
public
void
xPiecesYFoldAdapter
(
CalculationSharingDiscountResponseDto
sharingDiscountResponseDto
)
{
public
Pair
<
String
,
Integer
>
xPiecesYFoldAdapter
(
CalculationSharingDiscountResponseDto
sharingDiscountResponseDto
)
{
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
result
=
sharingDiscountResponseDto
.
getResult
();
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
result
=
sharingDiscountResponseDto
.
getResult
();
if
(
result
==
null
){
if
(
result
==
null
){
return
;
return
null
;
}
}
if
(
CollectionUtils
.
isEmpty
(
result
.
getDiscounts
())
&&
CollectionUtils
.
isEmpty
(
result
.
getGoods
())){
if
(
CollectionUtils
.
isEmpty
(
result
.
getDiscounts
())
&&
CollectionUtils
.
isEmpty
(
result
.
getGoods
())){
return
;
return
null
;
}
}
// 0折的x件y折活动
// 0折的x件y折活动
...
@@ -126,13 +127,14 @@ public class GiftSharingService {
...
@@ -126,13 +127,14 @@ public class GiftSharingService {
.
filter
(
p
->
ActivityTypeEnum
.
TYPE_104
.
getCode
().
equals
(
p
.
getType
())
&&
p
.
getZeroDiscount
())
.
filter
(
p
->
ActivityTypeEnum
.
TYPE_104
.
getCode
().
equals
(
p
.
getType
())
&&
p
.
getZeroDiscount
())
.
map
(
p
->
p
.
getActivityCode
()).
collect
(
Collectors
.
toList
());
.
map
(
p
->
p
.
getActivityCode
()).
collect
(
Collectors
.
toList
());
if
(
CollectionUtils
.
isEmpty
(
activityCode
)){
if
(
CollectionUtils
.
isEmpty
(
activityCode
)){
return
;
return
null
;
}
}
List
<
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
>
discountGoodsList
=
result
.
getGoods
().
stream
().
filter
(
p
->
CollectionUtils
.
isNotEmpty
(
p
.
getDiscounts
())
List
<
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
>
discountGoodsList
=
result
.
getGoods
().
stream
().
filter
(
p
->
CollectionUtils
.
isNotEmpty
(
p
.
getDiscounts
())
&&
p
.
getDiscounts
().
stream
().
filter
(
discount
->
activityCode
.
contains
(
discount
.
getActivityCode
())).
count
()
>
0
).
collect
(
Collectors
.
toList
());
&&
p
.
getDiscounts
().
stream
().
filter
(
discount
->
activityCode
.
contains
(
discount
.
getActivityCode
())).
count
()
>
0
).
collect
(
Collectors
.
toList
());
List
<
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
>
goodsList
=
result
.
getGoods
();
List
<
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
>
goodsList
=
result
.
getGoods
();
for
(
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
goods
:
discountGoodsList
){
for
(
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
goods
:
discountGoodsList
){
int
sendQty
=
0
;
List
<
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
.
GoodsDiscount
>
discountList
=
goods
.
getDiscounts
()
List
<
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
.
GoodsDiscount
>
discountList
=
goods
.
getDiscounts
()
.
stream
().
filter
(
p
->
activityCode
.
contains
(
p
.
getActivityCode
())).
collect
(
Collectors
.
toList
());
.
stream
().
filter
(
p
->
activityCode
.
contains
(
p
.
getActivityCode
())).
collect
(
Collectors
.
toList
());
for
(
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
.
GoodsDiscount
discount
:
discountList
){
for
(
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
.
GoodsDiscount
discount
:
discountList
){
...
@@ -143,9 +145,26 @@ public class GiftSharingService {
...
@@ -143,9 +145,26 @@ public class GiftSharingService {
sendGoods
.
setGoodsQuantity
(
discount
.
getActualGoodsNumber
());
sendGoods
.
setGoodsQuantity
(
discount
.
getActualGoodsNumber
());
sendGoods
.
setOriginalPrice
(
discount
.
getSignleDiscount
());
sendGoods
.
setOriginalPrice
(
discount
.
getSignleDiscount
());
sendGoods
.
setRealAmount
(
0L
);
sendGoods
.
setRealAmount
(
0L
);
List
<
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
.
GoodsDiscount
>
goodsDiscounts
=
new
ArrayList
<>();
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
.
GoodsDiscount
goodsDiscount
=
new
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
.
Goods
.
GoodsDiscount
();
goodsDiscount
.
setActivityCode
(
discount
.
getActivityCode
());
goodsDiscount
.
setActivityDesc
(
discount
.
getActivityDesc
());
goodsDiscount
.
setActivityName
(
discount
.
getActivityName
());
goodsDiscount
.
setActualGoodsNumber
(
discount
.
getActualGoodsNumber
());
goodsDiscount
.
setDiscount
(
discount
.
getDiscount
());
goodsDiscount
.
setGoodsId
(
discount
.
getGoodsId
());
goodsDiscount
.
setSignleDiscount
(
discount
.
getSignleDiscount
());
goodsDiscount
.
setType
(
discount
.
getType
());
goodsDiscounts
.
add
(
goodsDiscount
);
sendGoods
.
setDiscounts
(
goodsDiscounts
);
goodsList
.
add
(
sendGoods
);
goodsList
.
add
(
sendGoods
);
sendQty
+=
discount
.
getActualGoodsNumber
();
}
}
Pair
<
String
,
Integer
>
pair
=
new
Pair
<>(
goods
.
getCartGoodsUid
(),
goods
.
getGoodsQuantity
()
-
sendQty
);
return
pair
;
}
}
return
null
;
}
}
...
...
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