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
1e10653b
Commit
1e10653b
authored
Aug 18, 2021
by
ping.wu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
买m赠n券
parent
12c89263
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
205 additions
and
37 deletions
+205
-37
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CouponServiceImpl.java
+172
-0
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
+33
-37
No files found.
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CouponServiceImpl.java
View file @
1e10653b
...
@@ -1357,4 +1357,176 @@ public class CouponServiceImpl implements CouponService {
...
@@ -1357,4 +1357,176 @@ public class CouponServiceImpl implements CouponService {
}
}
}
}
}
}
// @Override
public
CheckSpqInfoResponseDto
checkSpqInfo
(
CheckSpqInfoRequestDto
requestDto
,
String
goodsId
,
Integer
goodsType
)
{
String
partnerId
=
requestDto
.
getPartnerId
();
String
couponCode
=
requestDto
.
getCouponCode
();
String
storeId
=
requestDto
.
getStoreId
();
//TODO 查询券详情券是否存在
GetMemberCouponRequestVo
requestVo
=
new
GetMemberCouponRequestVo
();
requestVo
.
setPartnerId
(
partnerId
);
requestVo
.
setCouponCode
(
couponCode
);
requestVo
.
setStoreId
(
requestDto
.
getStoreId
());
GetCouponDetailResponseDto
couponDetailResponseDto
=
couponService
.
getMemberCoupon
(
requestVo
);
if
(
couponDetailResponseDto
==
null
||
!
couponDetailResponseDto
.
getResult
().
equals
(
ResponseCodeConstant
.
RESPONSE_SUCCESS_1
)
||
CollectionUtils
.
isEmpty
(
couponDetailResponseDto
.
getDetails
()))
{
return
null
;
}
GetCouponDetailResponseDto
.
Details
details
=
couponDetailResponseDto
.
getDetails
().
get
(
0
);
//校验商品券是否可用
if
(!
Objects
.
equals
(
details
.
getStatus
(),
CouponStatus
.
STATUS_0
.
getCode
())
&&
!
Objects
.
equals
(
details
.
getStatus
(),
CouponStatus
.
STATUS_2
.
getCode
()))
{
return
null
;
}
List
<
String
>
couPonstoreIds
=
Lists
.
newArrayList
();
//TODO 判断该券是否在这个门店下(一个券可以在多个门店下使用)
if
(
CollectionUtils
.
isNotEmpty
(
details
.
getActiveRestrictionVOS
()))
{
details
.
getActiveRestrictionVOS
().
forEach
(
activeRestrictionVOS
->
{
couPonstoreIds
.
add
(
activeRestrictionVOS
.
getStoreIdPartner
());
});
}
if
(
CollectionUtils
.
isNotEmpty
(
couPonstoreIds
)
&&
!
couPonstoreIds
.
contains
(
storeId
))
{
return
null
;
}
//券返回的商品id
List
<
String
>
skuIds
=
Lists
.
newArrayList
();
String
skuId
=
details
.
getActiveProduct
().
get
(
0
).
getProductIdPartner
();
skuIds
.
add
(
String
.
valueOf
(
skuId
));
//TODO 通过skuid查询spuid
Map
<
String
,
GetProductsVo
>
productsVoMap
=
itemService
.
getProducts
(
skuIds
,
partnerId
,
storeId
,
requestDto
.
getMenuType
());
GetProductsVo
productsVo
=
productsVoMap
.
get
(
skuId
);
if
(
null
==
productsVo
||
!
Objects
.
equals
(
productsVo
.
getStatus
(),
StoreItemStatus
.
PUT_ON_SALE
.
getCode
()))
{
return
null
;
}
// 校验券的可用时间
List
<
GetCouponDetailResponseDto
.
ActiveRedeemTimeInterval
>
activeRedeemTimeIntervalList
=
details
.
getActiveRedeemTimeIntervalList
();
boolean
verificationPassed
=
checkCouonRedeemTime
(
activeRedeemTimeIntervalList
);
if
(!
verificationPassed
){
return
null
;
}
// 校验商品可用时间
ValidateShopProductRequest
request
=
getValidateShopProductRequest
(
productsVo
,
requestDto
);
ProductResponseDTO
<
ValiadShopProductResponse
>
valiadProductResponse
=
storeItemClient
.
validateShopProduct
(
request
);
if
(
null
==
valiadProductResponse
||
!
Objects
.
equals
(
ResponseConstant
.
SUCCESS_RESPONSE_CODE
,
valiadProductResponse
.
getErrcode
())
||
valiadProductResponse
.
getData
()
==
null
||
CollectionUtils
.
isEmpty
(
valiadProductResponse
.
getData
().
getSuccessList
()))
{
return
null
;
}
// CheckSpqInfoResponseDto dto = new CheckSpqInfoResponseDto();
// dto.setCouponCode(couponCode);
// dto.setActiveCode(details.getActive().getActiveCode());
// dto.setCouponName(details.getTitle());
// dto.setActivityName(details.getActive().getActiveName());
// if (details.getActive().getMaxRedeemTimes() != null && details.getActive().getMaxRedeemTimes() > 1){
// if (details.getToday_available_times() != null){
// dto.setTodayAvailableTimes(details.getToday_available_times());
// } else {
// dto.setTodayAvailableTimes(1);
// }
// } else {
// dto.setTodayAvailableTimes(1);
// }
// dto.setPrice(productsVo.getFinalPrice());
// dto.setSpuId(productsVo.getSpuId());
// dto.setSpuName(productsVo.getSkuName());
// dto.setStockLimit(ObjectUtils.equals(1, productsVo.getStockLimit()));
// dto.setSkuId(productsVo.getSkuId());
// dto.setSkuName(StringUtils.isNotBlank(productsVo.getSkuName()) ? productsVo.getSkuName() : productsVo.getSpuName());
// dto.setPicture(productsVo.getSpuPicture());
// dto.setCouponType(0);
// return dto;
boolean
productValid
=
false
;
Integer
couponType
=
0
;
for
(
GetCouponDetailResponseDto
.
Details
detail
:
couponDetailResponseDto
.
getDetails
())
{
if
(
productValid
)
break
;
if
(!
CouponStatus
.
STATUS_0
.
getCode
().
equals
(
detail
.
getStatus
())
&&
!
CouponStatus
.
STATUS_2
.
getCode
().
equals
(
detail
.
getStatus
()))
continue
;
for
(
GetCouponDetailResponseDto
.
ActiveProduct
activeProduct
:
detail
.
getActiveProduct
())
{
if
(
goodsId
.
equals
(
activeProduct
.
getProductIdPartner
()))
{
productValid
=
true
;
couponType
=
CouponTypeEnum
.
TYPE_4
.
getCode
();
break
;
}
}
if
(
CouponTypeEnum
.
TYPE_7
.
getCode
().
equals
(
detail
.
getType
())){
for
(
GetCouponDetailResponseDto
.
ActiveProduct
activeProduct
:
detail
.
getActiveProduct
())
{
if
(
goodsId
.
equals
(
activeProduct
.
getProductIdPartner
()))
{
productValid
=
true
;
couponType
=
CouponTypeEnum
.
TYPE_7
.
getCode
();
break
;
}
}
}
}
//检查商品是否有效
if
(!
productValid
)
{
return
null
;
}
//判断该券是否在这个门店下(一个券可以在多个门店下使用)
List
<
String
>
couponStoreIds
=
Lists
.
newArrayList
();
for
(
GetCouponDetailResponseDto
.
Details
detail
:
couponDetailResponseDto
.
getDetails
())
{
if
(!
CouponStatus
.
STATUS_0
.
getCode
().
equals
(
detail
.
getStatus
())
&&
!
CouponStatus
.
STATUS_2
.
getCode
().
equals
(
detail
.
getStatus
()))
continue
;
for
(
GetCouponDetailResponseDto
.
ActiveRestrictionVOS
activeRestrictionVO
:
detail
.
getActiveRestrictionVOS
())
{
couponStoreIds
.
add
(
activeRestrictionVO
.
getStoreIdPartner
());
}
}
if
(
CollectionUtils
.
isNotEmpty
(
couponStoreIds
)
&&
!
couponStoreIds
.
contains
(
storeId
))
{
return
null
;
}
//券返回的商品id
// List<String> skuIds = Lists.newArrayList();
// String skuId = goodsId;
// skuIds.add(skuId);
//通过skuid查询spuid
// Map<String, GetProductsVo> productsVoMap = itemService.getProducts(skuIds, partnerId, storeId, requestDto.getMenuType());
// GetProductsVo productsVo = productsVoMap.get(skuId);
// if (null == productsVo || !Objects.equals(productsVo.getStatus(), StoreItemStatus.PUT_ON_SALE.getCode())) {
// return null;
// }
// 校验券的可用时间
// List<GetCouponDetailResponseDto.ActiveRedeemTimeInterval> activeRedeemTimeIntervalList = couponDetailResponseDto.getDetails().get(0).getActiveRedeemTimeIntervalList();
// boolean verificationPassed = checkCouonRedeemTime(activeRedeemTimeIntervalList);
// if (!verificationPassed){
// return null;
// }
// 校验商品可用时间
// ValidateShopProductRequest request = getValidateShopProductRequest(productsVo, requestDto);
// ProductResponseDTO<ValiadShopProductResponse> valiadProductResponse = storeItemClient.validateShopProduct(request);
// if (null == valiadProductResponse || !Objects.equals(ResponseConstant.SUCCESS_RESPONSE_CODE, valiadProductResponse.getErrcode())
// || valiadProductResponse.getData() == null || CollectionUtils.isEmpty(valiadProductResponse.getData().getSuccessList())) {
// return null;
// }
CheckSpqInfoResponseDto
dto
=
new
CheckSpqInfoResponseDto
();
if
(
details
.
getActive
().
getMaxRedeemTimes
()
!=
null
&&
details
.
getActive
().
getMaxRedeemTimes
()
>
1
){
if
(
details
.
getToday_available_times
()
!=
null
){
dto
.
setTodayAvailableTimes
(
details
.
getToday_available_times
());
}
else
{
dto
.
setTodayAvailableTimes
(
1
);
}
}
else
{
dto
.
setTodayAvailableTimes
(
1
);
}
dto
.
setCouponCode
(
couponCode
);
dto
.
setActiveCode
(
details
.
getActive
().
getActiveCode
());
dto
.
setCouponName
(
details
.
getTitle
());
dto
.
setActivityName
(
details
.
getActive
().
getActiveName
());
dto
.
setPrice
(
productsVo
.
getFinalPrice
());
dto
.
setSpuId
(
productsVo
.
getSpuId
());
dto
.
setSpuName
(
productsVo
.
getSkuName
());
dto
.
setSkuId
(
productsVo
.
getSkuId
());
dto
.
setSkuName
(
StringUtils
.
isNotBlank
(
productsVo
.
getSkuName
())
?
productsVo
.
getSkuName
()
:
productsVo
.
getSpuName
());
dto
.
setPicture
(
productsVo
.
getSpuPicture
());
dto
.
setDefaultSpecName
(
productsVo
.
getDefaultSpecName
());
dto
.
setDefaultSpecId
(
productsVo
.
getDefaultSpecId
());
dto
.
setStockLimit
(
ObjectUtils
.
equals
(
1
,
productsVo
.
getStockLimit
()));
dto
.
setExtras
(
productsVo
.
getExtra
());
dto
.
setCouponType
(
couponType
);
return
dto
;
}
}
}
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
View file @
1e10653b
...
@@ -1398,23 +1398,31 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -1398,23 +1398,31 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
HashMap
<
String
,
List
<
String
>>
spqIdToCartUuid
=
new
HashMap
<>(
16
);
HashMap
<
String
,
List
<
String
>>
spqIdToCartUuid
=
new
HashMap
<>(
16
);
for
(
int
i
=
cartGoodsList
.
size
()
-
1
;
i
>=
0
;
i
--)
{
for
(
int
i
=
cartGoodsList
.
size
()
-
1
;
i
>=
0
;
i
--)
{
CartGoods
cartGoods
=
cartGoodsList
.
get
(
i
);
CartGoods
cartGoods
=
cartGoodsList
.
get
(
i
);
String
cartGoodsUid
=
cartGoods
.
getCartGoodsUid
();
//套餐商品的固定和可选商品必有一个
// 商品不是商品券
if
(
GoodsTypeEnum
.
SET_MEAL_GOODS
.
getGoodsType
().
equals
(
cartGoods
.
getGoodsType
()))
{
if
(
StringUtils
.
isBlank
(
cartGoods
.
getCouponCode
())
&&
!
cartGoodsUid
.
startsWith
(
CommonsConstant
.
COUPON_PREFIX
))
{
if
(
CollectionUtils
.
isEmpty
(
cartGoods
.
getProductGroupList
())
&&
CollectionUtils
.
isEmpty
(
cartGoods
.
getProductComboList
()))
{
this
.
addCalculationDiscountGoods
(
calculationDiscountGoodsList
,
cartGoods
);
cartGoodsList
.
remove
(
i
);
assortmentSdkService
.
setShoppingCart
(
partnerId
,
storeId
,
userId
,
cartGoodsList
,
null
,
null
,
this
.
shoppingCartBaseService
);
throw
new
ServiceException
(
ResponseResult
.
SHOPPING_CART_NO_MEAL
);
}
}
}
// 商品是商品券
else
{
String
cartGoodsUid
=
cartGoods
.
getCartGoodsUid
();
// 商品券ID换取商品
String
couponCode
=
""
;
String
couponCode
=
""
;
if
(
cartGoodsUid
.
startsWith
(
CommonsConstant
.
COUPON_PREFIX
))
{
if
(
cartGoodsUid
.
startsWith
(
CommonsConstant
.
COUPON_PREFIX
))
{
couponCode
=
cartGoods
.
getCartGoodsUid
().
substring
(
CommonsConstant
.
COUPON_PREFIX
.
length
());
couponCode
=
cartGoods
.
getCartGoodsUid
().
substring
(
CommonsConstant
.
COUPON_PREFIX
.
length
());
}
else
{
}
else
{
couponCode
=
cartGoods
.
getCouponCode
();
couponCode
=
cartGoods
.
getCouponCode
();
}
}
// 商品不是商品券
if
(
StringUtils
.
isBlank
(
couponCode
))
{
this
.
addCalculationDiscountGoods
(
calculationDiscountGoodsList
,
cartGoods
);
}
else
{
CheckSpqInfoRequestDto
checkSpqInfoRequestDto
=
new
CheckSpqInfoRequestDto
(
partnerId
,
storeId
,
couponCode
,
menuType
);
CheckSpqInfoRequestDto
checkSpqInfoRequestDto
=
new
CheckSpqInfoRequestDto
(
partnerId
,
storeId
,
couponCode
,
menuType
);
CheckSpqInfoResponseDto
checkSpqInfoResponseDto
=
null
;
CheckSpqInfoResponseDto
checkSpqInfoResponseDto
=
null
;
if
(
GoodsTypeEnum
.
HG_COUPON_GOODS
.
getGoodsType
().
equals
(
cartGoods
.
getGoodsType
()))
{
if
(
GoodsTypeEnum
.
HG_COUPON_GOODS
.
getGoodsType
().
equals
(
cartGoods
.
getGoodsType
())
||
GoodsTypeEnum
.
BUY_M_SEND_N_COUPON
.
getGoodsType
().
equals
(
cartGoods
.
getGoodsType
()))
{
checkSpqInfoResponseDto
=
couponService
.
checkSpqInfo
(
checkSpqInfoRequestDto
,
cartGoods
.
getSkuId
());
checkSpqInfoResponseDto
=
couponService
.
checkSpqInfo
(
checkSpqInfoRequestDto
,
cartGoods
.
getSkuId
());
}
else
{
}
else
{
checkSpqInfoResponseDto
=
couponService
.
checkSpqInfo
(
checkSpqInfoRequestDto
);
checkSpqInfoResponseDto
=
couponService
.
checkSpqInfo
(
checkSpqInfoRequestDto
);
...
@@ -1423,11 +1431,13 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -1423,11 +1431,13 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
if
(
checkSpqInfoResponseDto
==
null
)
{
if
(
checkSpqInfoResponseDto
==
null
)
{
cartGoodsList
.
remove
(
i
);
cartGoodsList
.
remove
(
i
);
assortmentSdkService
.
setShoppingCart
(
partnerId
,
storeId
,
userId
,
cartGoodsList
,
null
,
null
,
this
.
shoppingCartBaseService
);
assortmentSdkService
.
setShoppingCart
(
partnerId
,
storeId
,
userId
,
cartGoodsList
,
null
,
null
,
this
.
shoppingCartBaseService
);
}
else
{
continue
;
}
if
(
cartGoodsUid
.
startsWith
(
CommonsConstant
.
COUPON_PREFIX
))
{
if
(
cartGoodsUid
.
startsWith
(
CommonsConstant
.
COUPON_PREFIX
))
{
validCouponMap
.
put
(
couponCode
,
checkSpqInfoResponseDto
);
validCouponMap
.
put
(
couponCode
,
checkSpqInfoResponseDto
);
}
else
{
}
if
(!
GoodsTypeEnum
.
BUY_M_SEND_N_COUPON
.
getGoodsType
().
equals
(
cartGoods
.
getGoodsType
()))
{
validCouponMap
.
put
(
couponCode
+
checkSpqInfoResponseDto
.
getSkuId
(),
checkSpqInfoResponseDto
);
validCouponMap
.
put
(
couponCode
+
checkSpqInfoResponseDto
.
getSkuId
(),
checkSpqInfoResponseDto
);
validCouponMap
.
put
(
couponCode
,
checkSpqInfoResponseDto
);
}
}
if
(
spqIdToCartUuid
.
containsKey
(
couponCode
))
{
if
(
spqIdToCartUuid
.
containsKey
(
couponCode
))
{
List
<
String
>
uuidList
=
spqIdToCartUuid
.
get
(
couponCode
);
List
<
String
>
uuidList
=
spqIdToCartUuid
.
get
(
couponCode
);
...
@@ -1438,7 +1448,6 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -1438,7 +1448,6 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
uuidList
.
add
(
cartGoods
.
getCartGoodsUid
());
uuidList
.
add
(
cartGoods
.
getCartGoodsUid
());
spqIdToCartUuid
.
put
(
couponCode
,
uuidList
);
spqIdToCartUuid
.
put
(
couponCode
,
uuidList
);
}
}
validCouponMap
.
put
(
couponCode
,
checkSpqInfoResponseDto
);
cartGoods
.
setName
(
checkSpqInfoResponseDto
.
getCouponName
());
cartGoods
.
setName
(
checkSpqInfoResponseDto
.
getCouponName
());
cartGoods
.
setSpuName
(
checkSpqInfoResponseDto
.
getCouponName
());
cartGoods
.
setSpuName
(
checkSpqInfoResponseDto
.
getCouponName
());
cartGoods
.
setStockLimit
(
checkSpqInfoResponseDto
.
isStockLimit
());
cartGoods
.
setStockLimit
(
checkSpqInfoResponseDto
.
isStockLimit
());
...
@@ -1450,27 +1459,14 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -1450,27 +1459,14 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
// 添加商品券代表的商品
// 添加商品券代表的商品
// 换购券传给促销要带code
// 换购券传给促销要带code
String
goodsId
=
StringUtils
.
isEmpty
(
checkSpqInfoResponseDto
.
getSkuId
())
?
checkSpqInfoResponseDto
.
getSpuId
()
:
checkSpqInfoResponseDto
.
getSkuId
();
String
goodsId
=
StringUtils
.
isEmpty
(
checkSpqInfoResponseDto
.
getSkuId
())
?
checkSpqInfoResponseDto
.
getSpuId
()
:
checkSpqInfoResponseDto
.
getSkuId
();
List
<
Integer
>
integers
=
Arrays
.
asList
(
GoodsTypeEnum
.
HG_COUPON_GOODS
.
getGoodsType
(),
GoodsTypeEnum
.
BUY_M_SEND_N_COUPON
.
getGoodsType
());
if
(
integers
.
contains
(
cartGoods
.
getGoodsType
()))
{
this
.
addCalculationDiscountGoods
(
calculationDiscountGoodsList
,
goodsId
,
cartGoods
.
getQty
(),
checkSpqInfoResponseDto
.
getPrice
(),
100
,
cartGoodsUid
,
couponCode
);
this
.
addCalculationDiscountGoods
(
calculationDiscountGoodsList
,
goodsId
,
cartGoods
.
getQty
(),
checkSpqInfoResponseDto
.
getPrice
(),
100
,
cartGoodsUid
,
couponCode
);
}
else
{
this
.
addCalculationDiscountGoods
(
calculationDiscountGoodsList
,
goodsId
,
cartGoods
.
getQty
(),
checkSpqInfoResponseDto
.
getPrice
(),
100
,
cartGoodsUid
);
}
}
}
}
if
(
GoodsTypeEnum
.
SET_MEAL_GOODS
.
getGoodsType
().
equals
(
cartGoods
.
getGoodsType
()))
{
if
(
CollectionUtils
.
isEmpty
(
cartGoods
.
getProductGroupList
())
&&
CollectionUtils
.
isEmpty
(
cartGoods
.
getProductComboList
()))
{
cartGoodsList
.
remove
(
i
);
assortmentSdkService
.
setShoppingCart
(
partnerId
,
storeId
,
userId
,
cartGoodsList
,
null
,
null
,
this
.
shoppingCartBaseService
);
throw
new
ServiceException
(
ResponseResult
.
SHOPPING_CART_NO_MEAL
);
}
}
}
}
// 当加价购商品不为空时
// 当加价购商品不为空时
if
(
CollectionUtils
.
isNotEmpty
(
sendGoodsList
))
{
if
(
CollectionUtils
.
isNotEmpty
(
sendGoodsList
))
{
for
(
ShoppingCartInfoRequestVo
.
SendGoods
sendGoods
:
sendGoodsList
)
{
for
(
ShoppingCartInfoRequestVo
.
SendGoods
sendGoods
:
sendGoodsList
)
{
this
.
addCalculationDiscountGoods
(
calculationDiscountGoodsList
,
sendGoods
.
getGoodsId
(),
sendGoods
.
getQty
(),
sendGoods
.
getOriginalPrice
(),
100
,
""
);
this
.
addCalculationDiscountGoods
(
calculationDiscountGoodsList
,
sendGoods
.
getGoodsId
(),
sendGoods
.
getQty
(),
sendGoods
.
getOriginalPrice
(),
100
,
""
,
null
);
}
}
}
}
calculationDiscountGoodsList
.
removeIf
(
calculationDiscountGoods
->
(
calculationDiscountGoods
.
getGoodsQuantity
().
equals
(
0
)));
calculationDiscountGoodsList
.
removeIf
(
calculationDiscountGoods
->
(
calculationDiscountGoods
.
getGoodsQuantity
().
equals
(
0
)));
...
@@ -1550,16 +1546,16 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -1550,16 +1546,16 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
* @param goodsQuantity
* @param goodsQuantity
* @param originalPrice
* @param originalPrice
*/
*/
private
void
addCalculationDiscountGoods
(
List
<
ActivityCalculationDiscountRequestDto
.
CalculationDiscountGoods
>
calculationDiscountGoodsList
,
//
private void addCalculationDiscountGoods(List<ActivityCalculationDiscountRequestDto.CalculationDiscountGoods> calculationDiscountGoodsList,
String
goodsId
,
Integer
goodsQuantity
,
Long
originalPrice
,
Integer
memberDiscount
,
String
cartGoodsUid
)
{
//
String goodsId, Integer goodsQuantity, Long originalPrice, Integer memberDiscount, String cartGoodsUid) {
ActivityCalculationDiscountRequestDto
.
CalculationDiscountGoods
calculationDiscountGoods
=
new
ActivityCalculationDiscountRequestDto
.
CalculationDiscountGoods
();
//
ActivityCalculationDiscountRequestDto.CalculationDiscountGoods calculationDiscountGoods = new ActivityCalculationDiscountRequestDto.CalculationDiscountGoods();
calculationDiscountGoods
.
setGoodsId
(
goodsId
);
//
calculationDiscountGoods.setGoodsId(goodsId);
calculationDiscountGoods
.
setCartGoodsUid
(
cartGoodsUid
);
//
calculationDiscountGoods.setCartGoodsUid(cartGoodsUid);
calculationDiscountGoods
.
setGoodsQuantity
(
goodsQuantity
);
//
calculationDiscountGoods.setGoodsQuantity(goodsQuantity);
calculationDiscountGoods
.
setOriginalPrice
(
originalPrice
);
//
calculationDiscountGoods.setOriginalPrice(originalPrice);
calculationDiscountGoods
.
setMemberDiscount
(
memberDiscount
);
//
calculationDiscountGoods.setMemberDiscount(memberDiscount);
this
.
addCalculationDiscountGoods
(
calculationDiscountGoodsList
,
calculationDiscountGoods
);
//
this.addCalculationDiscountGoods(calculationDiscountGoodsList, calculationDiscountGoods);
}
//
}
private
void
addCalculationDiscountGoods
(
List
<
ActivityCalculationDiscountRequestDto
.
CalculationDiscountGoods
>
calculationDiscountGoodsList
private
void
addCalculationDiscountGoods
(
List
<
ActivityCalculationDiscountRequestDto
.
CalculationDiscountGoods
>
calculationDiscountGoodsList
,
String
goodsId
,
String
goodsId
...
@@ -2039,8 +2035,8 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -2039,8 +2035,8 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
// 商品券Id
// 商品券Id
String
spqId
=
spuId
.
substring
(
CommonsConstant
.
COUPON_PREFIX
.
length
());
String
spqId
=
spuId
.
substring
(
CommonsConstant
.
COUPON_PREFIX
.
length
());
if
(
CollectionUtils
.
isNotEmpty
(
allCartGoodsList
))
{
if
(
CollectionUtils
.
isNotEmpty
(
allCartGoodsList
))
{
if
(
Objects
.
equals
(
CouponTypeEnum
.
TYPE_0
.
getCode
(),
couponProductDto
.
getType
())
if
(
Objects
.
equals
(
CouponTypeEnum
.
TYPE_0
.
getCode
(),
couponProductDto
.
getType
())
||
Objects
.
equals
(
CouponTypeEnum
.
TYPE_4
.
getCode
(),
couponProductDto
.
getType
()))
{
||
Objects
.
equals
(
CouponTypeEnum
.
TYPE_4
.
getCode
(),
couponProductDto
.
getType
()))
{
int
sum
=
allCartGoodsList
.
stream
().
filter
(
p
->
p
.
getSpuId
().
equals
(
spqId
)).
mapToInt
(
CartGoods:
:
getQty
).
sum
();
int
sum
=
allCartGoodsList
.
stream
().
filter
(
p
->
p
.
getSpuId
().
equals
(
spqId
)).
mapToInt
(
CartGoods:
:
getQty
).
sum
();
if
(
sum
+
cartGoods
.
getQty
()
>
todayAvailableTimes
)
{
if
(
sum
+
cartGoods
.
getQty
()
>
todayAvailableTimes
)
{
throw
new
ServiceException
(
ResponseResult
.
SHOPPING_CART_GOODS_COUPON_CAN_NOT_USE
);
throw
new
ServiceException
(
ResponseResult
.
SHOPPING_CART_GOODS_COUPON_CAN_NOT_USE
);
...
...
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