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
ab14f523
Commit
ab14f523
authored
May 31, 2021
by
张跃
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'featur/20210519-加价购优化'
parents
04174a43
d43b3fa3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
52 additions
and
41 deletions
+52
-41
shopping-cart-application-service/src/main/java/cn/freemud/demo/controller/ShoppingCartDemoController.java
+4
-40
shopping-cart-application-service/src/main/java/cn/freemud/demo/service/ShoppingCartService.java
+5
-1
shopping-cart-application-service/src/main/java/cn/freemud/demo/service/impl/ShoppingBaseServiceImpl.java
+43
-0
No files found.
shopping-cart-application-service/src/main/java/cn/freemud/demo/controller/ShoppingCartDemoController.java
View file @
ab14f523
...
@@ -25,6 +25,7 @@ import cn.freemud.demo.entities.dto.goods.add.list.BaseListCartGoodsVO;
...
@@ -25,6 +25,7 @@ import cn.freemud.demo.entities.dto.goods.add.list.BaseListCartGoodsVO;
import
cn.freemud.demo.entities.dto.goods.add.update.BaseUpdateGoodsQtyVO
;
import
cn.freemud.demo.entities.dto.goods.add.update.BaseUpdateGoodsQtyVO
;
import
cn.freemud.demo.enums.BizTypeEnum
;
import
cn.freemud.demo.enums.BizTypeEnum
;
import
cn.freemud.demo.factory.ServiceFactory
;
import
cn.freemud.demo.factory.ServiceFactory
;
import
cn.freemud.demo.service.ShoppingCartService
;
import
cn.freemud.demo.service.impl.AbstractAddGoodsService
;
import
cn.freemud.demo.service.impl.AbstractAddGoodsService
;
import
cn.freemud.demo.service.impl.AbstractApportionService
;
import
cn.freemud.demo.service.impl.AbstractApportionService
;
import
cn.freemud.demo.service.impl.AbstractListCartGoodsService
;
import
cn.freemud.demo.service.impl.AbstractListCartGoodsService
;
...
@@ -102,6 +103,8 @@ public class ShoppingCartDemoController {
...
@@ -102,6 +103,8 @@ public class ShoppingCartDemoController {
@Resource
@Resource
private
MapperFacade
mapperFacade
;
private
MapperFacade
mapperFacade
;
@Autowired
private
ShoppingCartService
shoppingCartService
;
/**
/**
* 向购物车中添加商品
* 向购物车中添加商品
*/
*/
...
@@ -214,7 +217,7 @@ public class ShoppingCartDemoController {
...
@@ -214,7 +217,7 @@ public class ShoppingCartDemoController {
long
sendGoodsAmount
=
chooseSendGoodList
.
stream
().
mapToLong
(
PremiumExchangeResponseVo
.
PremiumExchangeProduct
::
getNowPrice
).
sum
();
long
sendGoodsAmount
=
chooseSendGoodList
.
stream
().
mapToLong
(
PremiumExchangeResponseVo
.
PremiumExchangeProduct
::
getNowPrice
).
sum
();
baseListCartGoodsVO
.
setSendGoodsAmount
(
sendGoodsAmount
);
baseListCartGoodsVO
.
setSendGoodsAmount
(
sendGoodsAmount
);
}
}
updateForPopupWindow
(
baseListCartGoodsVO
,
premiumExchangeResponseVoBaseResponse
.
getResult
().
getShowType
(),
chooseSendGoodList
,
baseRequestDTO
.
getSendGoods
());
shoppingCartService
.
updateForPopupWindow
(
baseListCartGoodsVO
,
premiumExchangeResponseVoBaseResponse
.
getResult
().
getShowType
(),
chooseSendGoodList
,
baseRequestDTO
.
getSendGoods
());
}
}
// 添加购物车商品总价和加价购商品总价,现在是自己计算,后面需要优化为促销计算, 这段要删除
// 添加购物车商品总价和加价购商品总价,现在是自己计算,后面需要优化为促销计算, 这段要删除
...
@@ -222,45 +225,6 @@ public class ShoppingCartDemoController {
...
@@ -222,45 +225,6 @@ public class ShoppingCartDemoController {
}
}
public
void
updateForPopupWindow
(
BaseListCartGoodsVO
baseListCartGoodsVO
,
Integer
showType
,
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
chooseSendGoodList
,
List
<
ListCartGoodsBO
.
SendGoods
>
sendGoods
)
{
if
(
Integer
.
valueOf
(
"5"
).
equals
(
showType
)
&&
!
org
.
springframework
.
util
.
CollectionUtils
.
isEmpty
(
chooseSendGoodList
)){
chooseSendGoodList
.
forEach
(
good
->{
ListCartGoodsBO
.
SendGoods
first
=
null
;
if
(
sendGoods
!=
null
)
{
first
=
sendGoods
.
stream
().
filter
(
a
->
a
.
getGoodsId
().
equals
(
good
.
getPid
())).
findFirst
().
orElseGet
(
null
);
}
CartGoods
cartGoods
=
new
CartGoods
();
cartGoods
.
setSpuId
(
good
.
getSpuId
());
cartGoods
.
setSkuId
(
good
.
getSkuId
());
cartGoods
.
setSkuName
(
good
.
getSkuName
());
cartGoods
.
setOriginalAmount
(
good
.
getOriginalPrice
());
cartGoods
.
setFinalPrice
(
good
.
getNowPrice
());
cartGoods
.
setOriginalAmount
(
good
.
getOriginalPrice
());
cartGoods
.
setAmount
(
good
.
getNowPrice
());
cartGoods
.
setPhotoUrl
(
good
.
getPicture
());
cartGoods
.
setGoodsId
(
good
.
getPid
());
cartGoods
.
setName
(
good
.
getName
());
cartGoods
.
setSpuName
(
good
.
getSpuName
());
cartGoods
.
setQty
(
first
==
null
?
1
:
first
.
getQty
());
if
(
first
!=
null
)
{
cartGoods
.
setActivityCode
(
first
.
getActivityCode
());
if
(!
CollectionUtils
.
isEmpty
(
first
.
getAttributes
())){
List
<
CartGoods
.
CartGoodsExtra
>
extra
=
new
ArrayList
();
first
.
getAttributes
().
forEach
(
attribute
->
{
CartGoods
.
CartGoodsExtra
goodsExtra
=
new
CartGoods
.
CartGoodsExtra
();
goodsExtra
.
setAttributeId
(
attribute
.
getAttributeId
());
goodsExtra
.
setAttributeName
(
attribute
.
getAttributeValue
());
extra
.
add
(
goodsExtra
);
});
cartGoods
.
setExtra
(
extra
);
}
}
baseListCartGoodsVO
.
getProducts
().
add
(
cartGoods
);
});
}
}
/**
/**
* 获取购物车均摊详情,点 "去支付" 时调用
* 获取购物车均摊详情,点 "去支付" 时调用
*
*
...
...
shopping-cart-application-service/src/main/java/cn/freemud/demo/service/ShoppingCartService.java
View file @
ab14f523
...
@@ -2,7 +2,10 @@ package cn.freemud.demo.service;
...
@@ -2,7 +2,10 @@ package cn.freemud.demo.service;
import
cn.freemud.demo.entities.bo.goods.CheckCartRequest
;
import
cn.freemud.demo.entities.bo.goods.CheckCartRequest
;
import
cn.freemud.demo.entities.bo.goods.ShoppingCartContext
;
import
cn.freemud.demo.entities.bo.goods.ShoppingCartContext
;
import
cn.freemud.demo.entities.bo.goods.list.ListCartGoodsBO
;
import
cn.freemud.demo.entities.dto.goods.add.list.BaseListCartGoodsVO
;
import
cn.freemud.entities.vo.CartGoods
;
import
cn.freemud.entities.vo.CartGoods
;
import
cn.freemud.entities.vo.PremiumExchangeResponseVo
;
import
java.util.List
;
import
java.util.List
;
...
@@ -12,5 +15,6 @@ public interface ShoppingCartService {
...
@@ -12,5 +15,6 @@ public interface ShoppingCartService {
CheckCartRequest
checkShoppingCart
(
List
<
CartGoods
>
cartGoodsList
,
CartGoods
cartGoods
,
ShoppingCartContext
cartContext
);
CheckCartRequest
checkShoppingCart
(
List
<
CartGoods
>
cartGoodsList
,
CartGoods
cartGoods
,
ShoppingCartContext
cartContext
);
void
updateForPopupWindow
(
BaseListCartGoodsVO
baseListCartGoodsVO
,
Integer
showType
,
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
chooseSendGoodList
,
List
<
ListCartGoodsBO
.
SendGoods
>
sendGoods
);
}
}
shopping-cart-application-service/src/main/java/cn/freemud/demo/service/impl/ShoppingBaseServiceImpl.java
View file @
ab14f523
...
@@ -2,12 +2,16 @@ package cn.freemud.demo.service.impl;
...
@@ -2,12 +2,16 @@ package cn.freemud.demo.service.impl;
import
cn.freemud.demo.entities.bo.goods.CheckCartRequest
;
import
cn.freemud.demo.entities.bo.goods.CheckCartRequest
;
import
cn.freemud.demo.entities.bo.goods.ShoppingCartContext
;
import
cn.freemud.demo.entities.bo.goods.ShoppingCartContext
;
import
cn.freemud.demo.entities.bo.goods.list.ListCartGoodsBO
;
import
cn.freemud.demo.entities.dto.goods.add.list.BaseListCartGoodsVO
;
import
cn.freemud.demo.service.ShoppingCartService
;
import
cn.freemud.demo.service.ShoppingCartService
;
import
cn.freemud.entities.vo.CartGoods
;
import
cn.freemud.entities.vo.CartGoods
;
import
cn.freemud.entities.vo.PremiumExchangeResponseVo
;
import
cn.freemud.entities.vo.ShoppingCartGoodsBaseResponseVo
;
import
cn.freemud.entities.vo.ShoppingCartGoodsBaseResponseVo
;
import
cn.freemud.service.impl.AssortmentSdkService
;
import
cn.freemud.service.impl.AssortmentSdkService
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl
;
import
com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -65,4 +69,43 @@ public class ShoppingBaseServiceImpl implements ShoppingCartService {
...
@@ -65,4 +69,43 @@ public class ShoppingBaseServiceImpl implements ShoppingCartService {
return
result
;
return
result
;
}
}
@Override
public
void
updateForPopupWindow
(
BaseListCartGoodsVO
baseListCartGoodsVO
,
Integer
showType
,
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
chooseSendGoodList
,
List
<
ListCartGoodsBO
.
SendGoods
>
sendGoods
)
{
if
(
Integer
.
valueOf
(
"5"
).
equals
(
showType
)
&&
!
org
.
springframework
.
util
.
CollectionUtils
.
isEmpty
(
chooseSendGoodList
)){
chooseSendGoodList
.
forEach
(
good
->{
ListCartGoodsBO
.
SendGoods
first
=
null
;
if
(
sendGoods
!=
null
)
{
first
=
sendGoods
.
stream
().
filter
(
a
->
a
.
getGoodsId
().
equals
(
good
.
getPid
())).
findFirst
().
orElseGet
(
null
);
}
CartGoods
cartGoods
=
new
CartGoods
();
cartGoods
.
setSpuId
(
good
.
getSpuId
());
cartGoods
.
setSkuId
(
good
.
getSkuId
());
cartGoods
.
setSkuName
(
good
.
getSkuName
());
cartGoods
.
setOriginalAmount
(
good
.
getOriginalPrice
());
cartGoods
.
setFinalPrice
(
good
.
getNowPrice
());
cartGoods
.
setOriginalAmount
(
good
.
getOriginalPrice
());
cartGoods
.
setAmount
(
good
.
getNowPrice
());
cartGoods
.
setPhotoUrl
(
good
.
getPicture
());
cartGoods
.
setGoodsId
(
good
.
getPid
());
cartGoods
.
setName
(
good
.
getName
());
cartGoods
.
setSpuName
(
good
.
getSpuName
());
cartGoods
.
setQty
(
first
==
null
?
1
:
first
.
getQty
());
if
(
first
!=
null
)
{
cartGoods
.
setActivityCode
(
first
.
getActivityCode
());
if
(!
CollectionUtils
.
isEmpty
(
first
.
getAttributes
())){
List
<
CartGoods
.
CartGoodsExtra
>
extra
=
new
ArrayList
();
first
.
getAttributes
().
forEach
(
attribute
->
{
CartGoods
.
CartGoodsExtra
goodsExtra
=
new
CartGoods
.
CartGoodsExtra
();
goodsExtra
.
setAttributeId
(
attribute
.
getAttributeId
());
goodsExtra
.
setAttributeName
(
attribute
.
getAttributeValue
());
extra
.
add
(
goodsExtra
);
});
cartGoods
.
setExtra
(
extra
);
}
}
baseListCartGoodsVO
.
getProducts
().
add
(
cartGoods
);
});
}
}
}
}
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