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
c3d2bb92
Commit
c3d2bb92
authored
Oct 29, 2020
by
huiyang.chen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
麦咖啡随单购卡优惠 1
parent
5f03c0df
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
46 additions
and
28 deletions
+46
-28
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/ActivityCalculationDiscountResponseDto.java
+8
-0
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/activity/ActivityDiscountsDto.java
+5
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/mcoffee/calculation/CouponDiscountCalculation.java
+33
-27
No files found.
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/ActivityCalculationDiscountResponseDto.java
View file @
c3d2bb92
...
...
@@ -158,6 +158,14 @@ public class ActivityCalculationDiscountResponseDto {
private
Integer
type
;
private
Long
thresholdAmount
;
/**
* 运费月卡入机字段
*/
private
String
tenderId
;
/**
* 1-运费券 2-运费月卡券 3-月卡券 4-万能券 5-啡常月享卡 6-通用券
*/
private
Integer
extendType
;
}
@Data
...
...
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/activity/ActivityDiscountsDto.java
View file @
c3d2bb92
...
...
@@ -21,7 +21,11 @@ public class ActivityDiscountsDto {
private
String
activityName
;
private
Integer
discountAmount
;
private
Integer
activityType
;
private
String
tenderId
;
/**
* 1-运费券 2-运费月卡券 3-月卡券 4-万能券 5-啡常月享卡 6-通用券
*/
private
Integer
extendType
;
/**
* 实际参与活动商品数量
*/
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/mcoffee/calculation/CouponDiscountCalculation.java
View file @
c3d2bb92
...
...
@@ -170,43 +170,49 @@ public class CouponDiscountCalculation {
// 匹配随单购悦享卡
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
Discount
discount
=
discounts
.
stream
().
filter
(
t
->
(
ActivityTypeEnum
.
TYPE_32
.
getCode
().
equals
(
t
.
getType
())
&&
mccafeUniversalCouponCode
.
equals
(
t
.
getActivityCode
()))).
findFirst
().
orElse
(
null
);
for
(
ShoppingCartGoodsDto
.
CartGoodsDetailDto
cartGoods
:
shoppingCartGoodsDto
.
getProducts
())
{
if
(
goodsMap
.
get
(
cartGoods
.
getCartGoodsUid
())
==
null
)
{
continue
;
}
//商品券商品
if
(
StringUtils
.
isNotEmpty
(
cartGoods
.
getCouponCode
())
||
discount
!=
null
)
{
if
(
StringUtils
.
isNotEmpty
(
cartGoods
.
getCouponCode
())
)
{
List
<
ActivityDiscountsDto
>
productActivityDiscountsDtos
=
new
ArrayList
<>();
for
(
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
Discount
couponDiscount
:
discounts
)
{
if
(
couponDiscount
.
getActivityCode
().
equals
(
cartGoods
.
getCouponCode
()))
{
ActivityDiscountsDto
activityDiscountsDto
=
new
ActivityDiscountsDto
();
activityDiscountsDto
.
setActivityCode
(
couponDiscount
.
getActivityCode
());
activityDiscountsDto
.
setActivityName
(
couponDiscount
.
getActivityName
());
activityDiscountsDto
.
setActivityType
(
couponDiscount
.
getType
());
activityDiscountsDto
.
setDiscountAmount
(
0
-
couponDiscount
.
getDiscount
());
productActivityDiscountsDtos
.
add
(
activityDiscountsDto
);
cartGoods
.
setTotalDiscountAmount
(-
activityDiscountsDto
.
getDiscountAmount
());
cartGoods
.
setSalePrice
(
0L
);
cartGoods
.
setActivityDiscountsDtos
(
productActivityDiscountsDtos
);
if
(
CollectionUtils
.
isNotEmpty
(
discounts
))
{
for
(
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
Discount
couponDiscount
:
discounts
)
{
if
(
couponDiscount
.
getActivityCode
().
equals
(
cartGoods
.
getCouponCode
()))
{
ActivityDiscountsDto
activityDiscountsDto
=
new
ActivityDiscountsDto
();
activityDiscountsDto
.
setActivityCode
(
couponDiscount
.
getActivityCode
());
activityDiscountsDto
.
setActivityName
(
couponDiscount
.
getActivityName
());
activityDiscountsDto
.
setActivityType
(
couponDiscount
.
getType
());
activityDiscountsDto
.
setDiscountAmount
(
0
-
couponDiscount
.
getDiscount
());
Integer
extendType
=
couponDiscount
.
getExtendType
();
activityDiscountsDto
.
setExtendType
(
extendType
);
activityDiscountsDto
.
setTenderId
(
goodsMap
.
get
(
cartGoods
.
getCartGoodsUid
()).
getArtNo
());
productActivityDiscountsDtos
.
add
(
activityDiscountsDto
);
cartGoods
.
setTotalDiscountAmount
(-
activityDiscountsDto
.
getDiscountAmount
());
cartGoods
.
setSalePrice
(
0L
);
cartGoods
.
setActivityDiscountsDtos
(
productActivityDiscountsDtos
);
}
}
}
if
(
discount
!=
null
){
}
cartGoods
.
setCustomerCode
(
goodsMap
.
get
(
cartGoods
.
getCartGoodsUid
()).
getArtNo
());
List
<
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
Goods
.
GoodsDiscount
>
list
=
goodsMap
.
get
(
cartGoods
.
getCartGoodsUid
()).
getDiscounts
();
if
(
CollectionUtils
.
isNotEmpty
(
list
)
&&
discount
!=
null
)
{
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
Goods
.
GoodsDiscount
goodsDiscount
=
list
.
stream
().
filter
(
t
->
(
ActivityTypeEnum
.
TYPE_32
.
getCode
().
equals
(
t
.
getType
())
&&
mccafeUniversalCouponCode
.
equals
(
t
.
getActivityCode
()))).
findFirst
().
orElse
(
null
);
if
(
goodsDiscount
!=
null
){
List
<
ActivityDiscountsDto
>
productActivityDiscountsDtos
=
new
ArrayList
<>();
ActivityDiscountsDto
activityDiscountsDto
=
new
ActivityDiscountsDto
();
activityDiscountsDto
.
setActivityCode
(
discount
.
getActivityCode
());
activityDiscountsDto
.
setActivityName
(
discount
.
getActivityName
());
activityDiscountsDto
.
setActivityType
(
discount
.
getType
());
activityDiscountsDto
.
setDiscountAmount
(
0
-
discount
.
getDiscount
());
activityDiscountsDto
.
setActivityCode
(
goodsDiscount
.
getActivityCode
());
activityDiscountsDto
.
setActivityName
(
goodsDiscount
.
getActivityName
());
activityDiscountsDto
.
setActivityType
(
goodsDiscount
.
getType
());
activityDiscountsDto
.
setDiscountAmount
(
0
-
goodsDiscount
.
getDiscount
().
intValue
());
activityDiscountsDto
.
setExtendType
(
discount
.
getExtendType
());
activityDiscountsDto
.
setTenderId
(
goodsMap
.
get
(
cartGoods
.
getCartGoodsUid
()).
getArtNo
());
productActivityDiscountsDtos
.
add
(
activityDiscountsDto
);
cartGoods
.
setTotalDiscountAmount
(-
activityDiscountsDto
.
getDiscountAmount
());
cartGoods
.
setSalePrice
(
0L
);
cartGoods
.
setActivityDiscountsDtos
(
productActivityDiscountsDtos
);
}
if
(
goodsMap
.
get
(
cartGoods
.
getCartGoodsUid
())
==
null
)
{
continue
;
}
//商品券键位编号为空
if
(
StringUtils
.
isBlank
(
goodsMap
.
get
(
cartGoods
.
getCartGoodsUid
()).
getArtNo
())){
throw
new
ServiceException
(
ResponseResult
.
SHOPPING_CART_SEAT_EMPTY
);
}
cartGoods
.
setCustomerCode
(
goodsMap
.
get
(
cartGoods
.
getCartGoodsUid
()).
getArtNo
());
}
}
...
...
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