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
0162e603
Commit
0162e603
authored
Dec 21, 2021
by
ping.wu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新算价接口 活动互斥提示处理
parent
cbe92ed6
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
221 additions
and
64 deletions
+221
-64
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/calculate/BlockRow.java
+18
-0
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/calculate/BlockRowDiscount.java
+16
-0
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/calculate/DistributeBo.java
+52
-0
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartMallServiceImpl.java
+10
-3
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
+15
-6
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationCommonService.java
+73
-29
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationSharingCartService.java
+36
-25
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationSharingEquallyService.java
+1
-1
No files found.
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/calculate/BlockRow.java
0 → 100644
View file @
0162e603
package
cn
.
freemud
.
entities
.
dto
.
calculate
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
BlockRow
{
private
Integer
discountAmount
;
private
List
<
BlockRowDiscount
>
discounts
;
private
String
goodsId
;
private
Integer
goodsQuantity
;
private
Integer
originalPrice
;
private
Integer
realAmount
;
private
Integer
type
;
}
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/calculate/BlockRowDiscount.java
0 → 100644
View file @
0162e603
package
cn
.
freemud
.
entities
.
dto
.
calculate
;
import
lombok.Data
;
@Data
public
class
BlockRowDiscount
{
private
String
activityCode
;
private
String
activityDesc
;
private
String
activityName
;
private
Integer
actualGoodsNumber
;
private
Long
discount
;
private
String
goodsId
;
private
Integer
type
;
}
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/calculate/DistributeBo.java
0 → 100644
View file @
0162e603
package
cn
.
freemud
.
entities
.
dto
.
calculate
;
import
cn.freemud.entities.dto.UserLoginInfoDto
;
import
cn.freemud.entities.dto.activity.ActivityQueryDto
;
import
cn.freemud.entities.vo.CartGoods
;
import
cn.freemud.entities.vo.CouponPromotionVO
;
import
cn.freemud.entities.vo.ShoppingCartGoodsResponseVo
;
import
cn.freemud.entities.vo.ShoppingCartInfoRequestVo
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
DistributeBo
{
private
CalculationDiscountResult
discountResult
;
private
List
<
CartGoods
>
cartGoodsList
;
private
ShoppingCartGoodsResponseVo
shoppingCartGoodsResponseVo
;
private
ShoppingCartInfoRequestVo
shoppingCartInfoRequestVo
;
private
UserLoginInfoDto
userLoginInfoDto
;
private
CouponPromotionVO
couponPromotionVO
;
private
ActivityQueryDto
activityQueryDto
;
private
String
menuType
;
private
Long
deliveryAmount
;
private
String
opt
;
private
String
partnerId
;
private
Integer
flag
;
private
String
userId
;
private
String
storeId
;
private
Boolean
hasCoupon
=
false
;
public
DistributeBo
()
{
}
public
DistributeBo
(
CalculationDiscountResult
discountResult
,
List
<
CartGoods
>
cartGoodsList
,
ShoppingCartGoodsResponseVo
shoppingCartGoodsResponseVo
,
ShoppingCartInfoRequestVo
shoppingCartInfoRequestVo
,
UserLoginInfoDto
userLoginInfoDto
,
CouponPromotionVO
couponPromotionVO
,
ActivityQueryDto
activityQueryDto
,
String
menuType
,
Long
deliveryAmount
,
String
opt
,
String
partnerId
,
Integer
flag
,
String
userId
,
String
storeId
)
{
this
.
discountResult
=
discountResult
;
this
.
cartGoodsList
=
cartGoodsList
;
this
.
shoppingCartGoodsResponseVo
=
shoppingCartGoodsResponseVo
;
this
.
shoppingCartInfoRequestVo
=
shoppingCartInfoRequestVo
;
this
.
userLoginInfoDto
=
userLoginInfoDto
;
this
.
couponPromotionVO
=
couponPromotionVO
;
this
.
activityQueryDto
=
activityQueryDto
;
this
.
menuType
=
menuType
;
this
.
deliveryAmount
=
deliveryAmount
;
this
.
opt
=
opt
;
this
.
partnerId
=
partnerId
;
this
.
flag
=
flag
;
this
.
userId
=
userId
;
this
.
storeId
=
storeId
;
}
}
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartMallServiceImpl.java
View file @
0162e603
...
...
@@ -26,6 +26,7 @@ import cn.freemud.entities.dto.activity.ActivityQueryDto;
import
cn.freemud.entities.dto.activity.DiscountSharingDto
;
import
cn.freemud.entities.dto.calculate.ActivityCalculationDiscountRequestDto
;
import
cn.freemud.entities.dto.calculate.CalculationDiscountResult
;
import
cn.freemud.entities.dto.calculate.DistributeBo
;
import
cn.freemud.entities.dto.delivery.DeliveryFeeInfo
;
import
cn.freemud.entities.dto.product.CheckCartRequest
;
import
cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto
;
...
...
@@ -194,7 +195,9 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
CalculationDiscountResult
discountResult
=
null
;
discountResult
=
sharingDiscountService
.
getCalculationSharingDiscountResult
(
menuType
,
partnerId
,
storeId
,
userId
,
appId
,
orderType
,
assortmentCustomerInfoVo
.
isMemberPaid
(),
allCartGoodsList
,
new
ArrayList
<>(),
null
,
deliveryAmount
,
null
,
null
,
accountType
,
new
DiscountSharingDto
());
sharingCartService
.
distribute
(
discountResult
,
allCartGoodsList
,
shoppingCartGoodsResponseVo
,
null
,
null
,
null
,
activityQueryDto
,
menuType
,
deliveryAmount
,
ShoppingCartConstant
.
ADD_AND_UPDATE
,
partnerId
,
null
,
userId
,
storeId
);
DistributeBo
distributeBo
=
new
DistributeBo
(
discountResult
,
allCartGoodsList
,
shoppingCartGoodsResponseVo
,
null
,
null
,
null
,
activityQueryDto
,
menuType
,
deliveryAmount
,
ShoppingCartConstant
.
ADD_AND_UPDATE
,
partnerId
,
null
,
userId
,
storeId
);
sharingCartService
.
distribute
(
distributeBo
);
buildShoppingCartGoodsResponse
(
shoppingCartGoodsResponseVo
,
discountResult
,
null
,
partnerId
);
...
...
@@ -290,7 +293,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
,
deliveryAmount
,
null
,
null
,
accountFlag
,
new
DiscountSharingDto
());
sharingCartService
.
distribute
(
discountResult
DistributeBo
distributeBo
=
new
DistributeBo
(
discountResult
,
cartGoodsList
,
shoppingCartGoodsResponseVo
,
null
//入参
...
...
@@ -305,6 +308,8 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
,
userId
,
storeId
);
sharingCartService
.
distribute
(
distributeBo
);
buildShoppingCartGoodsResponse
(
shoppingCartGoodsResponseVo
,
discountResult
,
null
,
partnerId
);
return
ResponseUtil
.
success
(
shoppingCartGoodsResponseVo
);
...
...
@@ -448,7 +453,8 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
,
sendGoods
,
deliveryAmount
,
null
,
null
,
accountFlag
,
new
DiscountSharingDto
());
sharingCartService
.
distribute
(
calculationSharingDiscountResult
DistributeBo
distributeBo
=
new
DistributeBo
(
calculationSharingDiscountResult
,
cartGoodsList
,
shoppingCartGoodsResponseVo
,
shoppingCartInfoRequestVo
...
...
@@ -462,6 +468,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
,
shoppingCartInfoRequestVo
.
getFlag
()
,
userId
,
storeId
);
sharingCartService
.
distribute
(
distributeBo
);
buildShoppingCartGoodsResponse
(
shoppingCartGoodsResponseVo
,
calculationSharingDiscountResult
,
shoppingCartInfoRequestVo
.
getFlag
(),
partnerId
);
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
View file @
0162e603
...
...
@@ -383,9 +383,13 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
,
deliveryAmount
,
null
,
bizType
,
accountFlag
,
new
DiscountSharingDto
());
//更新购物车券状态
newCalculationUpdateCouponStatus
(
userId
,
partnerId
,
storeId
,
bizType
,
cartGoods
,
allCartGoodsList
,
discountResult
);
sharingCartService
.
distribute
(
discountResult
,
allCartGoodsList
,
shoppingCartGoodsResponseVo
,
null
DistributeBo
distributeBo
=
new
DistributeBo
(
discountResult
,
allCartGoodsList
,
shoppingCartGoodsResponseVo
,
null
,
userLoginInfoDto
,
null
,
activityQueryDto
,
menuType
,
deliveryAmount
,
ShoppingCartConstant
.
ADD_AND_UPDATE
,
partnerId
,
null
,
userId
,
storeId
);
,
ShoppingCartConstant
.
ADD_AND_UPDATE
,
partnerId
,
SubmitPageEnum
.
NO
.
getCode
(),
userId
,
storeId
);
distributeBo
.
setHasCoupon
(
StringUtils
.
isNotBlank
(
couponCode
));
sharingCartService
.
distribute
(
distributeBo
);
buildShoppingCartGoodsResponse
(
shoppingCartGoodsResponseVo
,
discountResult
,
null
,
partnerId
);
//
...
...
@@ -508,7 +512,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
}
newCalculationUpdateCouponStatus
(
userId
,
partnerId
,
storeId
,
bizType
,
cartGoods
,
cartGoodsList
,
discountResult
);
sharingCartService
.
distribute
(
discountResult
DistributeBo
distributeBo
=
new
DistributeBo
(
discountResult
,
cartGoodsList
,
shoppingCartGoodsResponseVo
,
null
//入参
...
...
@@ -523,6 +527,8 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
,
userId
,
storeId
);
sharingCartService
.
distribute
(
distributeBo
);
buildShoppingCartGoodsResponse
(
shoppingCartGoodsResponseVo
,
discountResult
,
null
,
partnerId
);
}
else
{
// 获取优惠信息
...
...
@@ -746,7 +752,8 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
,
deliveryAmount
,
null
,
bizType
,
accountFlag
,
new
DiscountSharingDto
());
sharingCartService
.
distribute
(
calculationSharingDiscountResult
DistributeBo
distributeBo
=
new
DistributeBo
(
calculationSharingDiscountResult
,
cartGoodsList
,
shoppingCartGoodsResponseVo
,
shoppingCartInfoRequestVo
...
...
@@ -760,6 +767,9 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
,
shoppingCartInfoRequestVo
.
getFlag
()
,
userId
,
storeId
);
distributeBo
.
setHasCoupon
(
CollectionUtils
.
isEmpty
(
coupons
));
sharingCartService
.
distribute
(
distributeBo
);
buildShoppingCartGoodsResponse
(
shoppingCartGoodsResponseVo
,
calculationSharingDiscountResult
,
shoppingCartInfoRequestVo
.
getFlag
(),
partnerId
);
}
else
{
List
<
ActivityCalculationDiscountRequestDto
.
CalculationDiscountCoupon
>
coupons
=
new
ArrayList
<>();
...
...
@@ -3336,11 +3346,10 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
return
fullReplace
;
}
/**
* 活动互斥提示
*/
p
rivate
void
setActivityMutexToastMsg
(
CalculationDiscountResult
calculationDiscountResult
,
Integer
flag
,
String
partnerId
,
String
appid
,
p
ublic
void
setActivityMutexToastMsg
(
CalculationDiscountResult
calculationDiscountResult
,
Integer
flag
,
String
partnerId
,
String
appid
,
boolean
hasCoupon
,
boolean
addOrUpdate
,
ShoppingCartGoodsResponseVo
shoppingCartGoodsResponseVo
){
String
toastMsg
=
""
;
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationCommonService.java
View file @
0162e603
...
...
@@ -9,16 +9,18 @@ import cn.freemud.entities.dto.GetPaidRuleResponseDto;
import
cn.freemud.entities.dto.activity.ActivityDiscountsDto
;
import
cn.freemud.entities.dto.calculate.*
;
import
cn.freemud.entities.dto.order.PackAmountConfig
;
import
cn.freemud.entities.dto.shoppingCart.ActivityMutexConfig
;
import
cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto
;
import
cn.freemud.entities.vo.CartGoods
;
import
cn.freemud.entities.vo.ShoppingCartGoodsResponseVo
;
import
cn.freemud.entities.vo.ShoppingCartInfoRequestVo
;
import
cn.freemud.enums.*
;
import
cn.freemud.handle.CommonFunctionHandle
;
import
cn.freemud.redis.RedisCache
;
import
cn.freemud.service.thirdparty.CustomerApplicationClient
;
import
cn.freemud.utils.BeanUtil
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
cn.freemud.utils.RedisUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
ma.glasnost.orika.MapperFacade
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.ObjectUtils
;
...
...
@@ -63,6 +65,9 @@ public class CalculationCommonService {
@Autowired
private
CommonFunctionHandle
commonFunctionHandle
;
@Autowired
private
RedisCache
redisCache
;
/**
* 初始化价格 新算价走了
*/
...
...
@@ -291,6 +296,9 @@ public class CalculationCommonService {
shoppingCartGoodsResponseVo
.
setToastMsg
(
CollectionUtils
.
isEmpty
(
cartGoodsList
)
?
toastMsg
:
""
);
}
}
// 更新和添加商品时不需要包装费
if
(
ShoppingCartConstant
.
ADD_AND_UPDATE
.
equals
(
opt
))
{
shoppingCartGoodsResponseVo
.
setNewPackAmount
(
null
);
...
...
@@ -617,10 +625,10 @@ public class CalculationCommonService {
* @param discounts
* @return
*/
private
List
<
ActivityDiscountsDto
>
drawSmallDiscount
(
List
<
Discounts
>
discounts
)
{
private
List
<
ActivityDiscountsDto
>
drawSmallDiscount
(
List
<
BlockRowDiscount
>
discounts
)
{
List
<
ActivityDiscountsDto
>
activityDiscountsDto
=
new
ArrayList
<>();
if
(
CollectionUtils
.
isEmpty
(
discounts
))
return
activityDiscountsDto
;
for
(
Discounts
discount
:
discounts
)
{
for
(
BlockRowDiscount
discount
:
discounts
)
{
ActivityDiscountsDto
dto
=
new
ActivityDiscountsDto
();
dto
.
setActivityName
(
discount
.
getActivityName
());
dto
.
setActivityType
(
discount
.
getType
());
...
...
@@ -656,10 +664,10 @@ public class CalculationCommonService {
blockRow
.
setGoodsQuantity
(
gx
.
getGoodsQuantity
());
blockRow
.
setOriginalPrice
(
gx
.
getOriginalPrice
());
blockRow
.
setRealAmount
(
gx
.
getRealAmount
());
List
<
Discounts
>
discounts
=
new
ArrayList
<>();
List
<
BlockRowDiscount
>
discounts
=
new
ArrayList
<>();
if
(
CollectionUtils
.
isNotEmpty
(
gx
.
getDiscounts
()))
{
for
(
GoodsDiscount
ds
:
gx
.
getDiscounts
())
{
Discounts
discount
=
new
Discounts
();
BlockRowDiscount
discount
=
new
BlockRowDiscount
();
discount
.
setActivityCode
(
ds
.
getActivityCode
());
discount
.
setActivityDesc
(
ds
.
getActivityDesc
());
discount
.
setActivityName
(
ds
.
getActivityName
());
...
...
@@ -687,10 +695,10 @@ public class CalculationCommonService {
blockRow
.
setGoodsQuantity
(
sm
.
getGoodsQuantity
());
blockRow
.
setOriginalPrice
(
sm
.
getOriginalPrice
());
blockRow
.
setRealAmount
(
sm
.
getRealAmount
());
List
<
Discounts
>
discounts
=
new
ArrayList
<>();
List
<
BlockRowDiscount
>
discounts
=
new
ArrayList
<>();
if
(
CollectionUtils
.
isNotEmpty
(
sm
.
getDiscounts
()))
{
for
(
GoodsDiscount
ds
:
sm
.
getDiscounts
())
{
Discounts
discount
=
new
Discounts
();
BlockRowDiscount
discount
=
new
BlockRowDiscount
();
discount
.
setActivityCode
(
ds
.
getActivityCode
());
discount
.
setActivityDesc
(
ds
.
getActivityDesc
());
discount
.
setActivityName
(
ds
.
getActivityName
());
...
...
@@ -773,27 +781,62 @@ public class CalculationCommonService {
return
code
;
}
@Data
@NoArgsConstructor
public
static
class
BlockRow
{
private
Integer
discountAmount
;
private
List
<
Discounts
>
discounts
;
private
String
goodsId
;
private
Integer
goodsQuantity
;
private
Integer
originalPrice
;
private
Integer
realAmount
;
private
Integer
type
;
}
@Data
@NoArgsConstructor
public
static
class
Discounts
{
private
String
activityCode
;
private
String
activityDesc
;
private
String
activityName
;
private
Integer
actualGoodsNumber
;
private
Long
discount
;
private
String
goodsId
;
private
Integer
type
;
/**
* 活动互斥提示
*/
public
void
setActivityMutexToastMsg
(
CalculationDiscountResult
calculationDiscountResult
,
Integer
flag
,
String
partnerId
,
String
appid
,
boolean
hasCoupon
,
boolean
addOrUpdate
,
ShoppingCartGoodsResponseVo
shoppingCartGoodsResponseVo
){
String
toastMsg
=
""
;
if
(
calculationDiscountResult
==
null
||
CollectionUtils
.
isEmpty
(
calculationDiscountResult
.
getExclusiveActivityList
())){
return
;
}
//优惠互斥提示开关
String
redisKey
=
RedisUtil
.
activityMutexKey
+
partnerId
+
"_"
+
appid
;
//购物车内部缓存
String
value
=
redisCache
.
hashGet
(
redisKey
,
"activityMutexType"
);
if
(
StringUtils
.
isNotBlank
(
value
))
{
return
;
}
ActivityMutexConfig
config
=
JSONObject
.
parseObject
(
value
,
ActivityMutexConfig
.
class
);
if
(
"0"
.
equals
(
config
.
getActivityMutex
())
&&
"0"
.
equals
(
config
.
getCouponactivityMutex
())){
return
;
}
//点餐页 添加购物车/更新购物车,(活动与活动互斥,活动与优惠券互斥)
if
(
ObjectUtils
.
equals
(
SubmitPageEnum
.
NO
.
getCode
(),
flag
)
&&
addOrUpdate
&&
"1"
.
equals
(
config
.
getActivityMutex
())){
if
(
CollectionUtils
.
isNotEmpty
(
calculationDiscountResult
.
getCouponDiscounts
())){
if
(
calculationDiscountResult
.
getExclusiveActivityList
().
size
()
>
1
){
toastMsg
=
"多个促销活动不同享 活动商品优惠发生变化"
;
}
else
{
String
activityName
=
calculationDiscountResult
.
getExclusiveActivityList
().
get
(
0
).
getName
();
toastMsg
=
"优惠券与"
+
activityName
+
"活动不同享 活动商品优惠发生变化"
;
}
}
if
(
CollectionUtils
.
isNotEmpty
(
calculationDiscountResult
.
getDiscounts
())){
if
(
calculationDiscountResult
.
getExclusiveActivityList
().
size
()
>
1
){
toastMsg
=
"多个促销活动不同享 活动商品优惠发生变化"
;
}
else
{
String
activityName
=
calculationDiscountResult
.
getExclusiveActivityList
().
get
(
0
).
getName
();
Integer
type
=
calculationDiscountResult
.
getDiscounts
().
get
(
0
).
getType
();
String
name
=
ActivityTypeEnum
.
getByCode
(
type
).
getDesc
();
toastMsg
=
name
+
"与"
+
activityName
+
"活动不同享 活动商品优惠发生变化"
;
}
}
}
//结算页查询购物车 带优惠券 (优惠券与活动互斥)
if
(
ObjectUtils
.
equals
(
SubmitPageEnum
.
YES
.
getCode
(),
flag
)
&&
hasCoupon
&&
"1"
.
equals
(
config
.
getCouponactivityMutex
())){
toastMsg
=
"优惠券与其他促销活动不同享 活动商品优惠发生变化"
;
}
if
(
StringUtils
.
isNotEmpty
(
toastMsg
)){
shoppingCartGoodsResponseVo
.
setToastMsg
(
toastMsg
);
}
}
}
\ No newline at end of file
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationSharingCartService.java
View file @
0162e603
...
...
@@ -4,6 +4,7 @@ import cn.freemud.constant.ShoppingCartConstant;
import
cn.freemud.entities.dto.UserLoginInfoDto
;
import
cn.freemud.entities.dto.activity.ActivityQueryDto
;
import
cn.freemud.entities.dto.calculate.CalculationDiscountResult
;
import
cn.freemud.entities.dto.calculate.DistributeBo
;
import
cn.freemud.entities.vo.CartGoods
;
import
cn.freemud.entities.vo.CouponPromotionVO
;
import
cn.freemud.entities.vo.ShoppingCartGoodsResponseVo
;
...
...
@@ -55,20 +56,24 @@ public class CalculationSharingCartService {
/**
* 响应购物车价格计算依赖促销
*/
public
void
distribute
(
CalculationDiscountResult
discountResult
,
List
<
CartGoods
>
cartGoodsList
,
ShoppingCartGoodsResponseVo
shoppingCartGoodsResponseVo
,
ShoppingCartInfoRequestVo
shoppingCartInfoRequestVo
,
UserLoginInfoDto
userLoginInfoDto
,
CouponPromotionVO
couponPromotionVO
,
ActivityQueryDto
activityQueryDto
,
String
menuType
,
Long
deliveryAmount
,
String
opt
,
String
partnerId
,
Integer
flag
,
String
userId
,
String
storeId
)
{
public
void
distribute
(
DistributeBo
distributeBo
)
{
CalculationDiscountResult
discountResult
=
distributeBo
.
getDiscountResult
();
List
<
CartGoods
>
cartGoodsList
=
distributeBo
.
getCartGoodsList
();
ShoppingCartGoodsResponseVo
shoppingCartGoodsResponseVo
=
distributeBo
.
getShoppingCartGoodsResponseVo
();
ShoppingCartInfoRequestVo
shoppingCartInfoRequestVo
=
distributeBo
.
getShoppingCartInfoRequestVo
();
UserLoginInfoDto
userLoginInfoDto
=
distributeBo
.
getUserLoginInfoDto
();
CouponPromotionVO
couponPromotionVO
=
distributeBo
.
getCouponPromotionVO
();
ActivityQueryDto
activityQueryDto
=
distributeBo
.
getActivityQueryDto
();
String
menuType
=
distributeBo
.
getMenuType
();
Long
deliveryAmount
=
distributeBo
.
getDeliveryAmount
();
String
opt
=
distributeBo
.
getOpt
();
String
partnerId
=
distributeBo
.
getPartnerId
();
Integer
flag
=
distributeBo
.
getFlag
();
String
userId
=
distributeBo
.
getUserId
();
String
storeId
=
distributeBo
.
getStoreId
();
boolean
hasCoupon
=
distributeBo
.
getHasCoupon
();
/**
* 用促销价格初始化购物车行记录成交价
...
...
@@ -109,22 +114,28 @@ public class CalculationSharingCartService {
deliverySharingService
.
deliveryResponse
(
discountResult
,
activityQueryDto
,
shoppingCartGoodsResponseVo
,
deliveryAmount
);
}
// if (ShoppingCartConstant.ADD_AND_UPDATE.equals(opt)) {
// calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.ADD_AND_UPDATE);
// } else if (ShoppingCartConstant.QUERY_INFO.equals(opt)) {
// calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.QUERY_INFO);
// calculationCommonService.addNeedCardAmount(shoppingCartInfoRequestVo, shoppingCartGoodsResponseVo);
// }
/**
*
特价类型超出部分提示
*
买一赠一寄杯(coco)
*/
buyOneGiveOneSendService
.
giftResponse
(
discountResult
,
cartGoodsList
,
shoppingCartInfoRequestVo
,
activityQueryDto
,
shoppingCartGoodsResponseVo
);
/** ---------------------------------------- 上面为活动处理 ------------------------------------------ **/
//特价类型超出部分提示
calculationCommonService
.
drawSurpassDiscountInfo
(
discountResult
,
shoppingCartGoodsResponseVo
);
if
(
ShoppingCartConstant
.
ADD_AND_UPDATE
.
equals
(
opt
))
{
calculationCommonService
.
setAddAndUpdateResponse
(
cartGoodsList
,
shoppingCartGoodsResponseVo
,
shoppingCartInfoRequestVo
,
ShoppingCartConstant
.
ADD_AND_UPDATE
);
}
else
if
(
ShoppingCartConstant
.
QUERY_INFO
.
equals
(
opt
))
{
calculationCommonService
.
setAddAndUpdateResponse
(
cartGoodsList
,
shoppingCartGoodsResponseVo
,
shoppingCartInfoRequestVo
,
ShoppingCartConstant
.
QUERY_INFO
);
calculationCommonService
.
addNeedCardAmount
(
shoppingCartInfoRequestVo
,
shoppingCartGoodsResponseVo
);
}
/**
* 买一赠一寄杯
*/
buyOneGiveOneSendService
.
giftResponse
(
discountResult
,
cartGoodsList
,
shoppingCartInfoRequestVo
,
activityQueryDto
,
shoppingCartGoodsResponseVo
);
calculationCommonService
.
setAddAndUpdateResponse
(
cartGoodsList
,
shoppingCartGoodsResponseVo
,
shoppingCartInfoRequestVo
,
opt
);
//活动互斥提示
calculationCommonService
.
setActivityMutexToastMsg
(
discountResult
,
flag
,
partnerId
,
userLoginInfoDto
.
getWxAppid
(),
hasCoupon
,
ShoppingCartConstant
.
ADD_AND_UPDATE
.
equals
(
opt
),
shoppingCartGoodsResponseVo
);
}
}
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationSharingEquallyService.java
View file @
0162e603
...
...
@@ -152,7 +152,7 @@ public class CalculationSharingEquallyService {
}
calculationCommonService
.
setAddAndUpdateResponse
(
cartGoodsList
,
shoppingCartGoodsResponseVo
,
shoppingCartInfoRequestVo
,
ShoppingCartConstant
.
QUERY_INFO
);
calculationCommonService
.
addNeedCardAmount
(
shoppingCartInfoRequestVo
,
shoppingCartGoodsResponseVo
);
//
calculationCommonService.addNeedCardAmount(shoppingCartInfoRequestVo, shoppingCartGoodsResponseVo);
if
(
discountResult
!=
null
&&
discountResult
.
getSendPointVo
()!=
null
)
{
shoppingCartGoodsDto
.
setSendPoint
(
discountResult
.
getSendPointVo
());
}
...
...
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