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
5271b87b
Commit
5271b87b
authored
Dec 07, 2021
by
徐光兴
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
d3260494
db476196
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
15 additions
and
4 deletions
+15
-4
shopping-cart-application-service/src/main/java/cn/freemud/service/active/impl/PlatformActiveServiceImpl.java
+2
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/cache/GiftCacheManager.java
+3
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/BuyAndGiftsPromotionService.java
+1
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CartGiftServiceImpl.java
+9
-1
No files found.
shopping-cart-application-service/src/main/java/cn/freemud/service/active/impl/PlatformActiveServiceImpl.java
View file @
5271b87b
...
@@ -95,6 +95,7 @@ public class PlatformActiveServiceImpl implements ActiveService {
...
@@ -95,6 +95,7 @@ public class PlatformActiveServiceImpl implements ActiveService {
.
get
();
.
get
();
CartGoods
cartGood
=
new
CartGoods
();
CartGoods
cartGood
=
new
CartGoods
();
cartGood
.
setGoodsId
(
goods
.
getGoodsId
());
cartGood
.
setGoodsId
(
goods
.
getGoodsId
());
cartGood
.
setOriginalGoodsUid
(
goods
.
getOriginalGoodsUid
());
cartGood
.
setGoodsType
(
1
);
cartGood
.
setGoodsType
(
1
);
cartGood
.
setSpuId
(
Objects
.
equals
(
product
.
getIsSkuProduct
(),
1
)
?
product
.
getSpecProductId
()
:
goods
.
getGoodsId
());
cartGood
.
setSpuId
(
Objects
.
equals
(
product
.
getIsSkuProduct
(),
1
)
?
product
.
getSpecProductId
()
:
goods
.
getGoodsId
());
cartGood
.
setSkuId
(
goods
.
getGoodsId
());
cartGood
.
setSkuId
(
goods
.
getGoodsId
());
...
@@ -118,7 +119,7 @@ public class PlatformActiveServiceImpl implements ActiveService {
...
@@ -118,7 +119,7 @@ public class PlatformActiveServiceImpl implements ActiveService {
cartGood
.
setClassificationName
(
product
.
getCategoryName
());
cartGood
.
setClassificationName
(
product
.
getCategoryName
());
// nodeId标识activeCode,用于计算均摊时每个商品在每个活动上均摊金额
// nodeId标识activeCode,用于计算均摊时每个商品在每个活动上均摊金额
cartGood
.
setNodeId
(
discount
.
getActivityCode
());
cartGood
.
setNodeId
(
discount
.
getActivityCode
());
list
.
addAll
(
buyAndGiftsPromotionService
.
setGiftExtra
(
cartGood
,
product
,
addcartGoodsList
));
list
.
addAll
(
buyAndGiftsPromotionService
.
setGiftExtra
(
cartGood
,
product
,
oldcartGoodsLists
));
}
}
// 因为有涉及到用户选择的属性,存入redis
// 因为有涉及到用户选择的属性,存入redis
addcartGoodsList
.
addAll
(
giftCacheManager
.
resetGiftCache
(
list
,
null
,
partnerId
,
storeId
,
userId
));
addcartGoodsList
.
addAll
(
giftCacheManager
.
resetGiftCache
(
list
,
null
,
partnerId
,
storeId
,
userId
));
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/cache/GiftCacheManager.java
View file @
5271b87b
...
@@ -66,7 +66,9 @@ public class GiftCacheManager {
...
@@ -66,7 +66,9 @@ public class GiftCacheManager {
while
(
it
.
hasNext
())
{
while
(
it
.
hasNext
())
{
CartGoods
old
=
it
.
next
();
CartGoods
old
=
it
.
next
();
boolean
isSameType
=
StringUtils
.
isBlank
(
activityCode
)
||
activityCode
.
equals
(
old
.
getActivityCode
());
boolean
isSameType
=
StringUtils
.
isBlank
(
activityCode
)
||
activityCode
.
equals
(
old
.
getActivityCode
());
if
(!
old
.
getGoodsId
().
equals
(
gift
.
getGoodsId
())
||
!
isSameType
)
continue
;
// 买赠活动,多个不同属性的同一商品,赠品属性不能乱
boolean
oriSource
=
StringUtils
.
isBlank
(
gift
.
getOriginalGoodsUid
())
||
gift
.
getOriginalGoodsUid
().
equals
(
old
.
getOriginalGoodsUid
());
if
(!
old
.
getGoodsId
().
equals
(
gift
.
getGoodsId
())
||
!
isSameType
||
!
oriSource
)
continue
;
// 赠品匹配上了,copy赠品属性
// 赠品匹配上了,copy赠品属性
gift
.
setExtra
(
old
.
getExtra
());
gift
.
setExtra
(
old
.
getExtra
());
gift
.
setSubName
(
old
.
getSubName
());
gift
.
setSubName
(
old
.
getSubName
());
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/BuyAndGiftsPromotionService.java
View file @
5271b87b
...
@@ -218,7 +218,7 @@ public class BuyAndGiftsPromotionService implements IPromotionService {
...
@@ -218,7 +218,7 @@ public class BuyAndGiftsPromotionService implements IPromotionService {
List
<
CartGoods
>
result
=
new
ArrayList
<>();
List
<
CartGoods
>
result
=
new
ArrayList
<>();
result
.
add
(
cartGoods
);
result
.
add
(
cartGoods
);
//
购物车内存在同类
//
买一赠一时,赠品属性和原商品保持一致
if
(
null
!=
cartGoodsList
&&
cartGoodsList
.
stream
().
filter
(
c
->
c
.
getSpuId
().
equals
(
cartGoods
.
getSpuId
())).
count
()
>
0
)
{
if
(
null
!=
cartGoodsList
&&
cartGoodsList
.
stream
().
filter
(
c
->
c
.
getSpuId
().
equals
(
cartGoods
.
getSpuId
())).
count
()
>
0
)
{
CartGoods
find
=
cartGoodsList
.
stream
().
filter
(
c
->
c
.
getCartGoodsUid
().
equals
(
cartGoods
.
getOriginalGoodsUid
())).
findFirst
().
orElse
(
null
);
CartGoods
find
=
cartGoodsList
.
stream
().
filter
(
c
->
c
.
getCartGoodsUid
().
equals
(
cartGoods
.
getOriginalGoodsUid
())).
findFirst
().
orElse
(
null
);
if
(
null
==
find
)
{
if
(
null
==
find
)
{
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CartGiftServiceImpl.java
View file @
5271b87b
...
@@ -12,6 +12,7 @@ import org.springframework.stereotype.Service;
...
@@ -12,6 +12,7 @@ import org.springframework.stereotype.Service;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Optional
;
/**
/**
* @author Clover.z
* @author Clover.z
...
@@ -49,7 +50,14 @@ public class CartGiftServiceImpl implements CartGiftService {
...
@@ -49,7 +50,14 @@ public class CartGiftServiceImpl implements CartGiftService {
nameList
.
add
(
a
.
getAttributeName
());
nameList
.
add
(
a
.
getAttributeName
());
});
});
goods
.
setExtra
(
attrList
);
goods
.
setExtra
(
attrList
);
goods
.
setSubName
(
StringUtils
.
join
(
nameList
,
"/"
));
// 多规格赠品,需要带上规格name
String
skuName
=
Optional
.
ofNullable
(
goods
.
getSkuName
()).
orElse
(
""
);
String
spuName
=
Optional
.
ofNullable
(
goods
.
getSpuName
()).
orElse
(
""
);
String
skuPreName
=
""
;
if
(
skuName
.
length
()
>
spuName
.
length
()+
1
)
{
skuPreName
=
skuName
.
substring
(
spuName
.
length
()
+
1
)
+
"/"
;
}
goods
.
setSubName
(
skuPreName
+
StringUtils
.
join
(
nameList
,
"/"
));
// 更新赠品缓存
// 更新赠品缓存
giftCacheManager
.
updateGiftGoods
(
partnerId
,
storeCode
,
user
.
getMemberId
(),
goods
);
giftCacheManager
.
updateGiftGoods
(
partnerId
,
storeCode
,
user
.
getMemberId
(),
goods
);
return
goods
;
return
goods
;
...
...
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